







In his classic Programming Perl — affectionately known to a generation of technologists as "the Camel Book" — Larry Wall famously wrote of the three virtues of a programmer as laziness, impatience, and hubris: If we’re going to talk about good software design, we have to talk about Laziness, Impatience, and Hubris, the basis of good software design. We’ve all fallen into the trap of using cut-and-paste when we should have defined a higher-level abstraction, if only just a loop or subroutine. To be sure, some folks have gone to the opposite extreme of defining ever-growing mounds of higher level abstractions when they should have used cut-and-paste. Generally, though, most of us need to think about using more abstraction rather than less.
Laziness, Impatience, and Hubris · Adam Jacob
How Larry Wall's virtues of a Perl programmer inspire me in this era of engineering

Tinkered Thinking
Daily, snackable writings to spur changes in thinking.Building a blueprint for a better brain by tinkering with the code.
A quote from Andrew Quinn
One could say in the first quarter-century of my life, that while I was always fascinated by programming, I could never overcome the guilt of not really knowing whether the …
Tiling Is the Missing Abstraction in Graphics Programming
A software engineer’s playbook for tiling: scheduling, threadgroups, and the small decisions that make performance predictable.

Motivating Adult Learners by Introducing Programming Concepts with Scratch
Novice programmers usually fail to combine abstract concepts and knowledge into program design, even though they know the syntax and semantics of individual statement. Adult novice programmers with little computer background knowledge might face more ...

Its Time for a New Programming Language
Today, when compared to any other point in programming history, we find ourselves spoiled for choice when it comes to programming…


The Optimization Trap: Why Too Much Efficiency Makes Us Fragile with Olivier Hamant
Small Programming Tricks
A lot of effective engineering comes from the accumulation of small nuggets of knowledge.
The Software We Haven’t Invented Yet, discussion and dinner hosted by Boxd and BlueYard · Luma
If this is such a big moment for software, why are we mostly imagining faster versions of what we already do? Better coding tools are the obvious part. The…

Slim Lim: "Concrete syntax matters, actually"
Laziness Does Not Exist
Psychological research is clear: when people procrastinate, there's usually a good reason

Understanding is the new bottleneck
Agents can write code faster than we can absorb it. Here's why it still matters for humans to understand what they build — and some techniques for doing that efficiently: explainer docs, quizzes, micro-worlds, and shared spaces.

Understanding is the new bottleneck
Agents can write code faster than we can absorb it. Here's why it still matters for humans to understand what they build — and some techniques for doing that efficiently: explainer docs, quizzes, micro-worlds, and shared spaces.

Understanding is the new bottleneck
Agents can write code faster than we can absorb it. Here's why it still matters for humans to understand what they build — and some techniques for doing that efficiently: explainer docs, quizzes, micro-worlds, and shared spaces.

Modeling Software With Quint - Zicklag's Leaflets
I believe having good abstractions is key to writing good code. But as a coder, I often write code in an effort to find those abstractions…