Introduction We can’t just throw code together until it appears to work; we must concern ourselves with the structure of code. Paradoxically,
The Programmer’s Guide to Hating AI – Part 5: The Absurdity of “Coding Assistants”
Introduction The virtue of formal texts is that their manipulations, in order to be legitimate, need to satisfy only a few simple
The Programmer’s Guide to Hating AI – Part 4: A Brief History of “Coding Is Dead”
Introduction Those who do not know history are doomed to repeat it. In the previous parts of this series I have been
The Programmer’s Guide to Hating AI – Part 3: No One Believes in the Revolution
Introduction In the last part, I went through the evidence, or rather total lack thereof, of any revolutionary productivity boost that AI
The Programmer’s Guide to Hating AI – Part 2: There Is No Revolution
Introduction In the last part, I explained what my position on AI is: it’s not “so good it’s bad”, it’s just bad,
The Programmer’s Guide to Hating AI – Part 1: What Being Anti-AI Means
Introduction There has been a lot of “anti-AI” commentary over the last few years, but I have been surprised how much of
The Immutability Fad
Introduction The programming community goes through fads regularly, and they start repeating after a while. It’s very similar to the fashion industry,
On Protocol Witnesses
Introduction So, it’s just a normal day at work, you’re writing some Swift code, and the need arises to model an abstract
Testing Async Code
Introduction By now, pretty much every major modern OOP language has gained async/await. Java is the odd man out (they have a
On Code Readability
Introduction I have many times encountered the statement from developers that “90% of time is spent reading code”, and therefore readability is
What Should Your Entities Be?
Introduction So, you’re writing an application in an object-oriented programming language, and you need to work with data in a relational database.
On ReactiveX – Part IV
In the previous parts, first we tried to write a simple app with pure Rx concepts and were consumed by demons, then
On ReactiveX – Part III
Introduction In the last part, we took a knife to Rx’s one-size-fits-all “Observable” abstraction, and carved out four distinct abstractions, each with
On ReactiveX – Part II
In the last part, we explored the bizarre world of extreme observer-dependence that gets created in an ReactiveX (Rx)-driven app, and how
On ReactiveX – Part I
If a tree falls in the forest and no one hears it, does it make a sound? The ReactiveX libraries have finally
REST SchmEST
On almost every project I’ve worked on, everyone has been telling themselves the web services are RESTful services. Most of them don’t