REALbasic IDE: Mac vs. Windows

Normally I run REALbasic on Mac OS X and remote debug in Windows.  This works 99.9% of the time but late last week I ran into a situation where I wanted the IDE on the Windows side as well.  So I installed RB and downloaded the plugins that I needed.  Then I started to use RB.

Using RB for Windows was…different.  I’m not sure that I can quantify it other than that it seemed less polished.  It just doesn’t feel like a normal Windows app and it certainly was not as smooth as the Mac OS X version.

The reason I was in Windows to begin with was of tracking down a printing bug that was affecting my product.  Turned out it was the Application.UseGDIPlus property that had been set to true.  The end result was that my reports were ‘blown up’ about 10 times bigger than they should have been.  This has been documented and is <feedback://showreport?report_id=10399>.  Turning off the property fixed the problem.  Some fix, eh?

I don’t think that Windows gets as much attention as the Mac OS X.  Why do I believe this?  The ARBP surveys consistently show Mac users being about 80% of the membership.  Likewise, traffic to this website is roughly 80% Macintosh.  What this means is that beta testers are predominantly Mac based.  I believe that most of the developers at RS are Mac users as well.

Currently, RS is in the transition to get Cocoa out.  It won’t be happening for 2010 R1…so it’s obviously a much tougher nut to crack than they originally thought.  Honestly, I’m not surprised.  Going from Carbon to Cocoa is like creating an entire new platform.  Eighteen months to two years isn’t out of the question for such a big undertaking.

I’m hoping that when Cocoa is out and working great (you think it won’t have some bugs in the first release?) that RS pays a lot of attention to Windows.  They’ve said in the past (sorry no reference for this) that a vast majority of new licenses are Windows users.  But yet, based on observation, the professionals and beta testers are mainly Mac users.  Does that not say something?  Would better Windows support translate into more Professional and Studio licenses?  I don’t know, but I suspect so.

Perhaps it’s time to kill support for Windows 2000.  I’d even suggest killing off XP but I know a lot of places in the world are still actively using it so that’s probably a non-starter.  I believe Cocoa support will effectively kill support for anything less than Mac OS X 10.4 so why not for Windows too?

I suggest that everyone that has a Studio license do a bulk of their work in Windows for a couple of weeks.  More Windows-specific bug reports will (hopefully) get some of the more obvious (and painful) bugs fixed.

What are your feelings about this?  Am I right, wrong, or somewhere in-between?

