The End of the Beginning
I wrote the last post as I was getting ready to ship the new design. I ran into a devil of a problem that I would be entirely remiss if I didn’t mention it here.
As I was going through the pages in the site with Hugo server running locally, I noticed that there was one slight problem with a couple of pages on the site. In light mode, the background was white. The rest of the site had a nicely warm off-white background that I found lovely. My first blog post, and the “About” page, broke the style - the background was pure white. ‘#FFFFFF’ in HTML/CSS color code. This must not be!
What was I to do? Here I am, vibe coding the site design, and at this point I have ZERO clue on how to resolve this in code. I’m no stranger to web development, but this design built on top of PaperMod built on top of Hugo done for me by an AI tool…. whoa. I looked at the code. I made a few experimental edits, and realized something. If I were to solve this conundrum, I’d have to learn Hugo, then PaperMod, then this specific design in turn until I fully understood it. This is a human task - what I mean is - this is entirely within possibility and something I can do.
But I don’t wanna. I want my site up now, I want my blog post on the interwebs. I want my little corner of the internet back up and my voice, such as it is, out there in the ether. Not that I expect a lot of traffic - I’m not advertising or link farming - but dammit I’m not prepared to wait this long.
So, back to Claude I go. I mention the problem. I tell Claude “The About page and my blog post have the wrong background.” Simple enough. Claude starts asking for tool use. It wants to grep the whole repository, and then spits out some code and tells me, “Maybe if I try this…”
That’s when I realized that the AI tool was doing exactly the same thing I would have to do. It was wrong in its first assumption, and it stopped to ask me questions. “Is it possible that the background color is not ‘#FFFFFF’, but your puny human eyes can’t tell?” I’m paraphrasing, but that’s basically what it said.
“Nope, Claude…. the background on the two sub-pages is white. Entirely different than the warm off-white of the rest of the site.”
A few thousand tokens churned later, Claude asked me the same question. I replied the same.
Then, it cranked again. And turned the background of my problem pages red. And asked me, “Is it red now?”
“Yes, Claude. You’ve found the issue!”
Then, Claude made it MORE beige. My answer: “That’s the good stuff!”
“It was not white. It was extremely light beige. You couldn’t tell on your monitor, so I made it MORE off-white for you.”
Claude was being kind.
What I did not tell Claude was that it wasn’t the same off-white as the other pages, because I didn’t know it wasn’t at this point - I’m only watching the one page that was, to me, white that is now very beige.
So Claude offered a compromise: “Here’s a less white, more beige, but not as beige as the last one. Is that good for you?”
So I relented. At this point, it’s late as hell and I really should have been in bed two hours ago. Which is an hour and a half before I started writing the blog post in the first place, but that’s not the point of this story.
This story has a moral, and it is this: If you’re lazy, and don’t want to fully understand the thing you’re building, you have to lean on the tools to finish the job. I’m not saying don’t vibe code. It’s fun! But if you’re going to be running this code in anger - if it’s going into production and at least attempting to be something reliable - you should take the time to at least be able to understand it.
I still don’t understand it, and here we are.
“Anyone who has never made a mistake has never tried anything new.” - Albert Einstein