Dynamic developments in Java
Java goes OSS and gets another language
In his review of a “Ruby For Rails” book today, Pan Pantziarka comments that the new language Ruby is now being “billed as a possible Java-killer”.
Well, it seems that Sun may think so too, as its JRuby team (Sun hired key Ruby developers Thomas Enebo and Charles Nutter, back in September) has just released JRuby 0.9.1 for Java, with version 1.0 is expected in due course.
JRuby is going really well, you may be unsurprised to learn from Enebo’s Blog. I’m quite prepared to believe it is, but surely no one really expects a Sun employee to report too many embarrassing failures and issues with a Sun development on his Blog?. Anyway, going from JRuby 0.9.1 to 0.9.0 apparently brings a 50 to 60 per cent performance improvement (just how slow was it then), improves support for Ruby on Rails and for including Java classes in Ruby; delivers various design refactorings; and fixes some 86 Jira bugs.
And Microsoft has just hired Ruby guru John Lam, to help it add dynamic scripting languages on its Common Language Runtime platform (Lam talks about his “friendly takeover” of Microsoft here). As Lam has already created RubyCLR as an alternative to C#, this suggests that Microsoft could soon deliver Ruby to complement its version 1.0 release of IronPython (which is Python for .Net). There’s certainly a rich choice for dynamic programming enthusiasts these days.
However, it seems to me that any lack of dynamic languages on their chosen platform is hardly the killer issue facing programmers today. What their mortgage providers might be worrying about is their inability to keep up payments if their employers lose faith in the IT systems they’re delivering. Delivering systems fast is popular, until the business finds that what it gets doesn’t align with its requirements well – and that the cost of development pales into insignificance besides the cost of supporting an operational system for years. Then there’s the issue of governance – businesses increasingly have to demonstrate traceability through from requirements to code to third party regulators and auditors. Of course, better dynamic languages may help but they’re still not really the real issue, as far as I can see (employers are thinking about ITIL and IT governance). Nevertheless, there’ll always be a place for quick, clever solutions to immediate problems – probably.
In the meantime, the programming language the enterprises still seem to trust - perhaps because of the mature programming culture around it as much as because of the language itself, which has few absolute advantages over, say, C# - “good ol’ Java”, isn’t standing still either.
We’ve already talked about the moves to open source Java here. Now, company's executive vice president of software, Rich Green, has confirmed that this process is on track to commence in earnest with significant OSS (Open Source Software) releases for Java Standard Edition (desktop-oriented) and Java Micro Edition (for handheld devices) before the end of this year; the process should complete during 2007.
Sun has already sponsored the GlassFish OSS project for Java EE 5 on the server and will eventually make the Java Enterprise System software suite open source. It also hopes that its commoditised OpenSolaris operating system running on commodity general-purpose computers will attract software developers in hardware manufacturers to an alternative to the building of custom chips for new hardware devices. However, “future set fine for Open Source”, while true, isn’t news in the same sense as “dog bites man” isn’t news – OSS is clearly here to stay.