Friday, 13 February 2009

Book: Beautiful Architecture

O'Reilly have just released Beautiful Architecture, a follow up to their hugely successful Beautiful Code book.

I have contributed a chapter to this book, entitled A Tale of Two Systems: A Modern-Day Software Fable. Based on my experiences with two contrasting development projects, it illustrates how software architecture affects many things, from the quality of the software, through to the morale and dynamics of a team, through to the very success of a company.

It looks like a great book, and all proceeds from its sale go to Medecins Sans Frontieres.

Grab it on Amazon here.

Friday, 6 February 2009

Running KDE 4.2 on Kubuntu 8.10

Earlier this year KDE announced their latest release, 4.2. This is probably the first release in the 4.x chain that's actually worth using. There aren't official release packages for Kubuntu 8.10 yet, but you can save yourself the source-build-athon by pulling in the "experimental" Kubuntu packages.

Sadly, it's a painful process. Is it worth it? Yes. This new version KDE really is great, but installation is definitely not for non-techies, yet. This is a shame as the 4.2 KDE release is for non-techies, whereas Kubuntu's stock 4.0 is most definitely not.

I've run through the upgrade process three times in one day now. Each time I've hit the same problems.

Installing KDE 4.2 on Kubuntu 8.10

The first trick is finding out how you are supposed to do it. The information is on: (not in the Kubuntu FAQ or wiki).

Make sure your installation is up to date, and you have already installed the Kubuntu "restricted" extra packages first. Then add the "experimental" package repository for the software update process. This is a manual copy of an APT line, which is rather error prone. Indeed, it's incredibly important to get this line right, or the update not only fails, the adapt software installer program segfaults on startup. User friendly. Fixing the problem involves common sense, the command line and knowledge of apt and Linux. This clearly isn't ready for Granny, yet.

Next install some gpg keys. If you forget this, the update fails and leaves your system in a semi-screwed state that the adept GUI updater cannot fix, leaving you to again resort to the command line.

At last, you can hit "Upgrade" in Adept.

Now watch the errors. Back to the command line. Run apt-get -f install to try to clean up the mess. Agree to whatever it says. The computer knows best.

Then, if you don't want to be totally screwed, install the window manager that was magically removed with the above shenanigans. apt-get install kde-window-manager

Logout, restart X, say a little prayer, log in. Enjoy.

Hopefully that'll work fine. (2 out of three times it did.) If not, go back to the command line, apt-get install kde for luck, and see if everything else got installed.

Running KDE 4.2

Oh joy! Compared to 4.0, this is a joy to use. Most (not all, most) of the redraw bugs have been ironed out. Missing functionality had been restored. It's actually nice to use again. It feels as good as KDE 3.x felt in the day.

I'm a happy bunny.

I have to take my hat off to the KDE development community. They have polished and improved the KDE 4.x code considerably, and it's a job very well done.


No one suggested that installing KDE 4.2 on Kubuntu was supposed to be easy right now. If you have the smarts to do it, it's highly recommended. If you don't feel comfortable playing with apt-get by hand then it's probably best to wait until the packages become a mainstream Kubuntu release.

Monday, 2 February 2009

The curse of working from home

It's snowing here. Real, proper snow. Inches of the stuff. My daughter said "this is the best Christmas Day we've had this year." Great fun.

But it just highlights yet another problem with this pesky new information economy - it's harder to skive work :-(

Both of my daughters' schools were closed, so they're at home. Having fun. My wife's work closed, so she's at home. Having fun. My friends are all off work, too, so they're round our house. Having fun. It's too dangerous for me to cycle into the office right now, so I too stayed at home.

But I have an office full of computers and kit. So I kept right on working.

I should have been a builder...