All I read, write, stream and record on software engineering, delivered fortnightly to your inbox. Sign up here!
Support SICPers on Patreon!Support SICPers on Patreon!
OOP the Easy WayObject-Oriented Programming the Easy Way: a manifesto for reclaiming OOP from three decades of confusion and needless complexity.
Author Archives: Graham
I just finished recording episode 35 of [objc retain]; the stream on Objective-C programming with Free Software that I co-host with Steven Baker. It is available on Twitch and you can subscribe there to get notified about new episodes. It … Continue reading
There’s a trope in the Apple-using technologist world that when an Apple innovation doesn’t immediately succeed, they abandon it. It’s not entirely true, let’s see what actually happens. The quote in the above-linked item that supports the claim: “Apple has … Continue reading
Another recent issue in the world of “centralised open source dependency repositories were a bad idea” initiated by the central contradiction of free software. People want to both give everything away without limitation on who uses it or how, and … Continue reading
When I wrote I have some small idea of what I’m doing, it was on the basis that DHH was engaging in some exaggeration. Surely software engineers, whose job depends on what they know and what they can learn, would … Continue reading
By far the post on this blog that gains the most long-term interest and attention is why inheritance never made any sense. In this post, I explain that there are three different ways to think about inheritance—ontological inheritance (this sort … Continue reading
I feel partly to blame for the current minor internet shitstorm. But first, some scene-setting. There have long been associations between the programmer community and particular subcultures, some of which have become—not monocultural—at least dominant cultures within the world of … Continue reading
Having benefited from the imagined history of Object-Oriented Programming, it’s time to turn our flawed retelling toolset to Agile. This history is as inaccurate and biased as it is illuminating. In the beginning, there was no software. This was considered … Continue reading
The idea of a second brain really hit home. Steven and I were doing some refactoring of some code in our Amiga podcast last night, and every time we moved something between files we had to remember which header files … Continue reading
LaTeX (and TeX, for that matter), syntax is relatively consistent, and uses a lot of backslashes. Bourne shell syntax is somewhat inconsistent, and also uses backslashes. Regular expression syntax I seem almost perversely disinclined to remember, and definitely sometimes often … Continue reading