9 thoughts on “REALbasic IDE: Mac vs. Windows

  1. I think the RB-Apps-On-Windows problem boils down to two main issues:
    a. The lowest-common-denominator approach enforced by RB’s cross-platform framework, that makes many aspects of the GUI feel less than optimal (on both platforms).
    b. The dreadful Windows-flickering problem that has been around forever, and is currently #2 on the Most Wanted list in the Feedback system. This problem causes me the most negative feedback from users.

  2. Being one of the 20% of the developers that are working on Windows, I’d like to chime in. This year I have decided to let my Studio license expire, mainly as a protest to the Cocoa development that IMHO is taking way too much of RS’s attention and efforts (as you pointed out – almost two years…) RB lacks several key features on the Windows platform that *does not require a complete rewrite* but only hooks in the Windows Message handling!!! Of course these techniques would be Windows-only, but the whole Cocoa-adventure is Mac-only – I simply don’t see the difference!! I’d love to be able to make a ribbon-based interface or to have preview functions and animated Task Bar icons in Vista and Windows 7… but – alas – nothing of this available.

    To make matters worse, I cannot stand to see the Feedback request 9433 (at the top of the list) about supporting the iPhone platform… RS setting out on another wild platform adventure…. OMG! There are 1.5 great platforms for the iPhone already – Xcode and Adobe’s soon to be released – read my lips; we don’t need another platform to develop. If ObjectiveC is too hard, start learning ActiveScript and push Adobe to close the iPhone project (they are already on most other mobile platforms with Flash Mobile…)

    If RS care about a dropped license after 8 years and contacts me asking why I didn’t renew this year, my answer could be boiled down to one sentence – “Start focusing on your core business and bring a First Class development tool for the Mac, Windows and Linux platform”.

    Just my thoughts, sorry if I offended anyone…
    /msa

  3. Yes, RB feels less “polished” as a Windows app compared with a lot of Windows software, but that also goes for VB/VS 6 and Dev C++; IMO the real question is the stability and functionality of the program.

    As to XP support, that is going to be essential for quite some time – a LOT of businesses have avoided Vista by “downgrading” new machines to XP and while many are now jumping to Win7, on a basic upgrade cycle a lot of people will continue on predominately XP for a few years yet. Likewise a lot of netbooks are continuing to use XP.

    @Mattias: Completely concur about the requests for iPhone support, although the recent request for Android support is much more logical, being Linux based. I can see why RealSoftware would want to pick up the wannabe iPhone developers, but agree they should concentrate on improving the existing platforms first or they will get left behind as the new developments on each cannot be used by RB programmers.

  4. While I’m primarily a Mac programmer, especially in REALbasic, I have to concur that the Windows version feels less polished. I’ve been programming in C# for the past 2 months for a consulting project, and the leap wasn’t that bad. My programs look and act better in C# than they do in REALbasic. Real Software has to concentrate on its core platforms and not start adding every new platform that emerges, like the iPhone or Android, where the competition would be enormous. I’m pleased that they’ll be switching to Cocoa, but Windows support does have to include current Windows user interface elements and technologies too.

  5. Some of the “not feeling like a normal Windows app” I suspect are subtle design choices but I’m really fascinated by what goes into building such a feeling and would really like you to try to quantify it. I’m working in WPF nowadays so “feels like a Windows app” is a bit fluid.

    My feeling from the earliest days of RB200x is that the IDE design is very tightly coupled and fragile so has imposed an ongoing technical debt on the company that they struggle with. Hence the net reduction of bugs is not as high as it could be because it is easy to introduce new ones.

    I’m not as anti the iPhone project as some because I don’t see it as being either as big a distraction nor a strategic mistake. Stop thinking of people producing iPhone apps for the store and think of it as a key platform for enterprise apps, especially when the tablet is announced in the next few hours.

  6. Andy, I see the iPhone as a distraction not because it’s not a worthy platform to target (I agree with you in that regard), but because Real Software seems to have more limitation on its resources at present. With such limited resources, targeting new platforms means fewer resources devoted to the issues of bug reduction, adding new language features, improving the IDE, or adding needed features to the existing platforms. While adding iPhone compilation might add new developers, REALbasic’s reputation as being “buggy” (which I feel is not entirely deserved) equally keeps away new developers. Likewise, the lack of enterprise-level development support tools (documentation tools, QA tools, refactoring tools, etc.) is a minus, and requires retooling of the IDE to allow IDE plugins. With limited resources, RS must choose one or the other — new platform or more solid product for the enterprise.

  7. Scott, I thought the discussion a few weeks back was interesting when the comments about TT’s work for RS revealed that they think it takes someone x months to come to terms with their code base (as I recall). That confirmed my suspicions about the degree of coupling in the design and also suggests they can’t easily add developers and gain fixes.

    However, whilst some money obviously needs to be spent on it, a LOT of the work to support iPhone is independent of the main RS development – it needs the LLVM-based compiler for starters and presumably someone can work on Touch Cocoa independently of the main version. It’s probably the most easily isolated thing that they *can* throw a bit of money at to gain a significant new marketing feature.

  8. I think focusing on the iPhone is rather silly for the simple fact that it doesn’t fit with RB’s cross-platform strengths. The iPhone is a touch interface, and desktop applications (typically) aren’t. It’s a very special class of application that can work well on a touch device AND a non-touch device without some major UI changes. The strength for REALbasic is “write once, run anywhere.” I don’t see how the two really mesh together except in special cases.

  9. @Aaron Ballman
    That’s a good point. IF RS were to target the iPhone/iPad I don’t think they should call it RB or RStudio but a completely separate product and naming. That way no one ever gets confused by which product does what on what platform or device.

Comments are closed.