The last personal website I had circa 2010 was based upon WordPress. At that time it served it’s purpose however it eventually became more of a burden then ease to maintain due to security flaws and performance ineffectiveness. I’ve worked with many content management systems (CMS) such as Drupal, Joolma, Midgard Project, October and even at one point created my own CMS. For me they all had one major problem, complexity. I wanted simplicity. In the end I was not happy and the truth of the matter is I was using tools that were not fitting for the job. So saying all this in my long winded point, I’ve learned that one needs to choose the correct tools for the job and go back to the roots of what a website is. For this website I need a system and workflow that meets the following requirements.
- Ability to automate tasks
- Add data without a database
- Base foundation already setup
- Ease of use
- Enjoyable to use
- Good performance
- Limited security risks
- Minimal requirements
- Open source
- Slim, not bloated
- Support Markdown
- Template system
I’ve wanted to try a Static Site Generator for quite some time and I do realize how late in the game I am to them. Jekyll is written in Ruby, a language I’ve done very little with. However this may bring a reason of opportunity to learn more about this language and maybe write something to help in this new journey. As to extensibility, yes one can get carried away with the extensibility and bring on the complexity, bloated and ineffectiveness as other past choices have had but as with everything else one has to find balance. Will I stick to using Jekyll, who knows as only time will tell.
I’m publishing this as part of 100 Days To Offload. You can join in yourself by visiting https://100daystooffload.com.
- An Introduction to Static Site Generators, Eduardo Bouças, May 2015
- Awesome Static Site Generators, Myles Braithwaite, GitHub, Software List
- Content management system, Wikipedia
- Jeykll’s logo, CC-BY-4.0, GitHub
- Quickstart - Jekyll
- Step by Step Tutorial - Jekyll
Changelog - modified
- Add tag #SelfHosted