Deliberate Change Management

Software engineering can be described as the orchestration of a quasi-denumerable set of moving parts.

With so many moving parts, breakages occur. One main goal as a “software craftsperson” is to never expose customers to the affects of these breakages. Test-driven development rose from this desire. Accepting that systems break, even in production, motivated loosely coupled and shared-nothing system architectures.

More >

HOWTO install etherpad on ubuntu 9.10

Etherpad was opensourced by google, and has some generic installation instructions. Here’s the translation for Ubuntu Karmic Koala (release 9.10):

More >

Simple spring integration testing

Spring has had a really nice unit test framework available for a while now, but the documentation can be a bit daunting. Here’s a super-simple example of adding dependency injection to an integration test:

More >

Defensibility as an touchstone for development decisions

The topic for this “Software Development Mantras” post is “defensibility.”

First, let me introduce the concept of “TIMTOWDI” (pronounced “tim-toady”). It’s an acronym for “there is more than one way to do it,” and software development may be unique in that for any given task, this holds true.

More >

Completely Correct DRY Simplicity

This is the first in (what may be a series) of posts where I’ll share some concepts, or mantras, that I’ve found helpful in my experiences with software development.
The following are some of the lowest hanging fruit. These should be (but aren’t necessarily) common sense for all software developers:

More >

How to fix the wifi on a HP Mini 110 Netbook running Ubuntu 9.10 (Karmic Koala)

Installing Karmic Koala from a USB drive proved to be a bit less than effortless. First off the http and ftp servers for the netbook-reloaded ISO images were really slow, and for some odd reason there aren’t any bittorrent links for the netbook-reloaded image. You need to go to http://releases.ubuntu.com/9.10/ to find the .torrent link (which is here).

The installation instructions need some editing, too, but the jist is if you’ve got a linux box, use usb-creator — and don’t panic when the usb-creator main window disappears (and doesn’t get replaced with a progress window for several minutes).

So the main glitch was wireless — it didn’t work out of the box on my HP 110 netbook.

More >

Speed up Firefox!

My Firefox on Mac was getting pretty lethargic — almost a minute to spin up, and multiple seconds to just open a new tab. I installed the new beta of Google Chrome, and remembered how nice a speedy browser was.

Google Chrome for Mac is a nice first effort, but without custom search engines, and all the other firefox add-ons, the shininess gets pretty tarnished. I needed my fast firefox back!

I made just a couple changes, though, and my Firefox is back to it’s prior speedy self!

More >

How to bounce an application with Applescript

Say, for whatever reason, you want to bounce iphoto once an hour. You can do that with AppleScript and cron.

More >

Macports fails to compile p5-perlmagick

If you need PerlMagick on a Mac, there was (and still is) a p5-perlmagick package. If you try to install that package now, you’ll find it doesn’t compile (!!). You don’t have to resort to compiling from source, though.

More >

How to fix your ubuntu 9.10 console

After upgrading my server (that isn’t running X) to Ubuntu 9.10 (Karmic Koala), I found that the console on my LCD monitor was cropping out several characters from the left and right sides. It wasn’t hard to fix, though, given the magick incantations:

More >