I was talking to an old friend today about a variety of things, but programming came up because we’re both programmers and I talk about this stuff way too much.

Over the course of this conversation he laments, “Programming is too complex nowadays.”

It was a funny thing to say because as I thought about it, all I could respond with was, “Software is complex because software is complex.”

That’s just it and it all struck me as very funny. Software is complex. It’s difficult to do correctly. It requires skill and discipline and continuing education like many of other professional skill-based fields.

One of the best and worst things about software is that the barrier to entry pretty low—and probably lower now than it’s ever been. You can very quickly learn some basics, tinker around, and get things automated. In fact, you’ll be chasing the proverbial dragon from that point on if you love it.

Producing a result is not the hard part of programming though. You can build some neat stuff with just a bootcamp. You can pick up one of many, many books and tinker around and learn quite a bit on your nights and weekends and hack out a little something to scratch an itch. While both of these ends are amazing, they’re the but beginning.

Imagine fixing your toilet with the help of a YouTube video and then deciding you were qualified to be a plumber. You might decide you want to pursue that and learn that trade, but a couple DIY repairs and maybe replacing your own shower head does not make you even remotely qualified to be a plumber. Plumbing is complex! So is framing. So is commercial and residential electrical.

I’ve been following Ed Zitron for a while, ever since I found him by way of Penny Arcade1. I’m not much for the podcasts and such, but I really enjoy his writing and style. Among several of his brilliant pieces is The Case Against Generative AI. It’s a very long article (over 18K words) but in it there was a single statement that really stuck out:

The problem is that most jobs are not output-driven at all, and what we’re buying from a human being is a person’s ability to think.

This is the case with software. It’s very easy to think of code as the output that’s the measure of a programmer. That, however, is not the case at all. Yes, we code. Yes, we build things. However, if outputs were all you needed then you could go purchase the software you need. No one is hiring me to build another spreadsheet app for obvious reasons.

When you need programmers, you need to build something you cannot buy and software is never a finished product because it is the nature of the whole industry to change. That means you need both builders and maintainers. You also need people who can help you integrate it, understand it, and convert your abstractions into something that works. If you plan to connect this to any network, you probably need someone who understands a variety of security implications to protect you and your users.

Software is, after all, complex.

Just as with trades. You’re not paying a plumber just to fix a leak or install a water heater. You’re not paying a framer just to put up some walls. You’re not paying an electrician to run some wires. You’re paying them to understand all of the dangers and consequences of their work. You’re paying them to make sure you don’t end up with a flood, a fire, or a room collapsing.

Just out of curiosity, how many of you would trust generative AI to handle your household electrical or plumbing? How about the blueprints for your house?

I’m actually in the weird position of feeling a little bit sorry for attorneys because that industry might be the only one set to drown deeper in LLM generated garbage than my own. Would you trust a brief assembled by AI coming from a criminal defense attorney? Are summaries a good idea at all when combing through legal documents?

So yeah, it’s complex. That’s what people are for. It’s never just a login page.

  1. I am totally dating myself, but I’ve read this comic since shortly after its original publication. I feel just a little bit like I’ve grown up in the same orbit as these guys.