Jekyll against the rest of the world

Jekyll against the rest of the world

Picture this: I’m standing in the middle of a room, perfectly calm. Everyone else around me? Absolute chaos.

Over there, website owners are frantically chasing WordPress security vulnerabilities, trying to patch holes that dodgy free plugins just tore open. There’s a guy at the window, slowly banging his head against the glass—not because he’s lost it, but because that’s roughly the pace at which his PHP-driven, database-heavy site accepts new requests.

In the corner, someone’s flailing, trying to get in. Can’t. Her site’s infected with malware, and now every visitor gets a big scary warning to run the other way.

Meanwhile? I’m just…standing here. Static site generation. No drama. No panic.

Why do I love you so much, Jekyll?


Dynamic isn’t evil (but hear me out)

Look, WordPress is brilliant in many ways. It democratized blogging, made publishing accessible to millions, and built an ecosystem that’s genuinely impressive. But let’s be real: its security track record is…not great. And the code? Whether you love it or hate it, fact remains it’s software running on a public server, installed by people who probably shouldn’t be anywhere near a server.

WordPress even encourages this with their “famous 5-minute installation.” In a perfect world, they’d steer non-technical folks straight to their hosted solution (which is fine!). But we don’t live in that world.

Now, think about what actually happens when you publish a new post. How often does that content change? Once it’s live, it’s static. So why regenerate the final HTML for every single visitor? Query the database, run it through the templating engine, pass it through plugins, render HTML, serve it up. That’s a lot of work for content that…doesn’t change.

You might not notice at first. Small site, low traffic, no big deal. But the moment your site gets popular? Things can get ugly fast. If you’re lucky, maybe your host can handle it. If not, your site goes down.

Sure, there are workarounds. Caching plugins. Web accelerators like Varnish. But to me, that’s just throwing mountains of complexity at a fundamental problem.

The problem is: static content should be generated statically.

Deal with the root cause, not the symptoms.

Easy for me to say, right? There are trade-offs:

  • Static sites usually don’t handle dynamic content well.
  • Want comments? You’ll need a third-party service like Disqus (whether that’s a good idea is another conversation).
  • Search? You’ll have to implement it client-side yourself.

I really wanted search on my site. So I wrote it myself—good excuse to dust off my JavaScript skills, anyway. If you’ve got JavaScript enabled, a small JSON file with the sitemap loads, and you can query it from the search bar. It’s fast as hell. Go try it.

Or, you know, there’s always Google Site Search.


What Jekyll actually does

Look at this—my terminal running Jekyll in serve mode:

My Terminal

It spins up a tiny web server and lets me preview changes live in my browser. Locally.

This is actually kind of amazing when you think about it. With most database-driven CMS setups, the process is so cumbersome that people just…work on the live site. On a server somewhere. Hope you’ve got internet, because otherwise you’re screwed. And seriously, who wants to write in a browser? Really?

With Jekyll, I work on my local machine, see changes instantly, and only push to my server when I’m ready. The server does the build (could do it locally, but why not) and updates what’s in my web root. Automatically.

When an article’s done, I commit my changes via git. That’s it. Dead simple.

And it’s so flexible. And safe. There are hundreds of plugins to do interesting things with your content during the build. But the end result? Always static pages. Nothing to break into.


What Jekyll doesn’t do

With Jekyll, you start with nothing.

Literally nothing.

There’s jekyll new, which generates a basic blog-ready site structure, but it’s really just a starting point to learn how things fit together.

If you’re looking to download a pretty theme and start typing, Jekyll’s probably not for you. Try Medium—it’s well-designed, has a great community, and is made for people who just want to write. You can even publish directly from the best editor in the world (whatever that is for you).

But if this sounds like fun? Go for it. You won’t regret it.


Serene

So here I am, sitting with VS Code open, writing and coding. Which is really all I ever wanted.

Serene

I’m back where it started. Text editor. Words. Save the file. Done.

I can preview to my heart’s content. And when I’m happy, I commit. Simple.

You know you want this. Simplify.

You don’t want a site that’s not really yours. A site bloated with social buttons, widgets, gadgets, analytics trackers, cookies, banner ads, pop-ups, and all the other garbage that makes visitors want to leave immediately. A site that regenerates itself every single time someone visits. Every. Single. Time.

Be that person standing calmly in the middle of the room. Rooted. Content.

Static. Serene.

Let's build something that matters.

I'm currently open to Senior/Lead Product Designer, UX Designer and Service Designer roles - particularly in HR, Fintech, accessibility, or social impact.

Protected Content

This project is password-protected. Enter the password to view.