Coding is My Superpower
- Published
- April 19, 2026 at 9:50 AM
- Author
- Mark
- Topic
- other
When I'm faced with a problem, I code. Some might ask why I don't just use a CMS—WordPress, Drupal, whatever the trend is. The answer is simple: coding gives me something I can't get anywhere else: complete visibility and control. When I try to achieve the same goal using a CMS, I lose something fundamental about how I work.
What Coding Actually Gives Me
Coding is powerful because it hands me tools to understand what's happening:
Using a debugger / breakpoint — I can pause execution and inspect the exact state of my system
Logging things / dd — I can trace what's flowing through my code
Search — I can find where a value is used, where a function is called, how things connect
Commit history — I can see exactly what changed, when, and why
Code comments — I can document intent, not just what the code does
REPL — I can test ideas in real time
These aren't just conveniences. They're how I reason about problems.
Using a CMS is Not Programming
It's not just that I lose my tools. The fundamental problem is deeper.
A CMS's behavior is the summation of:
What content, fields, relationships, and taxonomies are created
Site settings
Plugins
Themes
Many of these are data, not code. The code branches based on data, which creates a cascade of problems:
As developers know, complex branching is a major source of bugs
Data changes are never committed — you can't pinpoint which change caused a bug or revert it
Even if you identify the problematic data, the next question becomes "which piece of code depends on this data?" The answer usually requires understanding the CMS internals or plugin architecture, which defeats the purpose of using them in the first place
The "Don't Reinvent the Wheel" Fallacy
When programmers talk about using libraries and building on abstraction, they're assembling a pipeline of black boxes. Each library solves one part of the problem. Building a booking page, you might use:
A date picker component
A date format parser and validator
An ICS library for email generation
But plugins aren't built this way. Each plugin is a complete, end-to-end solution because they're products being sold. Nobody buys a plugin that solves half their problem. So you find a single plugin handling everything—the widget, the endpoint, the email—and it exposes as much configuration as possible to compensate.
That's why it's called a plugin marketplace. Everyone is selling a product, claiming it does everything you need, promising it's the easiest to set up. I'm not here for shopping. I'm here for building.
It Feels Like Retailing
A retailer sources from a wholesaler, adds some value, and sells to customers. A CMS developer buys plugins and themes, glues them into a site, configures them, and sells it to a client. Visit any website development agency, and you'll see pricing based on preset feature lists containing things you don't need or don't even understand.
I don't sell products. I sell my skill. I solve problems.
When I code, I own every part of what I've built. I can debug it, improve it, adapt it to the actual problem instead of forcing the problem to fit the solution. That's the difference between being a developer and being a technology retailer. That's why coding will always be my superpower.