🔥 Due to burnout I am currently on sick leave, so expect fewer blog posts and less activity on GitHub.

Thoughts on using LLMs for programming

March 31, 2025 3 minute read

The latest craziness in the world of coding that I’ve been exposed to via social media lately is the idea of vibe coding.

The idea is very simple: instead of primarily writing code yourself, you rely on an LLM to do the coding for you, and you refine the generated code as needed, or you let the LLM refine the code for you.

This blog post will be fairly short, so let me get to the point.

Personal observations

Due to various restrictions related to what an LLM may be knowledgeable about, this seems like a bad idea. Here’s a few things I’ve noticed when I have been using various LLMs for coding (I do not like to use the word AI, can you tell?):

  • API and documentation information can be outdated. With the new release of a newer version of Tailwind, ChatGPT turned out to be virtually useless when I tried to find out how to migrate some sites I’ve made in the past.
  • Lacking flexibility. It is common for the output to remain too focused on a particular approach or solution, no matter how much I adjust my prompt.
  • Incorrect information. I often need to verify that things are actually correct.

Let me be blunt: an LLM is certainly a useful tool that you can use and depend upon as you try to explore particular approaches and alternatives.

But LLMs are not exactly as reliable as we’d like them to be. An LLM turns out to be great for exploring and broadening the bounds of your own knowledge, assuming you can verify that the generated output is actually correct.

Atrophy

I also want to emphasize that unused muscles will atrophy when not used, and the same applies to skills. Doing some of what could be described as “raw” coding, is probably still the best way to remain a good developer.

I’ve noticed this code ability atrophy in action in my own life over the last couple of years, as my motivation for programming tanked, and with the arrival of LLMs I feel like I’ve only gotten more lazy. Lazy is not good. Lazy is bad.

Like going to the gym, I think there’s value in doing the hard work by actually thinking through things and training our brain, in order to remain sharp.

We should be smart enough to know this. There are no shortcuts in life.

Next generation of coders

I’ve also heard from other people that younger developers who have never worked without LLM assistance, tend to do worse, and often don’t know what they are doing.

As developers, we should encourage at least some self-sufficiency in terms of coding skills. Go read the docs. Go check out the API docs. Don’t just… assume you can get everything answered.

Slave to the machine

I think this is just scratching the surface.

Just ask some healthcare workers what they are seeing. Mental health experts are seeing folks addicted to the their phones, which have become increasingly important in our lives. More people are depressed than ever, not leaving their homes. Our society is not doing well.

I definitely blame the technological innovation: personal connection is more difficult than ever, so people just remain inside, passive, scrolling their feeds. Not everyone is affected, but it’s happening to more people every year.

Our bodies will adapt if we choose a lazy, sedentary, non-thinking lifestyle where no thought is needed at all.

People become more zombie-like as they scroll through social media, we don’t need critical thought, our image and text generators will do the work instead.

This way we are closer than ever to becoming slaves to our machines, if we aren’t already there.

Tagged as: Programming