The Inner Workings
If creating your personal page has been on your mind for a while, I hope this blog post inspires you to go through with it. This is not intended to be a manual, but an overview of my own process.
As I’ve previously mentioned, it is important to define some guidelines of what we want to achieve (even if later on we need to change them). As such, this webpage is intended to be lightweight and fast. Therefore, I will try to just include the necessary resources. Though, I will not follow this religiously like some people that won’t even include images (see the motherf*ckingwebsite).
Moreover, I wanted to be able to fully control the website and not host it in a service like Medium. Nevertheless, it is still supposed to “just work” so that I can focus on the content and not on running the website.
Since the main focus is to share some textual information with you, the website is structured in a way that makes it easy to read. First, the text is centered in the middle of the screen. Secondly, the line length follows studies on the optimal line length, meaning they are not too long nor too short.
Site Generator
In order to write blog posts such as this one, I wanted to avoid messing with HTML when possible, so I write everything in Markdown (with the execption of the interactive parts). However, since browsers don’t work with Markdown, we need to generate the HTML pages from those files - and that’s exactly what a static site generator does!
There are several static site generators available. The two main criteria I used to choose between them were (1) it had to be popular and well established, measured by GitHub stars, and (2) it could not be JavaScript-based (it should just be on the web!). After checking that it provided all the desired functionalities, Hugo ended up being the chosen one. Another viable alternative would be Jekyll.
As a side note, Víctor (from Evolutio) and I developed a basic proof-of-concept static site generator in Django for the official website of DjangoCon Europe 2020 & 2021. However, this was done just for demonstration & educational purposes. It is somewhat limited, but you need to take into account that it has less than 50 lines of code.
Design & Structure
The design & structure of this page are made simple on purpose. Since I am not a designer, I needed some inspiration and for that, I’ve gotten some ideas from other blogs: Tom MacWright, Andrew Healey, Tyler Kimothy and Bartosz Ciechanowski.
Privacy
This blog does not include cookies and will not sell your personal data. In terms of analytics, counter.dev is used since it is free, open-source, and privacy-friendly.