The reason to create my personal website from scratch comes from not being able to find any project to create static websites that met my requirements.
In my first iteration of my personal website (blog) I used blogspot. It is great for a quick start, but I did not like the stiffness of the platform regarding changes.
The next iteration of my personal website (blog again) I used Jekyll. It has more freedom to perform changes and personalize it. However, at some point I wanted to add some features to the theme I was using. That implied learning Jekyll's theme creating process and since I do not know Ruby it was quite hard.
So, for my current iteration of my personal website (website and blog) I decided to search for alternatives such as Pelican to create static websites, but I did not like how the themes were created. Therefore, the last option was to create it myself (how hard can it be?).
To be honest it took longer (6 months) and was harder than I though it would be :D. The backend was relatively easy (it only took one month and a half), but since I do not have much knowledge of CSS or HTML design the frontend was what took the longer.
The backend of my website uses Django, and SQLite (PostgreSQL can be used easily thanks to Django configuration) to store the required information.
The frontend theme of my website is inspired on Hyde a Jekyll theme.