The Crumpery Blog
The Crumpery Blog
2009
I last used WebObjects back in 2002 to develop a Java download-able client Application. I found WebObjects to be an excellent, powerful technology. Since then, I’ve watched Apple slowly drop support of the tools which made WebObjects powerful and easy to use. When Apple released WebObjects as a free install without the tools, I thought that was the final nail in WebObjects coffin, WebObjects was pretty much dead with technologies like PHP being the better choice for Web development.
The past three months doing new WebObjects (Web) development has just shown me how wrong I was! The tools to model the database objects and WebObjects components which manage the HTML ‘components’ have now being rewritten as an Eclipse plug-in called WOLips. The components themselves have also been enhanced beyond all recognition as powerful Ajax components (if required) via an open source project called Project Wonder. Even the WebObjects Java API which supports the components have been enhanced to such a point you can write powerful search routines in just a couple of lines!
Admittedly, there is now a big learning curve to develop really powerful and efficient WebObjects (Web) applications and I have been very lucky to have a very skilled and knowledgeable mentor who showed me how powerful WebObjects has become. His words of wisdom in developing in WebObjects is something like: ‘if you are writing a lot of code in WebObjects to get things done, you are not using WebObjects in the most efficient manner to implement your solution’. It is lesson I had to learn more than once! The elegance and ‘simplicity’ of a well written piece of WebObjects is just stunning!
We developed and released a new, complex Web Application from scratch in just 8 weeks. Even with a lot of learning (on my behalf), we (that is, my boss and I) still delivered the application on time to the agreed set of features. I was repeatedly told that some features we implemented in a few lines of WebObjects code would have taken dozens of complex code in PHP. Unlike earlier internal projects developed in PHP which took longer to develop and had more final bugs, using WebObjects has given the management of the company the confidence that future applications can now be developed quickly and on time.
Since you now develop completely in Eclipse, the development is also really easy. I love the way you can modify your code (in Java or the WO Components) and you don’t have to restart your application. With WebObjects I also like how you can have a dedicated Java developer to develop the Model and Controller code and have a HTML developer to set up the CSS and configure the HTML to present and customise the view on the Web page for the appropriate browser. (I cannot believe how bad Internet Explorer 6 was at conforming to Web standards and being able to customise just the CSS without changing the core code just to get your application to work in IE 6/7 was a real win for the project. Perhaps more sites should start using the IE 6 Denial Message from Momentile.com, but that’s for a different blog...)
All in all, WebObjects looks like a fantastic Web development solution for Enterprises. It is a shame the technology has gone ‘underground’ or is simply off the scope of the developers and companies who would really benefit from it most. This is especially strange since WebObjects is now license free, is 100% Pure Java and therefore can be deployed on Windows, Linux and UNIX based systems. A lot of the supporting code is now Open Source, it is just the core Java code which is still managed by Apple, but it is easy to extend and enhance if you need to.
If DinnerDate (my iPhone App) takes off, I’m planning on providing the ability to share restaurants, reviews, invitations and push notifications via a web server. That solution will definitely be in WebObjects.
For more information, visit the Apple developer site for a taste how to get started in WebObjects. But remember, the really useful enhancing stuff will be found in Project Wonder and since everything is integrated into Eclipse you don’t need to use a Mac to develop on... it’s just better that way ;-)
Updated 16/6/2009... Minor fixes to content.
WebObjects..Wow!
16/06/2009
WebObjects is still alive and has (quietly) transformed itself into a really powerful way to develop Web 2.0 Applications.
The development environment is now fully integrated into Eclipse, offers Ajax controls and a Java development base.