The Programmer's Paradox

Blog URL:
Blog Tags:prgramming, software, software development, computers, users, algorithms, internet, developers, technology

In depth discussions of programming and software development issues.

Latest Blog Posts


on Feb 29, 2024

Major points:Coding is always slowCoding produces both code & bugsThe code always needs to be edited, the first version is just roughed in.Do not use disposable code in industrial strength projects.The primary goal is to produce a minimal amount...

Self-Inflicted Pain

on Feb 22, 2024

The difference between regular programmers and 10x programmers is not typing speed. In some cases, it is not even knowledge.It is that 10x programmers are aware of and strongly avoid self-inflicted injuries while coding.That is, they tend to avoid sh...

Naming is hard. Very hard. Possibly the hardest part about building software. And it only gets harder as the size of the codebase grows, since there are far more naming collisions. Code scales very, very badly. Do not make it worse than it has to be.

Given a large problem, we start by breaking it down into smaller, more manageable pieces. We can then solve all of the smaller problems and combine them back together to solve the original problem.The hiccup is that not all decompositions are created...


on Feb 1, 2024

“Calling something an anti-pattern is an anti-pattern.”There are lots of ways to accomplish things with software. Some of them are better than others. But the connotation for the term ‘anti-pattern’ is that the thing you are doing is wrong, w...


on Jan 25, 2024

When I discuss software issues, I often use the term ‘context’. I’ll see if I can define my usage a little more precisely.In software programs we talk about state. The setting of a boolean variable is its state. There are only two states. For v...

Buy vs Build

on Jan 18, 2024

When I was young, at the end of the 80s, the buy vs. build question was straightforward.In those days, for the emerging smaller hardware, there was not a lot of software available. It was slow and expensive to build anything. For any non-software com...