Site details


This site's CSS size is 5.2Kb. This, however, does not include the following dependencies:

The minimal CSS is heavily inspired by 58 bytes of css to look great nearly everywhere.

The CSS evolution (size, number of rules, etc) can be tracked over at Project Wallace.

The site is generated from a set of Markdown files using a Python pre-processor, which mainly performs the following tasks:

The site is searchable from here. The search page also allows for query string searches using the q keyword, for instance:


This allows you to add a custom search engine to most modern browsers, such as Firefox or Chrome.

Search is done 100% client-side, so there's absolutely no information collected regarding your search queries.

Highlighting of terms is also possible just adding the query parameter ?h=... to any page. For instance, to highlight the term privacy on this page, simply go to


or click here.


No cookies are used on this site.

All site traffic statistics are captured using GoatCounter. Goatcounter is an open-source, privacy-friendly analytics site, which doesn't use cookies and collects minimal information, just enough to produce a few useful summaries. In line with the desire for total transparency for all visitors, I've made the realtime stats dashboard for this site public and available at You can see for yourself which data is collected.

Please let me know if you have any concerns about this site's privacy policy by dropping me a message at

As mentioned previously, search is done 100% client-side, so no information is collected about your search queries.

The privacy record of this site can be verified independently by using Blacklight.


All pages will work the same with or without Javascript, except the following:

So if you want to disable Javascript for this site, please do! It won't affect any of the content.

Text mode

Apart from the obvious lack of images, the vast majority of this site will also work with a text-based browser (such as lynx).

Even the code examples are quite readable (for instance, pandas dataframes are properly rendered as text tables).

Give it a go by installing lynx and running lynx

Here's how this page looks like using lynx:

Keeping up to date

If you want to keep up to date and be notified when new content is added to this site, at the moment the best way is to follow the Mesozoic Mastodon bot.

This bot is part of a Git pre-push hook and will "toot" whenever changes to the site's source are made.

  1. Previously this site was written as plain HTML+CSS, this is touched upon at (Semi) handcrafted RSS