The important things in life

February 26th, 2004

Matthew writes:

Having to look after my kids in this intensive fashion for the past 3 months has certainly allowed me to take some reality-checks on what sort of stuff is important and what isn't.

People are awed these days when I tell them I turned down a "consultancy" job (read: big car, big money, bodyshopping, driving to Brussels every day) and choose a job with a "end-user" (less money and no car, but 7 km from home, with interesting job content and an interesting boss). It's all about putting things in perspective. If the only reason I need a big car is to stand in traffic with it, then I prefer not to have one. And play with the kids an the girlfriend instead.

All this is my way of finally relieving the suspense: this is it, starting Monday. Believe it or not, this brings my waste count almost down to zero (I'm not sure if I'll ever be able to completely loose those NPE's -- nor that I really want to).

More powerful than you think

February 25th, 2004

Multiple Identity Support for Thunderbird. Great! I was using fake accounts with fake servers to accomplish the same. Now my UI looks a bit tidier. Thanks Jan! But why don't you use Thunderbird + Firefox yet?

Open source Java?

February 18th, 2004

Recently, blogland is (again) uproared by the question "Should Java be open source?". I just read another opinion, this time by somebody I respect highly. But I don't agree with him. Reason enough to give my opinion, I guess.

For starters: Eric Raymond's argument (as it is described by Bertrand, I didn't read his article) isn't valid at all. I think MS Windows is pretty ubiquitous, yet you can't describe it as 'uncontrolled'. A single example doesn't prove anything. Blame my scientifical mind for contesting this.

Secondly, I'm not convinced that OS Java would be a good idea. The first thing that will happen, is forking all around. Every "Java" will have its own pros and cons (This one has untyped variables! This one has closures!), and programmers will have their own "Java" of choice. Leaving the user with having to download a new "Java" for every program they use. Is moaning and grinding about jar dependencies familiar to you? Imagine that it becomes moaning and grinding about "Java" dependencies. Or jars that are not available for certain "Java" forks.

Maybe Sun's marketing machine isn't up to par with Microsoft's, and I can regret that. But thinking that setting Java free will solve this problem, is naive at least. A lion that has spent his life in a Zoo won't survive in the wild.

As much as I would like a Java you can tinker with, I'm too comfortable with the idea of having a Java, instead of having tons of "Java"s. If you want functionality that's not readily available, extend, don't replace. Java is perfect for that.

After all, remember the effort we had to make to finally have web standards.

Java SDK 1.5 Beta 1

February 13th, 2004

Well, time to comment on my own pet peeves that have been fixed in the new JDK, I guess. They seem to be bundled in this page.

The InetAddress class now provides an API to allow testing for the reachability of a host. This features provides a ping-like capability in Java. Great. I (unlike most Java developers, so it seems) find myself always behind a firewall, which makes me connect through a proxy. I had written a tiny class (for own use) that set the proxy for me. Only one thing I had to remember: every time I switched locations, I had to switch the selected proxy. No more.

