Sunday, November 25, 2007

Netbeans 6: Finally a good version to work better

If you aren't a Java Programmer, maybe you are unaware about the fight between the Netbeans and Eclipse IDEs. They are the most popular open source Java IDEs nowadays, where each one produces new challenges to be achieved by the other one in every new version available. Personally, I'm an Eclipse's fan, but my mind started to change some months ago.

Actually, my first good experience programming in Java was with Forte for Java (Now Netbeans after being acquired by SUN), but when the Eclipse version 2.0 was delivered (the first version was terrible), I started to work with it until now without interruptions because of performance reasons. But, the Forte experience was strong and for each Netbeans' release announced I tried to evaluate it, checking if it's possible to change IDEs. Unfortunately, the experiences were not so good. I spent most of the time in the code and all Netbeans' promises about productivity was not about code. Eclipse has an excellent Java editor and I always take it in consideration.

Some months ago I started to evaluate Netbeans again. This time with the 6.0 beta 1. I should say that finally Netbeans is a serious option to be considered. It is useful, has a nice look, implements more functionalities, more languages but, on the other hand, it is even slower than version 5, and the project's people insist that it is faster. I don't know what they mean, but I recommend a very powerful machine to work with it productively.

The main advantage of the Netbeans IDE is the great support for the new Java 6 and JEE features, something that it is not covered by Eclipse very well. So, you have to install a third-party plug in to be productive and, usually, they are not for free. Now, Netbeans is more modular in a way that the programmer can select the best combination of resources. For instance, if you work only with web applications, there is a special version for you. It is true for those who focus on mobility, desktop applications, ruby, C/C++ or everything at same time.

Of course, there are some negative points:

  • Versioning: It is very easy to work with CVS or Subversion. They are already integrated in the IDE. But, the simplicity is also a problem, because sometimes we want to do some fine adjustments and it is not easy. For instance: I tried to change my password to connect with the Subversion repository, but to do it I have to explore carefully the IDE's options until I find the parameters in one of the last tabs of the miscellaneous area. Why can not we do it directly from a menu item in the versioning menu?
  • Component Libraries: Finally a good support for Java docs. You can use a component and associate its Javadoc to visualize the content during the work in different ways. The problem is that it's not self evident how to set up a new javadoc and you will spend some time to do that. What is the first thing that you do when you need help about the IDE? (after Google) You will consult the help menu. So, that is the best place to give access to documentations and to add new documentations.
  • Slow Startup: We are in a multi threading world. Why not load modules on demand? Why do I have to wait for all modules to load if I will work only in a desktop application?
There are many other possible refinements, but none of them is so bad to make you give up the Netbeans IDE again. Taste it and give me your opinion.

Wednesday, November 14, 2007

Feeling the History

The history tell us good and bad experiences that we learn to make decisions for the future. But we know that the context has a strong influence on the decision process despite human behavior and intuition. Now, imagine to feel the past in a place where strategic decisions were taken some centuries ago. This place is Carcassonne.

Carcassonne is a small city in the south of France, which had its earliest nucleus created by romans 3 centuries before Christ (BC). It was invaded by barbarians, visigoths, arabs and others, because of the strategic position in the route between the Atlantic Ocean and Mediterranean Sea. The constant incursions transformed Carcassonne in a fortified city, where an amazing castle was built around 1130 AC. France was the last kingdom to invade the city and attach the region to its current territory. The castle was an important army center until 17th century and almost demolished in 19th century. The antiquary and mayor of Carcassonne, Jean-Pierre Cros-Mayrevieille, and the writer Prosper Mérimée, the first inspector of ancient monuments, led a campaign to preserve the fortress as a historical monument. Later, the architect Eugène Viollet-le-Duc, already at work restoring the Basilica of Saint-Nazaire, was commissioned to renovate the place. Today, the castle was added to the UNESCO list of World Iteritage Sites in 1997.

I visited Carcassonne this weekend and I could feel the context where war decisions were taken and strategies of medieval attacks and defenses were planned and executed. It is possible to imagine the difficult logistic to keep everything working and ready to an eminent confront. Nowadays, organizations have more facilities to make decisions, but decisions have become more frequent and complex. Even with a complete information system support, like Planexstrategy, the decision process is surrounded by uncertainties.

Tuesday, November 6, 2007

Workspace

I would like to show you the space where I work and study every day. If you are using the Planexstrategy, you know where everything is done now.



I'm using two notebooks. Both are used to develop and do my academic works, but they use different operational systems (OS). The white one is a DELL with Windows XP running the Eclipse IDE with the Planexstrategy project oppened. The black one is a Toshiba with SUSE Linux running the New Netbeans 6.0 with a scientific project opened. I work with two OS to test the multi platform aspects of my Java applications.