Skip to main content
  1. Dispatches/

Emerging

·547 words·3 mins
Articles Meta Announcments Jekyll Octopress Ruby
Daniel Andrlik
Author
Daniel Andrlik lives in the suburbs of Philadelphia. By day he manages product teams. The rest of the time he is a podcast host and producer, writer of speculative fiction, a rabid reader, and a programmer.
New Site Smell>

New Site Smell #

Ahh, a site relaunch. That fresh new-theme smell! Just what the doctor ordered for the Ministry of Intrigue.

Wrestling with a Cephalopod>

Wrestling with a Cephalopod #

I’ve made no secret about my love of Octopress since I switched to it from my custom Django CMS solution. I love using it to take my Markdown posts and convert them into a static site. However, it meant that I was only able to make use of a very old version of Jekyll, and as a result, site generation could be remarkably slow unless rake isolate was used for an individual draft.

I had been anxiously awaiting the release of Octopress 3, which resolves these issues by becoming a series of modular plugins to Jekyll itself. I was thrilled to see the announcement of its imminent release, but saw repeated warnings that while a migration guide would be provided, there are enough differences that the transition would not be without pain. As a result, I’ve avoided trying out the pre-release version for quite some time. However, the other night, I got an itch to experiment to see how much work was involved.1 Of course, no project like that really ends up as just a test, and you are looking at the results of that experiment.

It took several days with short bursts of work to make the conversion to Jekyll 2.2.0 and Octopress 3.0, and as advertised, it was not without pain. I’m sure it will be a bit easier to transition once the first Octopress example theme is completed, which should make theming Octopress-driven Jekyll sites much easier.

I decided to bite the bullet, use a different theme as a base, and work through converting all my legacy posts to accommodate it. While Markdown should, in theory, be presentation-independent, there are number of very useful Liquid tags I had grown accustomed to using, and ensuring that the equivalent plugins were installed and themed correctly was quite a chore.

Coming Up For Air>

Coming Up For Air #

It has taken a lot of work, even with the huge advantage of using a pre-existing theme, but I’m proud of the results. [The migration process was full of little fiddly details, but ultimately it was worth it. I love the new look and feel, the code-base for the site is easier to maintain since it does not include the extraneous Octopress code, and site generation for this site has been reduced from 15 minutes to about 15 seconds. Even better, the updated Jekyll generation code means I can finally take advantage of the Latent Semantic Index (LSI) feature for displaying related posts. Using that feature can increase the final build time to as much as 11 minutes, but previously executing that command would not yield a result in anything less than four hours.

At some point, I’ll come back and document all the steps I used for the migration to serve as a how-to for any other intrepid souls who wish to give it a shot prior to an official migration guide being released, but that’s a task for another day. For now, I’m content to lean back, relax, and take satisfaction from a major undertaking accomplished.


  1. Remember: git branch is your friend. ↩︎

Related

Switching To Octopress
·1512 words·8 mins
Articles Assorted Geekery Meta Ruby Octopress Django Development Python Jekyll Hyde
This site is now powered by Octopress. The tentacles compell you! It’s tentacly delicious ! The Search> The Search # As I mentioned in my previous post, I’ve been looking to try out a new CMS for this site.
Changelog: Scheduled Posts in Jekyll
·691 words·4 mins
Articles Meta Development Jekyll Octopress
I do so love to tinker… One thing that has annoyed me about using a static site generator for my blog has been the lack of scheduled posts. It’s a feature I relied on quite a bit back when I used Wordpress, and also when I built my custom Django CMS.
Changelog: Improving Discovery and Readability
·780 words·4 mins
Articles Meta Personal Development Lsi Jekyll Octopress Django Xapian Haystack
Iteration is the thing. Or at least that’s what I tell myself. After all, tinkering is easy to do, especially when you are working with a platform as flexible as Jekyll. So as you would expect, I’ve made several changes to the site since the initial relaunch.