It’s not often that software, once costing hundreds of pounds, is given away for free, but that’s exactly what’s happened with the latest release of WebObjects – Apple’s toolkit for creating Web applications and services.
Just a couple of months ago Apple would have charged you £579 for the privilege of creating online stores, message boards and other database-driven Web sites. Until May 2000 the software would have cost $50,000. Now WebObjects comes bundled free with the latest release of Apple’s Xcode developer tools.
Xcode 2.1 will be appearing soon in retail boxes of Tiger, or you can download the hefty 751MB installer from Apple’s Developer Connection site (http://developer.apple.com/). You’ll need to become a member but it’s free.
If you’ve never heard of WebObjects, you’re certainly not alone – not for nothing has it been called Apple’s best-kept secret. You may be surprised to discover that it’s the technology behind the iTunes Music Store, the online Apple Store and the BBC News site. This is heavyweight software, but don’t let that put you off.
While it’s true the learning curve for WebObjects is steep, this pays itself back in spades when you discover it does most of the hard work for you. Once you learn how it all pieces together you will find that your applications almost write themselves. To give you just one example, while most Web developers have to write tedious SQL code to talk to databases, WebObjects does all of this for you behind the scenes.
The most difficult part for those new to WebObjects is learning object-oriented programming and, in particular, the Java programming language. This means that WebObjects isn’t quite the pick-up-and-play kind of toy that Perl or PHP is. It’s all or nothing with WebObjects; it isn’t a technology you can dip in and out of. However, when I was learning Java I found WebObjects really helped me understand the language.
In addition to being free, there are number of other noteworthy features in WebObjects 5.3.
WebObjects Builder, the application used to create the interface for your Web pages, has received a much-needed makeover. At long last it conforms to the current HTML 4.0.1 standards, producing lower-case tags and closing tags properly.
It also leverages technologies from elsewhere in Mac OS X, such as using WebKit (the Web engine behind Safari) to give you a preview of how your Web pages look. This works much like the preview feature in Dreamweaver, except it’s far more accurate.
While it’s nice to see some much-needed attention being paid to WebObjects Builder, the new interface looks like it’s been pieced together in a spare afternoon. Gone is the old, cluttered button bar, replaced with a series of drop-down menus. While cleaner, it’s harder to scan a textual list of menu items as opposed to hitting an instantly-recognisable icon.
As well as impeding your workflow, WebObjects Builder has some careless bugs. For example, when you insert a block quote element, the tag is incorrectly spelled. It’s disappointing to see Apple’s renowned attention to detail not being applied here, however, the engineers behind WebObjects have made it clear the new version is a work-in-progress and improvements will be made in future releases.
There’s also a new tool for designing your database schema, with the functionality of the old EOModeler application now integrated into Xcode as a plug-in. It looks promising, but again it’s a work-in-progress rather than a fully usable solution.
EOModeler, therefore, is still included, making you wonder why Apple bothered showing off new features which aren’t ready yet. However, these are issues most of us can live with, safe in the knowledge that Apple is hard at work ironing out the flaws. What’s unlikely to change, however, is the cancellation of support for other platforms.
For many years WebObjects has been an anomaly in Apple’s product line-up, with developer tools for Windows users. There was also official support for deploying your application on Windows and Solaris servers. However, since Apple introduced its own Xserve server hardware in 2002, the writing’s been on the wall for other platforms and 5.3 is where the generosity ends.
This is only likely to be an issue for corporate IT departments who stubbornly refuse to buy Apple hardware. It’s a shame though, as WebObjects was a trojan horse, garnering Apple some respect in this traditionally hostile territory. Still, WebObjects applications are pure Java so there’s nothing to stop you from working with different server operating systems – it’s just that Apple won’t support you.
With recent rumours of WebObjects’ demise, it’s nice to see Apple finally paying some attention to a mature technology that still stands head and shoulders above what’s available on other platforms. And it’s new free status can but help it find a new audience of converts. With all that in mind it seems a bit churlish to be picking faults. Nonetheless, Apple has released some half-baked new tools in an apparent eagerness to reassure the community of its commitment to WebObjects. Along with the fact that the documentation hasn’t been updated to take account of these changes, this could potentially confuse new users. But when a technology so powerful and graceful as WebObjects is given away for free, all gripes pale into insignificance. Now surely is the time for WebObjects to shed its reputation as Apple’s best-kept secret.