Fellow REALbasic developer, Christian Miller penned an interesting blog post at http://www.pariahware.com/blog/?p=248&utm_source=rss&utm_medium=rss&utm_campaign=real-software-the-opposite-of-love-is-not-hate-it-is-indifference. I suggest you read it.
The stage that Christian didn’t add was what happens after acceptance. This is the point where you ask yourself, “So what am I going to do about it?” As I see it, there are only three options that are worth talking about.
Deal with it. Accept the fact that RB is a flawed product and learn to work around its many deficiencies. We all know that RS is a small company and can’t devote as much resources to it as say an Apple or Microsoft can to their respective development environments.
Leave. Move on and use the tool(s) that work for you. I’ve said this to many people: If you expect RB to make a great Mac OS X only, Windows only, or Linux only application you might be very disappointed. If you’re looking for a good cross-platform application using one code base it’s one of the few tools available. The other dev tools available wouldn’t be considered Rapid Application Development tools in my opinion.
Try to change the situation. This is the approach that I took. One of my goals with the Association of REALbasic Professionals was to bring the conversation out and be more vocal with what we, the professional developers, need and want. I found the training materials wanting so I started my own video series available on my website. I blog regularly about RB here and on the ARBP website. I’ve written tutorials, answered questions in the RB forums, talked at RB conferences and, written articles.
Without patting myself too hard on the back and injuring myself, I have been a pretty vocal supporter of REAL Software. Hopefully you all have read the posts where I’ve been just as critical of REAL Software. I’ve hitched my wagon, so to say, to the REAL Software bandwagon because I like the product, like the people that work there and, it has satisfied the requirements of my company and my clients for a decade. I’ve been called a shill for the company and I’ve received hate mail for my anti-REAL Software stances. My point is that I’m not a mindless cheerleader for the product because that does no one any good. My family and my employees families fates are intertwined with the fate of REALbasic so I need it to be a viable product.
From my perspective the constant focus on new hobbyist users does absolutely no good for my business. Too often new features are implemented that are ‘good enough’ for the hobbyist but suck for me (think toolbars, the report generator, htmlviewer and Windows flickering to name a few). The hobbyists can’t pay for advanced features. Businesses can, and will, if it makes sense for them.
RS is right to be proud that they ‘eat their own dogfood’ and that the RB IDE is made in RB. That’s great, but making an IDE/compiler isn’t what I make. Its obvious, at times, that there is a disconnect between what RS perceives we need and what we really need. I’ve been using RB since the 3.5 days and yet there’s only one Date control, one Calendar control and one alternative to the listbox (i.e. grid). In the corporate environments I used to work in that’s unacceptable.
I’ve long advocated that REAL Software create an internal consulting group. Start with one person. That group bids on potential projects like all the other developers in the network (to make it fair to existing developers, their rate must be HIGH). When they’re not bidding or working on projects they do two things: 1) they create real world examples and check each one for each release to make sure they still work; 2) They create training videos and tutorials, and answer tech support issues.
Having an internal consulting group does a couple of things: 1) they quickly learn the pain of making real world applications in REALbasic; 2) provide valuable feedback to the powers-that-be in RS on what needs to be fixed and in what priority; 3) it’s a (potential) revenue stream; 4) Makes sure that the documentation and examples really work; 5) Makes corporate users feel better knowing that if their own development team gets into trouble RS can back them up.
The truest definition of insanity is doing the same things over and over again and expecting a different result. As we’ve seen with some very vocal criticisms (like Christian’s) and others, the perspective is that RS is doing the same thing over and over again and failing. Unfortunately, so are we, the users.