Joshua van Aalst’s blog

April 14th, 2008

Introducing Netbeans 6.1 - Taking Netbeans from good to great!

Posted by Joshua van Aalst in Netbeans, Reviews

Having been a long time Netbeans evangelist and community tester of the Visual Web pack, I thought what better way to help support the Netbeans team than with an in-depth blog on the exciting new Netbeans 6.1.

I have been using Netbeans since version 3 for various software projects including my community website www.joshandfriends.com.au and the development of the Internet Bank at www.stgeorge.com.au . I have also had significant exposure to the Eclipse IDE whilst working at Macquarie Bank.

This blog is a thorough review of the Netbeans 6.1 IDE and its new features. I will also make many comparisons to the Eclipse 3.3 IDE.

The project

I plan to build a campaign management product to display advertisements on my website www.joshandfriends.com.au . For administrators this application will be secured through integration with Vbulletin forum software.

The review computer

A Dell Inspiron 6400 laptop Pentium Core Duo (not Core 2 Duo) 2ghz processor with 2g of ram, a 60g 7200rpm hard drive and an ATI mobility Radeon x1400 128mb graphics card.

Initial thoughts – IDE performance

The improved startup time of Netbeans 6.1 IDE was obvious. The initial IDE start up, with 3 projects of 2 ,700 files took 50 seconds and subsequent start ups took only 5 seconds! In fact the whole IDE felt lightweight and fast. This is a dramatic different to previous versions of the IDE which were sluggish when performing certain tasks.

Another noticeable performance benefit of Netbeans over Eclipse is the complete lack of IDE blocking. Classpath changes are quietly scanned in the background and do not cause performance degradation and by default projects are compiled when the user chooses to do so, rather than automatically like Eclipse, which locks up the IDE at non-opportune moments.

Project creation

One thing that I have found a little difficult when configuring a new Visual Web Project is that it is not obvious that the “Default Java Package” setting should be a java package in the format com.mydomain.myapplication . I have often created a new project only to quickly delete and re-create due to the lack of description of this field.

In addition, I found that certain combinations of frameworks are incompatible. For example the Visual Web Pack and JavaServer Faces frameworks clash over the faces configuration file. I would advise only allowing a single Web UI technology to be selected.

Another very welcome feature edition of Netbeans 6.1 is the library sharing which is much needed if Netbeans is to compete with Eclipse in multi developer development environments. The feature enables the developer to have jar libraries located in a central folder on the file system. The end result is that multiple users and workspaces can access the same set of jar library definitions. This was a big issue in earlier versions of Netbeans where developers would be forced to re-add all libraries for each workspace. Overall the feature was easy to setup and use. It even asked you to import jars into your common library directory if they weren’t already in there. The only constructive criticism I have is that later when I wished to move the library folder’s location I found no function to enable me to do so and also I noticed that I couldn’t change library names once they were created.

One thing I must add here is that I believe it would be extremely useful to have Netbeans work in Eclipse compatibility mode. Such a feature would enable Netbeans to read and write to Eclipse project files. I am aware of the Netbeans Eclipse Project Importer module but I find it almost never works in large projects due to the way Eclipse references jars. I also find that in the corporate world developers tend to try Netbeans one at a time rather than with an all out team decision to convert IDEs. Such functionality would allow a team member to use the IDE in harmony with other Eclipse developers. Intellij already offers this and it has helped the adoption of that IDE.

Refactoring

Upon creating a new web project I attempted to rename the default package as my requirements had changed. Netbeans displayed an error message: “Error: Cannot rename default package”. This is something I believe needs to be addresses as default packages will often need to be refactored after creation. On the upside, I was able create a new package and move the Netbeans generated JSF files to it.

New hot keys

If you are still making the switch from Netbeans 5.5 to 6 or 6.1 please note that the default hot keys have changed. This caught me a little off guard but all in all the new keys were easy to pick up.

Netbeans 6.0 editor niceties

If you haven’t tried the Netbeans 6 editor then you’re in for a treat! It has all the usual Eclipse niceties including the ability to click on an error message and have the IDE fix the error such as “Implement all unimplemented methods” and also auto generation of object and variable names.

The only feature I found missing, which is useful in Eclipse, is the ability to not only see a drop down list of open files but also to enter a text filter to search for a specific open file.

An added bonus for the XML editor was its new feature to format XML.

Visual Web improvements

Immediately apparent to Visual Web users is how clean and neat the generated JSPs and backing beans have become. The removal of the rarely used binding objects has resulted in this and if you need them you can add them manually back in.

Also new in Netbeans 6.1 is the ability to generate JSF CRUD (create, read, update and delete) pages for JPA entities. This was both useful and cool. Not only were CRUD pages generated but the IDE even generated an array of standard error and success messages.

A nice to have, on the Web development side, would be the ability to auto generate import definitions for classes in jsps.

CVS

Having somewhat missed the Netbeans 6 upgrade. I was very keen to try the enhanced version control functionality that was released with that particular version. Although the functionality was visually a big improvement I found that Netbeans lacks the ability to see an overall repository view, like the CVS view in Eclipse. I would suggest that a new section for versioning be added to the Services window which allows developers to browse repositories.

Clear and concise help

The supplied help available in Netbeans IDE is clear and concise. I referred to it several times whilst writing this blog entry and especially for accessing the new features available in Netbeans 6.1 such as the CRUD generator.

April 8th, 2008

It’s time to press PLAY!

Posted by Joshua van Aalst in Interesting Stuff, MBA

Results are in. I got wait listed to MIT. Obviously I am delighted to have reached this stage of the application process, but at the same time disappointed that I have not been accepted. I felt I fitted extremely well with MIT. The alignment of their specialties (e.g. Entrepreneurship, Technology and Leadership) and my interests and experiences. In particular the ability to study an MBA focused on becoming a successful Entrepreneur. Their social scene, their location, their community, their everything. Yes I am a bit upset. That being said. You never know dreams can still come true with intelligence, hard work, effort and dedication. Heck, you never know, I could be called up off the waiting list.

…. so in the meantime where am I at?

“Dreams can come true”.

It’s time to stop waiting for results to be announced and start doing. It’s time to press the play button and swing into proactive action and chase those dreams. I will go to MIT. I will achieve a B*school education, experience. If it’s not this time round then I have learnt an incredible amount and will try again next year. I feel I have more to offer than what I displayed in my current application. For one, I believe, that I am capable of a much higher GMAT score.

… but thats not all. It’s time to press play on my own personal achievements. I want to build up the website to achieve a whopping 100,000 unique visitors per month. I want to donate a Josh and Friends annual scholarship to the Australian Institute of Music. I want to join a swimming squad. I want to build my team at the Investment Bank to become the leading Java development team in the group.

I want, I want, I want.

Well, what am I waiting for? nothing.

It’s time to achieve.

April 6th, 2008

Netbeans 6.1 Review and Netbeans 6.1 vs Eclipse 3.3

Posted by Joshua van Aalst in MBA, Netbeans, Reviews

Hi all,

As a long time Netbeans evangelist and blogger, I have been spending a great deal of time writing a thorough Netbeans 6.1 IDE review. It is also written for those who seek to compare it with the Eclipse 3.3 IDE.

The review is now available here: >> CLICK ME <<

p.s. I haven’t heard back from MIT yet. It seems that they will hold true to their word of announcing on the 7th of April. I am so nervous and excited it is crazy. I haven’t slept for 2 weeks!