They say most Open Source projects are born from a need for something that doesn’t exist yet or because the alternatives that already exist don’t do exactly what you want. Sometime around 2002/2003 I started building a bulletin-board/blog/notetaking app which I called BBWeblog, the source for the project which I host on SourceForge here. If you’re reading this article, this is stored in BBWeblog. (KH update 03/03/12: this content is now actually imported into WordPress).
I’ve been running this app on JBoss since 2002/2003 on my own Linux server, and have migrated through several Linux installations and a few different versions on JBoss too. The amazing thing is the app has been incredibly stable running on JBoss & Linux, and the server runs for months without a reboot. The only times it’s been rebooted have been after a power cut or to add/change hardware in the server.
As an app I’ve found it incredibly useful but there’s a few features that would improve it’s usefulness, mainly around how the data/articles are organized and how they can be shared – I’m thinking features like tagging and links to share articles to social sites.
I could add on to what I already have, but I’ve decided it’s time to take a fresh look at rebuilding the app, and at the same time use this as an opportunity to try out some new tools and libraries. The current app is built with Struts 1.x. I’d like to take a look at the annotation support in Spring MVC in 3.x, so I think this is going to be my project for the next few weeks…
If only the timing of Apple’s announcement that they are deprecating the current version of the Java VM and no longer supporting future development coincided with this week’s announcement that they are going to donate the OS X implementation of the JVM plus tools and supporting libraries to the OpenJDK project. One can only wonder if the plan all along was to donate the code to OpenJDK, or if they decided to give it the OpenJDK project as a result of the shock they caused to the Java development community that works on the Mac platform.
Either way, Java developers on the Mac can breath a sigh of relief and be rest assured that there will be a future for Java on the Mac.
There’s been chatter this week about Oracle’s comments around offering a paid/premium version of the JVM as well as a free version, and what this mean for the Java community. As far as I know (I’m not sure because I haven’t looked at the license or cost) but doesn’t Oracle already offer JRockit, which already could be argued as their ‘premium’ JVM? It comes with tools to support and monitor apps running on JVMs in production and already comes bundled with Weblogic and is recommended as the JVM platform to run production systems.
Maybe the worry is all for nothing, because the premium vs free JVM concept is already here. As a business Oracle is obviously thinking how they can make the most money from heir acquired Java assets, and planning how much effort they split between JRockit development vs the free JVM development. If anything the community should be worried that the free JVM becomes a second-rate citizen – will be interesting to see how this pans out in the coming months.
The Java world is changing with Oracle at the controls. Based on recent events, it would seem Oracle is determined to destroy the Java community that Sun had invested so much time and effort to grow and foster.
Oracle are suing Google for their unlicensed implementation of Java underpinning the Android platform, and most recently this week, the Apache Software Foundation have laid down a threat that they will leave the JCP if Oracle does not grant them a license for their implementation of the JVM, Harmony. Apache is by far one of the largest contributors to the Java platform providing many tools and utilities that are used by almost all Java projects.
The JCP has up until now been central to steering the direction of the Java platform and allowing JCP members to provide input into new features and changes that are adopted as part of the Java platform. If Oracle does not see the JCP as key to Java’s future then maybe Apache’s threat is all for nothing, but either way, Apache’s departure from the JCP and/or the demise of the JCP would see the future of Java heading in a different direction, possibly with more control by Oracle themselves rather than the community.
One of Job’s announcements mixed in the week’s news about Mac OX Lion and the new MacBook Airs etc was that the Java JVM for Mac OS X was being ‘deprecated’ and would not be further developed beyond the current release.
Although Java on the desktop has never really taken a foothold, Java for serverside enterprise development is as active and widespread as it ever has been in it’s 14 years of existence. The decision to end development of Java for the Mac is got to be puzzling for many Java developers, especially since a large number of Java developers chose to use the Mac as their development platofrm of choice. Don’t believe this? Stop by the next Java conference and see many people sitting around between sessions and see what laptops people are using – Mac, Mac, Mac… I’ve never attended a Mac conference, but I can safely say I’ve never seen as many Mac laptops in one place as I have at a JavaOne conference.
So for myself as a Java developer and no doubt for other Java developers who use a Mac, there’s some head scratching going on right now. It’s not the end of the world though since there’s bound to be an alternative JVM that will come from elsewhere, but it’s still a bit confusing to say the least.
I have to say that I love my Mac. I was a recent switcher to the Mac and I’ll never go back to another Windows based PC. As a Java developer though, I have no interest in owning an iPhone since there is no Java support on the iPhone. Why would I own/use a device that does not support the technology that I have spent the last 13 years of my career working with when there are other devices that do suport Java? It’s a no brainer choice for me to use Android phones, and yes I have developed apps and have them available in the Android Market.
So Jobs announcement that there won’t be any Apple developed future releases of Java for the Mac, plus the news that an App store is coming for the Mac is sounding a bit too ‘closed’ for my liking. I know Jobs and guys at Google have been swapping quotes on open vs closed over the past few weeks, but I honestly don’t want to use a platform that is as restrictive as the iPhone. If Mac OS X continues to become more iOS like, and have apps controlled and supplied via an iPhone-like App Store, I’m not too sure I want to stay around on the Mac platform. Depending where this goes I might just find that my next notebook or desktop will be a generic PC running Linux.
Sorry Mr Jobs, but I don’t like what I’m seeing right now, and I’m already walking towards the door to make an exit from the Mac, as I’m sure others in my same situation are too…
Steve Jobs took time on the Apple financial call yesterday to discuss how the iOS platform is better than Android, since the ‘open’ platform of Android is becoming fragmented while the ‘closed’ iOS platform remains consistent. He gave an example of how the developers of TweetDeck apparently were frustrated developing the Android version of the app because they had to deal with too many variations of the Android platform which made development more difficult than for iOS
This kicker in this story – the CEO for the company that develops TweetDeck publicly responded, appropriately via Twitter, saying that they said no such thing. In fact they countered Jobs statement saying that developing for Android was cool because their app can run on so many different devices which shows how little the issue of perceived fragmentation actually is, and that the actual development was easy and that they only have 2 developers working on the Android app.
Hmm. Something not adding up there. Someone’s not doing their research, or Apple just dropped some unbelievable unsubstantiated FUD that only Microsoft has been successful of previously pulling off.
There’s no doubt that the iPhone has been wildly successful, but this week was the first week I overhead more than one conversation of people deciding to ditch their iPhones for an Android phone instead. If this is any indication of a change across other iPhone users, then it’s understandable why Jobs spent time on the investor call to give the sell on why iOS is better than Android. Shame he didn’t get his facts right.
I was extremely worried this was going to turn out bad and brick my phone, but following the instructions from theunlockr (more details here) worked out great.
Turns out this version of 2.2 on a myTouch3g is extremely responsive, and even more peppy that the 1.6 official version I originally had. Very pleased so far!
Microsoft are having yet another try at getting a foothold in the mobile phone market, this time with Windows Phone 7. cnet ask if the launch of Windows Phone 7 will be the ‘defining moment’ for Ballmer. After a string of half-hearted mobile products, including different versions of Windows Mobile that attempted and failed to bring the Windows desktop metaphor to the smaller form factor of the mobile phone, the Microsoft Kin which came and went without hardly anyone noticing, Windows Phone 7 has a lot to live up to.
I’ve said many times before, I think Microsoft under Ballmer’s direction has lost it’s way – they’ve been milking the Windows and Office cash cows for too long and the rest of the tech world is leaving them by. For Microsoft to have a success with a new mobile phone platform they’ve got to come out with something earthshattering to catch up and compete with Apple’s iPhone and Google’s Android platform. Those trains have long left the station and have gathered immense momentum, it’s going to be pretty hard for anything new from Microsoft to catch up at this point. We’ll wait and see what Microsoft pulls out of the bag on Monday.
Mark Reinhold, the Chief Architect for the Java platform, recently laid out details for two alternatives for the next Java release. Plans have obviously been changed somewhat due to Oracle buying out Sun, and as a result there will not be a Java 7 release this year.
Here’s the options:
Plan A: JDK 7 (as currently defined) Mid 2012
Plan B: JDK 7 (minus Lambda, Jigsaw, and part of Coin) Mid 2011
JDK 8 (Lambda, Jigsaw, the rest of Coin, ++) Late 2012
Reinhold confirmed in his blog recently that the next release will be according to Plan B.
Android based devices according to Gartner are neck and neck with Apple’s iOS based devices in market share. But by next year, Gartner predicts Android will surge ahead. More info here.