Mackie Underdown

Detroit-based software engineer and musician
← back

I'm so tired

I have a two-year-old son who gets up between 5-6am every day, but that’s not why I’m tired. It’s AI.

Earlier this week I posted this joke tweet. I’ve been looking at my phone way too much this holiday season, and it’s gotten me deep into my own head.

My Twitter For You algorithm grows more insane by the week, but as a professional software engineer, it does keep me well informed about modern software engineering projects and tools. I love it for learning new things in software: a TUI library I want to use for a TUI framework I’m excited about, an incredible resource about shaders, or an example of how someone else built an API with my favorite TypeScript library.

On Christmas Eve, I read that Claude announced their paid plans would allow for 2x usage through New Years Eve so that people could spend their Christmas to New Year’s downtime creating new software. Since Christmas, I’ve taken notice of my For You tab showing engineers shipping developer tools, SaaS products, and more built by AI. I imagine other engineers see these sorts of tweets and get inspired to go build something, but this week, it’s making me feel hopeless.

One faction of software engineers believes planning and writing code by hand is the fun part of being a software engineer. There is a craftsmanship in software engineering in the same way woodworking and other trades think about craftsmanship. While it’s different from a physical trade, the importance of process, choice of tools, and attention to detail are shared amongst tradespeople and software engineers. I like to think that I’m in this group and that it’s helped me have success in my career.

This week has shown me there’s another camp of people who think typing code is the worst part. They view AI as the tool that can synthesize their thoughts and write code on their behalf. For them, it’s the perfect combination: by typing or speaking their thoughts, AI produces their desired end.

In a capitalist society, one primary end is profit, and having Claude pump out a monthly subscription SaaS for trivial income doesn’t sit right with me. I view money as a necessary evil - while I’m grateful to be in a field that supports my family and lifestyle, it has shown me my own greed that’s made me uncomfortable with myself on occasion. I’m thankful for my wife’s natural generosity, which has helped connect me to my own generous spirit that the tech industry and capitalism as a whole discourage.

And as someone who struggles with a false identity of “I am what I produce,” using AI as a means to creating web apps disconnects me from myself. I become the channeler of SaaS products by way of AI prompts and end up having an existential crisis looking at people’s AI-built products on Twitter.

While I don’t like AI for various reasons, I would be lying if I said I never use it. The tech industry is pushing it harder and harder on their engineers or even requiring it. I do fear that by not being informed about AI tooling that I will enter my late thirties and early forties and become irrelevant in the field, and this fear drives me to use it with more and more regularity.

As of the end of 2025, if I’m not spelling out what I want AI to do in my codebase with clear details, it rarely does what I want. And even when I provide more context, it will make things up. In those situations, I’m better off not using the tool at all, and upon further reflection, I feel like I unconsciously bought the AI sales pitch that the latest, smartest model will do the work for me. I relate to information found in a couple of studies that while outputs can be of higher quality by using AI, I learn less and think less.

The one use case I’ve found that works well is asking it to search through a whole codebase in a local directory on my computer. That’s how I’ve used it to fill in the gaps for my knowledge of the Effect TypeScript library where its documentation website might be lacking the information I want. In that regard, it’s been a great research tool, saving me countless hours of trying to read and understand a huge codebase. But when the AI chat conversation ends and I have my answers, I remember the numerous negative impacts of AI on the environment and feel uneasy contributing to the problem.

I have a few days until I go back to work and re-experience the day-to-day of AI in the software engineering workplace, and I’ve never felt less rested after an end-of-year holiday break.