Matthew Sewell

Matthew Sewell

I’ve agonized over this for years…literally.

April 1, 2024

It’s not that I don’t have anything to say. I might even have some useful things to say. The problem is that I’m a software engineer faced with a fun project with no limits. That’s dangerous. In addition to having no deadline, there are hundreds of ways to do it and they all suck.

There are so many ways to create a blog and so many trade-offs. In the end, I suffered from analysis paralysis.

The aphorism, “perfect is the enemy of good”, is entirely correct. So, here it is. It’s imperfect and that’s good.

What I want to say is that software development is the process of not knowing. If I had settled on the idea that I actually knew how to do anything, I’d be stuck in the past. That’s the nature of knowing and not knowing.

The work that I do today has little resemblance to the work I was doing 20 years ago. It’s not just my skill level or even the technologies. It’s the ideologies and norms around things like obtrusive vs. unobtrusive javascript or best practices around security.

Today, a lot of my work involves prompt engineering. Only five years ago, I don’t think I’d ever heard the term.

So, what is the right way to approach a software project or a blog? The right way to start is to start small with an open mind and make corrections as your understanding expands. If there is one thing I’ve learned from decades of software experience, it’s that I haven’t learned enough and that only a fool knows anything for certain.