Growth is good

Posted on Thu 10 August 2017 in Site News • 2 min read

Last post, I reached a big milestone: one-hundred posts. Given I started this blog way back in 2007 I could forgive you for saying I'm slack. An interesting fact though is that the overwhelming majority of my posts were written within the last two years.

Since 2014 I've taken blogging more seriously. First to document my world-building app but more recently because I've rediscovered the pleasure of writing articles on different topics that take my fancy.

I'm writing more articles, journal posts and other titbits1 than I ever have. The downside is that I've developed a structural problem that makes it difficult for navigation as well as limits my ability to reuse article slugs.

This is my fault.

When I migrated to using Pelican as my blogging engine, I didn't bother to create date-based pretty URLs. All articles once compiled from Markdown to HTML are dumped in the root folder of my site. This is messy, not very SSO-friendly, and as I said, limits my ability to reuse slugs.

So, I've decided to redo my site's structure and introduce clean urls based on the date I publish the post, that is, something like chrisrosser.net/yyyy/mm/dd/article-slug/. Pages won't change, they'll be still located at chrisrosser.net/page/page-slug/

Luckily, Pelican makes this easy; I only have to add two lines to my site's configuration file and the change will occur on the next scheduled build. In fact, since you are reading this post, future me has already gone and implemented the change.

Naturally, there are issues with changing endpoints. For almost a year, I've been cross-posting articles automatically to Facebook and Twitter—those links are now broken and I cannot be bothered repairing them or setting up redirects on Apache (my webserver). Google and other search engines willalso have to re-index my site.


  1. This not a snigger-worthy typo, dear American friends, this is how we say write tidbits in British English. 

Share on: Diaspora*TwitterFacebookGoogle+Email