Sigh
This is a hard post to write, because it's pure bait. I'm just to cheap to pay for the 6$ a month. That's it. If you have the cash and want to support the indie web, go ahead and blog there, Herman seems like a great guy.
If you want to blog, but you're as cheap as me, check out this post of mine
Woop woop, got propper phone responsiveness now. When in portrait, you'll don't get the padding to the sides anymore!
The largest value you can store in one value in base10 is 9, however in base2 (i.e binary) it's only 1. With three values, we can store 999 is base10, but only 7 in base2. By eight values, we can reach 99 999 999 in base10, but only 256 in base2.
Let's try some bigger values. If we made a counter of millisecond precision that stored the count in base2 with 32 values, how far do you reckon it could store? Just a hair under 50 days, not that much, considering we have 32 entire values. What about 64 values, maybe a couple of years perhaps? Oh is that where that 2038 bug occurs perhaps?
Well, no. A millisecond counter with 64 bits could count for 584 million years...
Though, in base 10 with 64 values, we could store 3*10^53 years, so still not that impressive.
To make it slightly more understandable why a doubling of values can take un from tens of days to millions of years, think like this. Imagine for every millisecond there are in 50 days, you'd increment the counter not by one, but by the amount of ms in 50 days (about 5 billion). Now we are starting to reach these stupidly high numbers.
By 128 bits, we are nearing the heat death of the universe...
Did you know I don't have any analytics on this page.
I like to pretend I don't care about who is reading this, but in an attempt to preach what I pray (and to respect your privacy) I have made the decision to not have any analytics.
*Cloudflare does provide network stats, though those are not precise and basically only for knowing how much of my quota is used
Let's start with what this post isnt:
This post is about how I'm hosting this site for 0€ in broad terms.
TLDR: CGNAT
I have dabbled with selfhosting in the past. However as young adult I've been moving about a lot, and currently I don't have access to a wired internet connection. Currently I'm using mobile broadband for my home internet, and while it works decently, it does put me behind CGNAT which hinders my self hosting posibilites, especially on a budget.
I personally use cloudflare, which offers static page hosting with their free tier, under the pages.dev domain. You could also use github or some other provider, depending on your needs, situation and beliefs.
Personally I use Zola, which I find quite nice. However you can use whatever generator you want. Or ofcourse no one is stopping you from writing HTML manually. Sometimes you have to wonder how much time your actually going to waste on writing HTML tags compared to setting up a SSG.
You have your static page, and you have your free static page hoster. Use your tech skillz to combine, and boom. Ofcourse this is nothing that you should use professionally, but to get started it will do.
This site is generated with Zola. I've tried both Hugo and Eleventty, and while admittently they were easy to setup, the learning curve to tinker with your site was steep.
When I decided to setup a new blog, I found Zola, and I realy enjoy its more barebones setup. I am in control of the templates, the styling and indexing. There are only a couple of built in values, with no tinkering or configuring to add more functionality. What you see is what you get.
Zola is not perfect, or the documentation is atleast not perfect. Or I may just be dumb. But here are the solutions to the pitfals I have been fighting with
So, if you want tags like I have in my microposts, you are going to need the files /templates/tags/single.html and /templates/tags/list.html to even use taxonomies.
In your posts frontmatter you are going to use this format:
+++
date = "2025-12-09T08:00:00+02:00"
[taxonomies]
tags = ["random"]
+++
# The post
Yada yada
You also need this in your config.toml
taxonomies = [{ name = "tags" }]
Sometimes you want to seperate your html files to make changes easier, here is how you import them into other files
{% include "navbar.html" %}
Probably hidden somewhere in the docs, but here it is anyway:
{{ page.date | date(format="%H:%M %d-%m-%Y") }}
Which gives
08:00 09-12-2025