Choosing the Right Static Site Generator

This post isn’t really interesting for anyone but myself – unless you’re somehow looking for a static site generator, and have the exact same needs as I do.

But I’m writing the post anyway. My free time for the next couple of weeks will probably be used to dig into static site generators. That will mean less time for writing, but I want to try to post at least 100 posts this year. Yeah, it’s a cheap approach, but it’s not as cheap as just posting random videos from YouTube1.

The first thing to notice is that there are many static site generators out there. In fact, there are too many of them for their own good, and analysis paralysis will hit you straight in the face. There are a couple of resources online that can help, though. Myles Braithwaite keeps a curated list of around 80 static site generators, StaticGen lists 281 different ones, and the site Static Site Generators has no less than 460 static site generators in its directory.

I opted for StaticGen as my static site generator source. The site lets you sort the them by number of stars they have on GitHub, and the number of followers they have on Twitter. Both numbers are pretty arbitrary in terms of how good they fit my needs, but they can be used as an indication of the generator’s usage in the wild.

WordPress Alternatives

WordPress has served me well since 2008. But after 12 years with Matt Mullenweg, it feels like it’s time to look at some WordPress alternatives.

In my early days of writing stuff on the web, I created static HTML files. My college gaming site adventure, The Strategy Shine, was just a bunch of raw HTML files. No separation of content and presentation, no templating, and no dynamic content whatsoever. Making a site-wide change meant doing an advanced search and replace on all the HTML files, and then uploading everything to the server with FTP.

On my first proper personal site, I used the original open source weblogging tool, Greymatter. The Perl CGI-script generated static HTML files, and allowed for a certain separation of content and presentations. After using Greymatter for a while, I made my own, very simple, CMS – Bugger – for blogging. Written in PHP and using a database to store data, Bugger lived for a few years until I finally made the move to WordPress in 2008.

There is a lot of hate for WordPress going around, but personally I like it a lot. WordPress is used by more than 30% of the top 10 million websites, and I suspect that much of the hate comes from the fact that it’s the market leader in its segment. WordPress has also received a lot of bad publicity for being a wide open door for hackers. While this was the case a few years ago, it has become a lot better now, but because of its large user base and plugin architecture WordPress is still a very popular target for hackers.

But even though I like WordPress, the time has come to try something else. A lot of things have happened in the CMS space in the last 12 years, and the engineer in me wants to have a go at something new and fresh.

Every Possible Image Ever

I hope you’ve been able to recover properly since my recent post about loudspeaker blew your mind, because here’s another post that will make your brain short circuit.

Let’s have ourselves a little thought experiment. Imagine a website. That shouldn’t be too hard, since you’re on a website right now. Now imagine that the website generates a black and white image every time it’s visited. The first visit to the website generates an all white image. When the next visitor to the website comes to the website, the pixel in the upper left corner of the image is colored black instead of white. The second visitor enters the website, and the pixel next to it is also painted black.

This continues until the entire image is black. Then, when the next visitor enters the website, the pixel in the upper left corner is color white again. The image is now entirely black, except for the white picture in the upper left corner. More visitors enter the site, and it continues to generate images until it has generated every possible combination of black and white pixels on in an image.

The website now has images of everything that ever was and ever will be!

This little guy thought about that for a minute. And then: Mind blown!

Let's Try Anonymous Pull Requests

I love pull requests. Done right, they result in better, more readable code, and fewer bugs. But we can improve traditional pull requests and make them even more useful.

A good pull request is not one that is approved by everyone without a single comment. Quite the opposite. A good pull request is full of comments, questions, and good discussions. In a good pull request, the code is in better shape when it’s merged than when the pull request was opened. And a good pull request is one where both the developer who opened the pull request and the reviewers learned something.

To accomplish all this, the development team members have to agree that a pull request is a free zone. Every reviewer is allowed to scrutinize every piece of the pull request, and question everything about it.

But even if the pull request is a free zone, the development team has to keep it civil. Nasty comments and personal attacks are not allowed. The pull request is about the code, not the developer who opened it, or the reviewers. If things get personal, many developers will be reluctant to engage in pull requests, and they won’t reach their full potential.

An issue with traditional pull requests is that they are personal the minute they are opened. You can see the name – and often picture – of the developer who opened it and all the reviewers.

So to rid pull requests of their unfortunate personal bias I propose that we make them completely anonymous.

Find Free Photos Firefox Extension v1.4 Released

Good news, everyone! The kids stayed in bed a little longer than usual this morning, which gave me the time to give the Find Free Photos Firefox Extension a minor overhaul.

Back in 2018, I published a post describing how you can find free, high quality photos online. I also released a Firefox extension so you can search several free stock photo services directly from the browser’s address bar. With a meager 30 daily active users among the entire Firefox user base, the extension hasn’t been a raging success. But I use it weekly myself, so at least it’s saved me a lot of time, which was pretty much the whole point of the extension.

Today I released a new version of the Find Free Photos Firefox Extension. There are no major changes or new features, I just revised the list of services the extension will search.

Since Kaboompics and CC Search were consistently returning no or very low quality search results, I removed both services. To make up for the loss, I added StockSnap.io and Burst instead, which returned much better results based on my (very limited) testing.

If the removal of Kaboompics and CC Search grinds your gears, feel free to open an issue on GitHub. Alternatively, you can fork the code, and create your own version of the extension. All hail the power of open source!

And now all that is left is to wish you happy free photo searching!