Author Archives: Graham

About Graham

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

The Vexing Problems in Programming

I admit it, I’ve been on the internet for quite a while (I could tell you that my ICQ number is 95941970, but I haven’t logged in for years) and my habits haven’t changed. I still regularly get technology news … Continue reading →

Posted in Business, economics, Responsibility | 2 Comments

Withholding the Four Freedoms

Having downsized my rather over-enthusiastic computer collection (thanks, eBay!), I was down to one computer. Unfortunately, as a rather long in the tooth MacBook Air, it’s no longer suited to my needs and neither is it upgradeable. I got all … Continue reading →

Posted in freesoftware, GNU, UI | Leave a comment

I didn’t study computer science at school or university, and still manage to work as a programmer. That is not to say that I don’t need to know some things that are taught on computer science courses. Just this week … Continue reading →

Posted on by Graham | Leave a comment

Something old, something new

Sometimes, what you want out of a software system is something unexciting. Something proven to work, that’s well-understood, and has had all of the kinks smoothed out over years (or even decades) of refinement. Of course, what you get when … Continue reading →

Posted in Uncategorized | Leave a comment

Dogmatic paradigmatism

First, you put all of your faith in structured programming, and you got burned. You found it hard to associate the operations in your software with the data upon which they act, and to make sure that the expectations made … Continue reading →

Posted in advancement of the self, FP, OOP, philosophy after a fashion, software-engineering | 1 Comment

Apple’s Best Programming Language

My talk at App Builders 2016 was on Apple’s best programming language. Spoiler alert: it’s Dylan. Or is it? I chose a few properties one might wish to find in programming languages, then demonstrated how these were all present in … Continue reading →

Posted in code-level, Uncategorized | 1 Comment

On immutable data structures…?

If you write a scholarly publication and cite another one, what you say about it depends on its mutability. An article or a book can be cited by saying “this publication I’m identifying here says this”. Maybe you have to … Continue reading →

Posted in academia, architecture of sorts | Leave a comment

In which I interview so you don’t have to

Describing job interviews for technical roles in the software industry to people who have left or have always been outside the software industry requires two things: patience on the part of the one doing the describing, and the ability for … Continue reading →

Posted in advancement of the self, Business | 1 Comment

Turn it off and back on again

I’m now six months into what I expected to be about a year out of working in technology, and I’m starting to think about what comes next and trying to make it happen. The difficulty I have is that it’s … Continue reading →

Posted in advancement of the self, whatevs | 2 Comments

New book: APPosite Concerns

Back when I published APPropriate Behaviour, I expected it to be the first in a trilogy. Today, the second part, APPosite Concerns, is available. APPosite Concerns is a compendium of posts from this blog, going back over the current decade. … Continue reading →

Posted in books | Leave a comment