Oracle made failed bid for MySQL

Hungry for acquisitions and in the same timeframe that Oracle successfully bought out Sleepycat, the company behind the BerkeleyDB database engine used on many open source platforms, news yesterday was that Oracle made a bid to also buy out MySQL, but the bid was rejected.

MySQL Chief Executive Marten Mickos said that he wanted to keep the independence of his company.

So what does this mean for Oracle and the Open Source database market? Does Oracle consider Open Source databases it’s largest threat to it’s own business, and being unable to compete the only way to stay in the game is to buy them out? Their current buyouts seem pretty focused on aquiring anything MySQL related, including the database engines that it uses under the covers – last year the first surprise was the buyout of InnoDB, the most widely used of the database engines used by MySQL. Now they also have BerkeleyDB from Sleepycat, and now we hear they are also gunning for MySQL itself. This cannot be a good thing – chances are if Oracle consumes all these companies and their technologies, sure they may stay around in one form or another, but I think the spirit of OPen Source with these products will be gone. And chances are they will be rolled into an exisiting or a new product with an Oracle badge, meaning the end of the original products. This is not good for users of the original products, who were most likely using them because they were open source.

Using Java SE5.0 features effectively (and becoming an effective developer)

This month’s JDJ magazine has an excellent article on ‘Experiences with the New 1.5 Java Language Features’.

Over the last year or so I’ve read many overview and introductory articles outlining the Java SE 5.0 new features, but this article is interesting as it outlines best practices and gives tips on when and how to use the new language features more effectively.

Given a couple of Java books and a couple of months experience any developer can pick up the Java language. However, to effectively use the language, to understand and be aware of the pitfalls and common gotchas, and to make sensible choices about when to use a particular feature to best solve a problem – this ‘deep rooted understanding’ (as one of my colleagues once called it…) takes a lot longer to develop and grow. Depending on the environment you are working in and the level of experience of your colleagues you are working with, it can take a number of years to get to a point where you are using the language effectively.

Something I’ve noticed over the past few years is that new developers or developers new to Java (but not as often as new developers) initially think that once they ‘know’ the language, that is it, they are masters, they have the knowledge and know how to implement anything. Unfortunately this naive attitude results in some of the worse code I’ve seen, as the developer blindly codes away, not aware that there may be better, more appropriate solutions to the problem.

I think in order to realize that there is far more than just ‘knowing the language’ a developer has to acknowledge that there is always far more to learn and understand. Knowing a language is not the same as knowing how to use it well. I may know how to use a screwdriver, but that doesn’t make me a carpenter.

So, not everyone likes the new Netbeans release?

In his blog, Malcolm Davis lists many reasons why he is not happy with the latest NetBeans release. I still haven’t downloaded it and taken a look myself, but my first impressions from reading articles and the info and screenshots on websites is that it looks impressive and is definitely worth a look.

Malcolm however is not as happy, although his main complaints seem to be cosmetic. However, that’s a valid issue if you have to work with the tool every day and stare at your screen for 8+ hours a day.