Building my blog and portfolio
Some say that the journey is the reward, which is really true for my blog. The journey of building it has been one of my favourite parts of it.
As I explained in the “hello” series of posts, I got back to this blogging world lately. I wanted a personal space in which I could talk about several topics, ranging from my own view about some subjects to tech posts of several sorts, as well as explaining some of the things I am doing these days.
With that decided, I had to choose the base technology for the blogging platform. I wanted simplicity, minimalism and focus on content and, technology-wise, something attractive enough. Even something that I could (partially or totally) code myself would be pleasant. For one, doing it all by myself, using a web framework like Rails, was too much on my opinion. I also knew Wordpress, an excellent, versatile tool that I have used several times in the past (like Quipu’s blog), but that would have easily been an overkill. So I investigated and asked some friends, and I ended up settling with Jekyll, a simple framework based in Ruby, perfect for static blogs and websites.
Then it was the turn for choosing a template that would give some styling to the platform. I discussed it with my friend Hayk, our designer at Quipu and a talented musician, and he kindly offered to do it himself. I had a long conversation with him about what I wanted and whatnot, and he came back with a beautiful, minimal design a couple weeks later. He described it like this:
I wanted to make it feel like a senior developer website, with a confident introduction about him and his work. It is minimalistic but with a bit of character. There are no unnecessary elements, just two main topics: about Albert and his thoughts.
I had a platform and an awesome design: now it was the time for setting it up. I wanted for it to be state of the art, even if it was a really simple web application, so I applied the best development techniques I had been using professionally these last years. I follow the git flow, for instance: new posts, features and bugfixes are developed separately in branches, and then merged to master.
Speed was also a priority. Being static pages (compiled after each change), it was already pretty fast, but the assets were not. So I found out the Jekyll::Assets plugin for Jekyll, an awesome tool that I could make work together with special fonts needed by the blog & portfolio design, and helped me achieve incredible WPO results. Finally, I wanted painless deployment, so I went straight to Capistrano, and after some inspiration from here and here, I came up with a clean solution that deploys a new version within roughly 30 seconds to my personal VPS in Digital Ocean.
All in all, I came up with bellonch.com, and I am really happy with the result. Everything is open source, available at GitHub. Feel free to use it, or even contribute by issuing a pull request!