I’ve heard from a lot of developers recently that they’ve started looking at xCode and Cocoa for development. A lot of these people are simply looking at it for iPhone development but that still seems like a bad omen for REALbasic in that once you’ve learned the tool, moving to Cocoa for desktops isn’t that big of a stretch. The work is in learning the tool, not the language and bad programming is bad programming in whatever language.
Using Cocoa (properly) gives us a “dripping with OS X goodness” for free that’s hard to achieve (if even possible) with the current version of REALbasic (RB 2008 R5.1 as of this writing). Likewise, using Microsoft Visual Studio you get a native, using all the latest goodies from Microsoft application that, again, is tough to achieve with REALbasic.
Don’t get me wrong, I use RB every day to make good cross-platform apps. It’s the platform differences that give rise to the difficulties because Macintosh OS X and Windows just behaving differently. I say this to clients all the time: RB is nothing but compromises. It won’t make a great Mac OS X, Windows, or Linux application without a little extra work.
REALbasic is really great at cross-platform applications. That’s awesome. But therein lies the problem: they don’t make it easy for Mac, WIndows or Linux developers to make great native applications. Once RB supports Cocoa we expect it to make better Mac OS X apps but will it or will they still be limited by the compromises that RB has to make for Windows and Linux support.
So would making it easier to make good native (looking at least) apps make RB more relevant? I don’t know, but because people only think that RB makes great cross-platform applications and not native apps it seems logical that if I was to do a Windows-only app I’d think first of Visual Studio and think xCode for a Mac OS X-only app.
I’ve heard from more than a few developers that feel this is RB’s single biggest weakness. And then they see efforts being put into another version of Real SQL Server and they just shake their heads. Most people would agree that RSS is great ‘in concept’. It’s an easy to use and configure database server but it’s also fighting against a bazillion other database servers that have a bigger feature set like extended stored procedures, referential integrity as well as hundreds of standard features that RSS doesn’t have. Would you take RSS to a company that already has MySQL running in their office? How about PostgreSQL, Oracle, MS SQL Server, DB2 or any one of a dozen other database servers that are widely available and been around, in some cases, for decades? Could you get your ISP to install it to run your web store?
Look at it RSS from another direction. Google ‘Real SQL Server’ and the first 3 pages are from Real Software, a few download sites and companies reselling it. One page is the C|Net downloads page which has RSS 2008 R1 listed with a grand total of 95 Windows downloads and just 7 for Mac OS X and no reviews under either one. That’s not good for being available for half a year. Now, I wouldn’t download from that particular site, but I certainly would do a quick Google search to see what’s being said either positive or negative. The fact that nothing’s been said is not a good sign in my opinion.
Why do I bring RSS up? It seems to be a solution that’s in search of a problem. I see RB developers asking (for years) for an integrated reporting solution and the most recent ARBP survey indicates that a good grid component is desperately wanted. Those are things I could use and sell today to make my business better. RSS isn’t anything I need today or tomorrow because I already have multiple database server options.
Thankfully, it doesn’t appear that RS is focusing all of their attention on RSS. With a smaller staff, however, it might just be enough to keep resources away from what RB users need and want. If RS continues to ignore the needs of its developer community (in particular the professional community) they do so at their own peril and becoming irrelevant. Developers will use the tools that solve their problems (like cross-platform applications).
I think RB is in serious trouble if a cross-platform tool for Cocoa (like Cocotron) is ever seriously taken up by Apple or someone else. People talk about Mono for Mac OS X more and more. Another tool, Lazrus, is currently making carbon Mac OS X apps (just like RB). RB is a good tool. With all of this competition, will it be five years from now?