Stephen Freeman Rotating Header Image

February, 2006:

Disk Crash!

If I owe anyone a response, please drop me a reminder since I’ve finally suffered a disk crash and, of course, my backups are a bit out of date. The horse having bolted, I’ve been rushing around buying Firewire disks and that sort of thing.

The thing that really took up time was the effort to recover something from the disk. As John Cleese’s character said in the film Clockwise: the worst thing is hope, once that’s gone it’s not so bad.

Apple support has been good, once pushed, except that I can’t find a copy of the relevant version of Keynote to download. I might have to buy another copy, which is a bit rough. If I’d used Powerpoint, at least I’d be able to work with “NeoOffice”:http://www.neooffice.org/

And I’m so pleased I use IMAP for email.

Pencil marks and comments

I’ve had this one on the back burner for ages because I thought it was too obscure to post, but now Robert Chatley has “written up”:http://chatley.com/blog/2006/02/on-another-note.html a conversation we had when we bumped into each other at an orchestra rehearsal. Thanks Robert.

I was moaning (my core competence) about my sheet music which had been covered to the point of illegibility in pencil marks, most of which just emphasised what was already in the music. From the earliest lessons, instrumentalists are taught to mark their music in pencil with the everything their teacher or conductor tells them, so they won’t forget in performance. For years, I carried 2B pencils everywhere to make sure I captured every last nuance. Then one day at music college, a tutor brought in the some sheet music from the New York Philharmonic’s library, it might even have dated back to Mahler. They were clean! An occasional note that one conductor liked to do something unusual here, but that was it. Of course! The music’s already there, just play what it says. My consumption of pencil lead dropped immediately.

The (kinda) relevant point is that this music was used by masters who knew what they were doing and didn’t need to remind themselves all the time. Trainees and students are taught to mark up the parts because they don’t know what they’re doing. In software school, we’re taught to comment everything so we don’t forget what we did. In neither case, does anyone teach you when to grow up and stop commenting. I’m sure there are parallels in other disciplines.

Thinking further, much of what really great code I’ve seen has had very little commentary, just the occasional hint when something unusual is happening. The rest has been obvious to anyone who was skilled enough and understood the domain.

The tyranny of the day

For the last month or so, I’ve been “teaching”:http://www.cs.ucl.ac.uk/teaching/syllabus/mscsse/gs04.htm rather than working on a development team. I’m glad I did it, and now I’m glad that at least the lectures are over.

One surprise, though, was how nice it was to have control over my time again. I put in a lot of hours to get ready, but I only had to show up for three labs a week. This meant that I could do things like pick my son up from school and sit him through his homework, which was important since he was taking an exam. I could spend an evening with the family and then go upstairs and do a late shift while everyone else slept. My wife has also been pleased with the extra shopping and cooking that’s been happening since my life has become more flexible than hers.

Like many geeks, I believe I have a night peak in effectiveness up to about 2:00 in the morning (and the lateness also helped me keep in touch with my friends at “igen”:http://www.igencorp.com/igencorp/ in the US over some work we’ve been doing together). At one point, when my family was away, I got into a regime where I just floated between working and sleeping, whichever seemed most appropriate at the time, no distractions. “Twyla Tharp”:http://www.amazon.com/gp/product/0743235274/ calls this “The Bubble” and _for short periods of time_ it’s very productive and quite a buzz.

Contrast this with XP, which says that you have to be with the team. Now, XP is absolutely my favourite methodology but its benefits don’t come for free. You have to give things up for the group, like the right to crash in the afternoon and work late instead. I don’t feel it aligns well with my metabolism but the benefits of working on a integrated team that can deliver without fuss are overwhelming, so I’m prepared to conform.

So, unless I find a team of other nightbirds who live near enough to my house for me to pop over after hours, perhaps doing side projects like this is a good way to inject some variety and stay fresh.

Smalltalk cascades

Jay Fields writes about “using chaining for object initialisation”:http://jayfields.blogspot.com/2006/02/initialization-chain.html.

One of the inspirations for the “fluent interface”:http://www.martinfowler.com/bliki/FluentInterface.html style in jMock was a Smalltalk construct called _cascade_, which sends multiple message to the same object.

aThing one: 'one';
  two: 'two';
  other.

I just got fed up having to redeclare the same object

thing.setOne("one");
thing.setTwo("two);

Thought for the day

Charles Petzold “wrote”:http://www.charlespetzold.com/etc/DoesVisualStudioRotTheMind.html

bq. just the other day I caught myself wondering who will clean out my Inbox after I’m dead.

C**p marketing message from Apple

I turn off image lookup in my mail reader because I don’t want to give those spam b******s any more clues than I have to. I’m using the standard Mail.app that comes with OS/X.

Here’s the friendly text/plain message from Apple marketing:

bq. You appear to be using an email application that won’t properly display the graphical (or HTML) version of our email.

bq. Because we want you to enjoy reading the email, we recommend that you visit the following web page where it has been posted : http://email.euro.apple.com/[…]

Which says to me that they think their message is so weak that it won’t be convincing without wasting lots of my bandwidth, they don’t understand the tools they sell, and they don’t know what’s going on on the internet.


I’ve decided to start a new category of minor rants against the inanities of a cruel and unjust world. That sort of thing…