I’m not a web developer. Don’t get me wrong, I’ve managed a website or two, but I don’t know much about frameworks, CDNs, or even javascript for that matter.
The first website I maintained was my high school’s site, coded by some unknown former student in ASP.NET. One day my HS computer instructor showed me a dusty computer running an ancient install of Dreamweaver, handed me the keys to the kingdom, and told me:
“Have at it, kid”
To be honest, I’m not even sure how I got this gig. My only experience with programming thus far was editing my MySpace page [which in hindsight was actually good exposure]. Nonetheless, I eventually figured out how to swap photos around, add a calendar widget, edit copy, etc.
This experience taught me three lessons:
- 90% of coding is pattern recognition
- IDEs are dangerous if you don’t know what you’re doing
- A website will still work, even if Dreamweaver collapses the entire .aspx file to a single line. Ask me how I know…
The “good enough” trap
When I started this blog, I didn’t know how I wanted to build it. Still a bit traumatized by my High School webmaster duties, my first instinct was to fall back on what I knew: plain static .html and .css. It’s simple, it’s reliable, and honestly, even in 2026, it works shockingly well.
I spun up a basic site using some old templates I had kicking around. Header, footer, a couple pages. There was a brief moment where I seriously considered calling it “good enough” and moving on.
As I started adding content, reality set in. Every new post meant manually writing <a href> links, wrapping paragraphs in <p> tags, copying layouts, updating navigationm over and over again. It wasn’t hard, but it was tedious. I knew if I left it that way I’d stop updating the site entirely.
Obsidian
For the past year, I’ve been trying to use Obsidian to manage basically everything: work notes, gym plans, random ideas, half-finished projects. If it exists in my brain, I try to put it in a markdown file.
I love the thought of using markdown for everything. Everything is just a text file stored on a filesystem I own, and when I inevitably decide to switch tools in a few years (because of course I will), I can just take my thoughts with me.
Connecting the dots
In a perfect world, I’d point Obsidian at my website’s Git repo, write posts in markdown like I already do, commit, push, and be done.
There was just one problem: I’m not a web developer, I’m a busy sysadmin who doesn’t want to spend his entire weekend coding and maintaining a website that realistically nobody will read.
Enter AI
I recently got added to my workplace’s GitHub Copilot subscription. So far I’ve been using it as a glorified autocomplete in my various scripting projects, and to be fair, it’s very good at that.
Instead of learning a modern web stack from scratch, I pointed Copilot at my existing site and asked it to rebuild everything using Astro, a framework I’d learned about 10 minutes prior after a bit of googling.
My prompt:
Rebuild this existing static website (currently plain HTML + CSS) using the Astro framework. The goal is to modernize the architecture while preserving the existing visual design, layout, and styling as closely as possible. Use Astro (latest stable version). Output should be fully static, no SSR required Reuse my existing CSS and HTML structure where possible. Extract reusable layout elements into Astro components (Header, Footer, Navigation). Blog posts should be written in Markdown (.md or .mdx). Support frontmatter fields: title, description, pubDate, tags, draft (optional) If anything is ambiguous, make reasonable assumptions and proceed with best practices.
The Result
GitHub CoPilot thought for 26m 50s and spit out the site you see now. It even generated an animated .svg without me asking. The site built flawlessly the first time.
I’m a little torn. On one hand:
- AI is evil and is destroying our entire industry, and we’ll soon see cyber warfare between vibe-coders and LLM-powered nation-state hackers.
- LLM-written code is getting deployed everywhere, and we’re already seeing the negative effects if the last few Windows quality updates are anything to go off of.
On the other hand:
- I just built an entire website without learning Astro
- I can focus on solving problems instead of fighting tooling
- AI is an unbelievable force multiplier
I don’t think you’ll see me vibe-coding a SaaS anytime soon. I still see LLMs as an over-eager intern, and I still like fully understanding the systems I build.
But for this blog? I guess if it’s happening anyways, I might as well participate.