This post is definitely not about a football or cricket match. It’s about an IDE.
An IDE which was considered “dead” not longback, is creating lot of buzz today.(evident from the high hits for netbeans related articles in my blog 🙂 ) It’s like a nail-biting cricket match, where a team would come from behind to win the match and eventually the series. (Like what India did to Australia in the CB series).
NetBeans too, remains the “underdog” in the much touted “IDE” war. No victory is achieved without sincere effort and NetBeans is no different. But as we have seen in many cricket, football matches, “underdogs” can be really dangerous and can tout even “world champions”.
No champions are born overnight. There needs to be a lot of rigorous practice and preparation. Being at the receiving end for so many years, NetBeans finally made the world turn back in admiration, thanks to it’s “Matisse” gui builder introduced in NetBeans 5.0. Developing “swing” was never easy. If you are still using that ol’ grid bag layout for your swing apps, please double check that you are in this world. It’s 2008 man.
But the journey was not easy though. Though NetBeans became the “first” ide to support the much admired “Java EE 5” support, and standardized all the sun products into different “Solution Packs”, it was not enough for most of the developers who were simply mesmerized by some advanced “coding” capabilities offered by the competitors. While NetBeans was attempting to “automate” things like “Generating entity classes from database”, “Generate JSF pages from entity class”, it didn’t win them much converts. The answer is simple. The NetBeans editor was simply “unusable” for most of the users who use other ides.
Enter NetBeans 6.0.
NetBeans team quickly realised this and through it’s well acclaimed community feedback process, gathered the “wish list” for NetBeans 6.0. Even I suggested some features in the NetBeans mailing list. And I’m happy to see some, if not all, were implemented in NetBeans 6.0.
Context oriented code completion, good syntax highlighting, improved refactoring, listing unused variables/imports etc, etc were some of the many features implemented in NetBeans 6.0. And NetBeans 6.0 provided more goodies like integrated profiler (great stuff!, you must check it), integrated visual jsf support (hmm, somehow, i never liked this feature), restructured plugin manager to name a few. Matisse also got a major overhaul with the support for “beans binding” and “swing application framework”.
And most important of all, came with a more liberal license that allowed it to be included it in linux distros. (I might be wrong here, as I’ve seen netbeans 5.5 in ubuntu repository as well. Please correct me.)
I’ve written more about some NetBeans 6.0 features here.
Not surprisingly, it took nearly 1 year for the NetBeans team to develop the 6.0 release. But it’s worth the effort. And now they are actively working on to improve the performance of NetBeans through the 6.1 release.
When released, NetBeans 6.1 will have some enticing features like “out of the box spring support” and “websphere support”.
So let us come back to the question, “Can an underdog tout world champions?”. With NetBeans as a shining example, I think, underdogs can cause major upsets. What do you think?