public static void setDefaultLocation() throws UnknownHostException, IOException, ProxyException {
    List locations = new ArrayList();
    boolean set = false;

    for(Location location:locations) {
        InetAddress host = InetAddress.getByName(location.getHost());
        if (host.isReachable(3000)) {
            set = true;
    if (!set) {
        throw new ProxyException("Could not find a reachable proxy.");
(Some details left out). Also notice the use of the generics and the "foreach" loop. They came quite naturally when I was writing this code. Nice job.

BTW, it seems that I could do an even better job using ProxySelector, but I didn't figure out how to use this yet.

On to the next one. Did I ever tell you the reason I fell in love with Java? It was because you could connect with the web from within code so easily! Write a program that does stuff humans do (surfing the web, that is) -- who wouldn't want to do this? Well, now we will be able to do this using FTP too, or so it seems from the sentence The specification of the URL class now mandates a minimum set of URL protocol handlers that are guaranteed to be present in J2SE. They are http, https, file, jar and ftp. I still have to figure out the ins and outs, but it looks promising.

Something I also didn't know yet: Doug Lea's concurrency package has made it into the core.

There are also some new packages popping up: java.lang.annotation, java.lang.instrument, , and* are intriguing to me. Yet to be investigated, though.

On a side note, if you're an Eclipse user and want to play around with these new toys, check out the SDK 1.5 plugin.

Update: I forgot to mention this one: The networking API now provides a way of setting timeouts on connect and read operations for protocol handlers. This will benefit any HTTP client application that must behave robustly in the event of server failure. I know at least one guy who has been crawling the internet, just to find a library that could overcome this shortcoming in the previous JDKs.

Update: The link to the plugin is referring to the installation manual. However, that has the wrong link for the actual plugin (an old version). So you're better of downloading it here.

The backfired one fires back

February 13th, 2004

Remember the Lindows case? A new twist has been added to the plot: Is windows a generic computing term? You have to admit, this is a better soap opera than Dallas.

Great stuff! Thanks, Glen.

Ain't it the truth

February 10th, 2004

Tiger, Panther, Fox, ...

February 10th, 2004

Last week, I've seen an increasing number of blogs mentioning "Tiger". And I thought: "Those Mac guys seem to be up to something again. <Delete>. There are more interesting blogs (for me) to read".

This morning, I scanned a blog title mentioning "J2SE 1.5". I have seen these too during last week, but I've been seeing them for months now. "Yet another 'it sucks/rocks' about generics" I thought, <Delete>.

And then I noticed yet another one. Thinking that even Erik would eventually get tired of these posts, I wondered why there were 2 on the same day. So I took a look. And lo and behold, I find J2SE 1.5 has a beta release! One week after the fact, or so it seems. I still don't understand how I could possibly miss this.

Am I a victim of the increasing noise/signal ratio on blogs? Do I try to follow too much at once? Or is it just that, with taking care of my job switch, 3 weeks old Tuur in the hospital, 1,5 year old Lowie coming down with something too, supporting Sandra to stay in the hospital with Tuur, getting my bicycle prepared for the shortly daily commute, I have missed a glitch in cyberspace? All those animals that seem to be crawling around in blogland don't help much either in discriminating between them. Or maybe I'm just getting too old for this shit... <sigh> Where is the time you only had to choose between DOS 3.0 and 3.3.

If you're now thinking: "What? 1.5 is out?", please leave a comment saying so. It would make me feel better.

Thunderbird and Firefox

February 9th, 2004

New releases. Hopefully, Phoenix (as it is still called in my mind) will have gone through its last namechange. This really isn't good, marketing-wise.

Via Koen

Identifying myself visually

February 6th, 2004

It is always weird when somebody you apparently know, links to you, but doesn't provide her name. Now, what also is weird is when somebody does a good job at this (Wouter Vernaillen did), but you can't really remember his face. The name rings a bell, and even the story does, but I just can't remember his face. And if I'm right about who he is, we used to work only 2 desks apart. It's weird when old age gets to your memory.

So in order to help you remember my face, I put a picture on the main page of this blog. Not really art, and probably not the best picture either (I really need to get my hair cut more often), but at least you'll remember me. Or recognize me when we bump into each other while walking around in Antwerp. Or give me hair fashion advice.

Belgian web designer for hire

February 5th, 2004

Just helping to spread the news. I've worked with Tom ages ago, and I remember him as a very fast thinker (which reflected in his dry sense of humor), who took much pride in his work. If you need a decent web designer, talk to him.

Too much magic

February 4th, 2004

If you're even remotely involved in designing and/or programming applications, read TooMuchMagic - JicarillaWiki (via 'cyberlizard'). One particular instance of this phenomenon that I've experienced:
MyInterface intf = (MyInterface)obj;
Method meth = intf.getClass().getMethod("blah");
(code not actual code, method signatures might be wrong, but you'll get the point)

Spring and Hibernate

February 3rd, 2004

Matt sends me to an article about Spring and Hibernate. Looks like jummy stuff. I've not yet looked into Spring, but this has triggered my interest. Do you have experience with Spring?

You're looking for something older?