Thursday, May 29, 2008

Summer!

Hooray, it's summer! (I define summer as the period of time between Spring and Fall semesters, not by the progress of the earth around the sun.)

I'm setting up my home machine to do some work on FindBugs over the summer, and since my Ubuntu 6.10 was getting a bit stale, I decided to upgrade. I happened to have a CD burned with Kubuntu 8.04, so I backed up my essential files and let the installer rip. So far, it seems nice. It took a bit of getting used to KDE rather than GNOME. Overall, KDE seems less polished than GNOME, but more configurable. I'm using Amarok to play my music files, and it appears to be significantly better than Rhythmbox. (See previous post to see my ranting about how much I dislike Rhythmbox.)

Out of curiosity, I installed the Ubuntu openjdk package, and tried running Eclipse on top of it. So far, it seems to work quite well! It's exciting to finally have a usable free Java implementation. Major kudos to Sun for open sourcing the JDK.

There is a weird bug on Ubuntu/Kubuntu 8.04 with Eclipse: here is the bug report. The workaround described in the bug report does seem to fix the problem.

I bought a new monitor, an Acer AL1916. Newegg was having a special for $159, with free shipping. Now (at long last) both of my monitors are the same size and resolution.

I finally started some work on FindBugs today. First project: implementing exclusive type qualifiers. (This is part of implementing support for JSR 305 type qualifiers in FindBugs.) Bill Pugh has a nice presentation about JSR 305 which explains all of the goodness.

Tuesday, May 6, 2008

Rhythmbox

I've been using Rhythmbox for a while to play my music files (which are, of course, in Ogg Vorbis format.)

I hate to say it, but I have become so frustrated with Rhythmbox that I'm now actively looking for a replacement. Here are my main gripes:

Gripe #1: When you toggle between the "small display" and the full size display, the window size chosen is always wrong. What I expect to happen is that whatever window size I configure in the two modes, Rhythmbox will remember my decision. For f***'s sake, would this be so hard to implement? Here's what actually happens: when switching from the small display to full display, the full display gets a hard-coded height of about a third of my display height. Here's a screenshot:

As you can see, the various lists (artist, album, tracks) are completely squashed. THIS SUCKS!!!! (As a bonus bug, you'll notice that in Ubuntu 7.10, gimp is no longer able to capture screen shots that include the window decorations.)

When switching from the full display back to the small display, sometimes the size is restored correctly, and sometimes the width of the full display is preserved (meaning that you get an extremely wide small display):

Nice work, rhythmbox!

Gripe #2: When an album finishes playing and you click "Play" again, it starts playing from the last track, not the first. Yeah, that's just what I wanted to do.

Gripe #3: If you click "Previous" too quickly, playing stops altogether, even if you haven't reached the first track yet.

One of the reasons I have been an enthusiastic user of free software over the past 15 years or so is that it generally places a high value on correctness and utility over bells and whistles. It concerns me greatly that the free software world is moving towards a Windows model where every application is skinnable, animated out the wazoo, has a feature list the size of a telephone book, and is impossible to use for more than 2 minutes without uncovering a serious bug.