Posts Tagged ‘grails’
That the Apache web server is a mainstay in the web hosting industry is a gross understatement. Netcraft’s June 2009 statistics show that Apache is holding strong at 46.89% share of web servers surveyed. Microsoft’s IIS web server family has been perennial runner-ups, not really threatened by any other player, not able to touch the top dog either. Web servers by Sun? Well, they’re in the top 5, albeit with a rather pathetic 0.29% market share.
The story behind Apache’s gargantuan share is simply its support for a myriad of nearly every single web application development platform there is. It’s the “A” in the classic LAMP stack. It continues to ensure its continued popularity by supporting all the new fads and paradigms coming out of the woodwork over the past few years. Mod_rails, mod_python, you build a framework, Apache’s ready to host it for ya. Apache would never have enjoyed its current popularity if it were just built for one development language in particular.
Now let’s look at Sun (let’s leave Oracle out of it for now, shall we?). Sun is the custodian of Java, and that’s perfectly good reason for it to back the Java development platform completely. And Java can be cosidered a success to a certain extent. It’s still holding strong at the enterprise level. Huge companies like IBM are making tons of money from it peddling to major financial institutions around the world. Problem is, Java is seen as sort of a pariah where small to medium development projects are concerned. “It takes 4 gigabytes of RAM just to bootstrap the VM”, “didja just see the length of that package name I just had to type?!?!?!”,”dude, I just read the specs for EJB 2.1… I’m still looking for my cojones on the dorm floor”. Common complaints we hear from developers standing around the peripheries of Java development.
The Glassfish application server is the reference JEE implementation and started out being just another application server. It was OpenSource and all, but take up was still limited to those who wanted to work with Java as a development language. Personally, I don’t find Java that difficult. It’s a pain to bootstrap development but that’s been alleviated a lot by using Maven to manage projects. I like a lot of the features of the platform such as pooling and a proper framework for asynchronous processing. But one part that’s definitely been falling behind is where web development is concerned. Too much boilerplate code still. Verbose XML configurations have been largely the norm though that’s been improving. And the appearance of more neat, lightweight and fast web development frameworks over the past few years makes Java as a web platform looking increasingly redundant. And when I say “fast”, I meant in terms of development time, not runtime. That’s the yardstick by which most managers judge us developers by nowadays anyway.
Lately though, it seems that Sun’s been taking a page out of Apache’s book. Interim builds of Glassfish V3 have been released and they seem to showcase more of its abilities to run alternative web development frameworks on top of itself and how they can be integrated to JEE instead of JEE itself. Right now, you can already run JRuby / Rails and Groovy / Grails on Glassfish. Scala / Lift support can be added pretty easily. The PHP language has already been implemented in Java by the Caucho Quercus project and we can already run it on Glassfish.
All this point to one thing for me: that it’s possible for Glassfish to adopt a Apache deployment model where “Java” isn’t the primary focus anymore. Rather, it runs the plumbings within so that any developer can focus on getting his application out using his preferred development language. And if any of the nicer things about JEE is needed, it’s there via a simple JNDI call.
Now this, can be really open up new horizons for both Sun and Java. And for me as an employer too. I work as a banking and insurance software vendor and I can safely say many stick in the muds in my clients’ companies tend to view PHP and other “new-fangled languages” suspiciously. “Not proven enough”, they say. Well, how’s about if I these “new-fangled languages” were running on top of the Java platform? Proven enough for ya? If I can sell that, my hiring scope has just expanded ten-fold. Good Java developers in Malaysia are a rare commodity, as many in the local industry would attest to. What if I could hire RoR / Lift developers to do the front end work, and reserve the Java specialists to work purely on EJBs? For Sun, it could mean penetration into a whole new market. I don’t see many Java deployments in the virtual hosting scene. Most of ‘em either run Apache or IIS. On top of that, Glassfish already has a nice web GUI to manage deployments, which most Apache deployments have to rely on 3rd party management tools to accomplish. Glassfish is already OpenSource, which means that getting the distribution to the masses isn’t exactly difficult. I can already get a Glassfish deployment up and running in a matter of minutes if there aren’t too many resources to set up.
So, how’s about it, Sun / Oracle? Do you think that this market is worth getting into to give Apache a real fight for its money? Or do you want to stick to WebLogic running on a Rolls Royce luxury business model?











