Author Archives: Graham

About Graham

I make it faster and easier for you to create high-quality code.

The lighter side of open source

In a recent post I talked about the apolitical, amoral nature of open source software and how it puts the interests of a small programming class before the interests of the broad collection of people who interact with programmers’ output. … Continue reading

Posted in Business, economics | Leave a comment

I use mocks and I’m happy with that

Both Kent Beck and Martin Fowler have said that they don’t use mock objects in their test-driven development. I do. I use them mostly for the sense described first in my BNR blog post on Mock Objects, namely to stand … Continue reading

Posted in code-level, OOP, TDD, TDiOSD | 1 Comment

One meeellleeon

A teacher recently asked her computing class if there was any question they would like to ask me. One of the students came up with a question: how could they make a million pounds? I think my answer would be … Continue reading

Posted in edjercashun | Comments Off on One meeellleeon

Open Source and the Lehrer-von Braun defence

Tom Lehrer’s song about Wernher von Braun is of a man who should not be described as hypocritical: Say rather that he’s apolitical. “Once the rockets go up, who cares where they come down? That’s not my department,” says Wernher … Continue reading

Posted in philosophy after a fashion, Responsibility | Leave a comment

It’s just like English

Fans of the RSpec tool for writing tests will be familiar with its English-like(fn1) syntax for describing tests, which looks like this. describe StrawMan do context “when interpreting a test in RSpec” do it “is written in plain English” do … Continue reading

Posted in nearly linguistics | Comments Off on It’s just like English

Code longevity

I recently wrote about the impending centenary of applied computing; a time when we could reflect on the first hundred years to make it easier for people to progress beyond our position into the second hundred years. This necessitates looking … Continue reading

Posted in code-level, economics, software-engineering | Comments Off on Code longevity

Preparing for Computing’s Big One-Oh-Oh

However you slice the pie, we’re between two and three decades away from the centenary celebration for applied computing (which is of course significantly after theoretical or hypothetical advances made by the likes of Lovelace, Turing and others). You might … Continue reading

Posted in academia, advancement of the self, books, learning, Responsibility, software-engineering, tool-support | Comments Off on Preparing for Computing’s Big One-Oh-Oh

Intuitive is the Enemy of Good

In the previous instalment, I discussed an interview in which Alan Kay maligned growth-restricted user interfaces. Here’s the quote again: There is the desire of a consumer society to have no learning curves. This tends to result in very dumbed-down … Continue reading

Posted in iPad, iPhone, learning, tool-support, UI | 1 Comment

How much programming language is enough?

Many programmers have opinions on programming languages. Maybe, if I present an opinion on programming languages, I can pass off as a programmer. An old debate in psychology and anthropology is that of nature vs nurture, the discussion over which … Continue reading

Posted in code-level, nearly linguistics, tool-support | Leave a comment

On too much and too little

In the following text, remember that words like me or I are to be construed in the broadest possible terms. It’s easy to be comfortable with my current level of knowledge. Or perhaps it’s not the value, but the derivative … Continue reading

Posted in advancement of the self, architecture of sorts, OOP, software-engineering, tool-support | Leave a comment