Tuesday, November 20, 2007

Ubuntu 7.10 vs Fedora Core 8 - Gutsy vs Werewolf

I was pretty happy with Ubuntu 7.10, but when Fedora 8 came out I decided to give it a try. Last time I tried it it was Core 2 or something like that, and it was NOT good.

At first Fedora 8 looks quite good, has a good Live CD install, reminiscent of Ubuntu.  The positive side is that it is based on the latest Kernel. It manages my Thinkpad T42 very well (suspend, hibernate work). But after a few days, one notice Fedora is not as stable as Ubuntu, for example:
  • I have had weird behavior with windows not being updated properly
  • I experienced big problems when playing with LVM,
  • It is also a general impression when interacting with the system.
One can wonder why Fedora 8 does not install OpenOffice by default.
Ubuntu is IMHO still the king of distros.

Ubuntu 7.10 vs Fedora Core 8 - Gutsy vs Werewolf

I was pretty happy with Ubuntu 7.10, but when Fedora 8 came out I decided to give it a try. Last time I tried it it was Core 2 or something like that, and it was NOT good.

At first Fedora 8 looks quite good, has a good Live CD install, reminiscent of Ubuntu.  The positive side is that it is based on the latest Kernel. It manages my Thinkpad T42 very well (suspend, hibernate work). But after a few days, one notice Fedora is not as stable as Ubuntu, for example:
  • I have had weird behavior with windows not being updated properly
  • I experienced big problems when playing with LVM,
  • It is also a general impression when interacting with the system.
One can wonder why Fedora 8 does not install OpenOffice by default.
Ubuntu is IMHO still the king of distros.

Friday, November 02, 2007

Apache DbUtils Completely Useless

I am disappointed about the Jarkarta Commons DbUtils project. I give a link to it, because it's a bad project (even if written in clean code). It is very simple, but it really does not do much for you.

I was looking for a very simple abstraction of JDBC. I thought bringing Spring in my project would be overkill. After trying DbUtils, I think again. It does not help. It does not handle frequent cases well, and it does not save many lines of code.

I am a bit angry about it as I noticed that by using it, my test program that was taking 2s with straight JDBC before is now using 1 minute!

The reason behind this huge performance penalty is that there is no way to just reuse a PreparedStatement with the existing classes. For each query with a same sql, it will create a new PreparedStatement object, even if you reuse the connection. I am surprised since this is probably why PreparedStatement is used in the first place. How can such a project be part of Jakarta repository?

Now I just wish Spring was more Guice like, maybe I should write a Spring JDBC like layer for Guice.

Apache DbUtils Completely Useless

I am disappointed about the Jarkarta Commons DbUtils project. I give a link to it, because it's a bad project (even if written in clean code). It is very simple, but it really does not do much for you.

I was looking for a very simple abstraction of JDBC. I thought bringing Spring in my project would be overkill. After trying DbUtils, I think again. It does not help. It does not handle frequent cases well, and it does not save many lines of code.

I am a bit angry about it as I noticed that by using it, my test program that was taking 2s with straight JDBC before is now using 1 minute!

The reason behind this huge performance penalty is that there is no way to just reuse a PreparedStatement with the existing classes. For each query with a same sql, it will create a new PreparedStatement object, even if you reuse the connection. I am surprised since this is probably why PreparedStatement is used in the first place. How can such a project be part of Jakarta repository?

Now I just wish Spring was more Guice like, maybe I should write a Spring JDBC like layer for Guice.