-

The Coming Age of Understanding
Senior software developers face pressure to rely on AI for coding, risking the erosion of vital programming skills. While AI can generate code,…
-

The End of the Infinite Internet
The AI industry’s scaling strategy has two hidden assumptions: that useful human information is effectively infinite, and that producing information faster is equivalent…
-

The Illusion of Productivity
The article discusses the placebo effect of AI adoption, highlighting behavioral changes rather than genuine productivity improvements in organizations.
-

Desire Paths and the Myth of the Imaginary User
Most users will never fully learn your system, read your documentation, or internalize your intended workflow. They will instead discover whatever path minimizes…
-

Healthy Systems Have Empty Queues
There is something deeply satisfying about a system that simply answers immediately. You click a button, something happens.You ask for data, it gives…
-

The Shape of Growing Systems
Software systems continuously evolve and absorb new requirements, which can lead to chaotic behavior (entropy). To maintain coherence, intentional design, containment strategies, and…
-

The Coming Dark Age of Programming
There is a quiet shift happening in programming. It’s the subtle thinning of craftsmanship. Tools are more powerful than ever, the barriers to…
-

Spreadsheets and LLMs: from Prototyping to Archaeology
Spreadsheets are among the most productive tools ever created. You can take a vague idea, and within minutes have something that resembles a…
-

The Illusion of Concurrency
For the past two decades, the software industry has been marching in two directions at the same time. Hardware gravitated toward parallelism. We hit…
-

Planning: Mandatory
Planning is the deliberate act of deciding what matters, what comes first, and what can wait. Most failed software projects do not fail…
-

What Happened to Flowcharts?
Flowcharts matter now more than ever before.
-

All Roads Lead to Latency: The Microservices Illusion
Microservices are often presented as an inevitable evolution of software architecture. The rationale goes something like this: once your codebase reaches a certain…
-

The Illusion of Intelligence at the Cutting Edge
Artificial intelligence, particularly large language models (LLMs), is routinely described as cutting edge technology. The term is used so often that it has almost…
-

Memories
There was a time when software respected the machine it ran on. Developers measured memory in kilobytes, not because they were nostalgic minimalists,…
-

Swipe to Skip Learning
For aspiring developers and juniors entering the field, this moment in time is pivotal. You’re being told you can build apps faster than…
-

Swipe for Technical Debt
AI coding tools are spreading through software companies faster than any previous technology. Startups are embracing them for “productivity”, teams are embedding them…
-

Software project management method obituaries considered harmful
I’ve noticed a recent increase in project management method “obituaries” – Agile is dead, waterfall is dead, scrum is dead. I believe this…
-

End of File
Since the dawn of modern computing, files have been an integral concept in organizing and storing data. Today each device keeps internally track…
-

A Monolith, Perhaps?
In the context of this article, the word “monolith” is used to represent monolithic development: a software or environment that lives in one…
-

Just some pointers
The book “Machine Code for Beginners” (by Usborne, 1983) likened computer memory to a shelf or a cabinet with lots of tiny little…
-

The Information Problem
There’s a lot of information available for software developers. On one frequently updated list of free programming books on GitHub, there are several…
-

The Three-Axis Problem
Generation X, Gen-Y (or millennials), Gen-Z. These are terms we use in everyday language to categorize the last three generations that form the…
-

What is Software Salvage
Summary This article describes the method for software rewrites when the original source code is unavailable – or unstable, of questionable quality or…
-

Numeric Value of (nothing) Is Zero
Background Part of what I do is software salvage. I’ve had the joy of working on bringing life back to abandoned codebases, extend…
-

Transference of Complexity
Summary Programming languages have evolved in accessibility, complexity and readability in the past six decades. The overall internal complexity of a single software…
-
Google site-kit plugin for WordPress update mayhem
I recently did a blanket update for all plug-ins for a WordPress site (good idea security-wise, bad idea, turns out, otherwise). This revealed…
-
Compiling Pixar’s USD natively on Windows 11 / VS 2022
If you’ve tried it, you’ve probably run into the endless catch-22 that is getting everything to behave when trying to compile the Universal…
-
Out of the Box Software site is up
The completely-renewed OOTB site is now up. You can find it either by clicking on a link in the sidebar (statement that might…
-
Gitlab-runner, MacOS 12
If you’ve tried setting up a gitlab-runner on MacOS 12 you may have run into the same problem I did – even when…
-
Totally Arcade Controller
With the A500 Mini finally out, it revealed a screaming void no one seems to be filling: a proper controller. Almost everyone I…
