Moving from Wordpress to Jekyll

For quite some time, I’ve been frustrated with Wordpress. It’s a very quick way to get something up and running, which is rather SEO friendly and has a good deal of features with lots of things taken care of under the hood. A couple of things bothers me though and has made me long for a switch to Jekyll or Octopress. As I’m writing this, I’ve started the migration due to the following issues:

  • formatting of code in posts is almost guaranteed to be messed up, or at least messy
  • editing posts off line is cumbersome -
  • lack of Markdown, ReStructured Text or similar plain text markup support

Things I do miss that I’ll need to handle myself:

  • media manager (images, PDFs, videos)
  • pubsubhubub, or at least pinging
  • pipeline for publishing - from git push to S3 (I’m starting with Digital Ocean)

For the last part, I’m playing with Docker to wrap the entire Jekyll/Ruby environment in an image/container that is separated and known to work. My git repo is setup like this:

website
├── _config.yml
├── css
│   └── ...
├── cv
│   └── ...
├── examples
│   └── ...
├── gfx
│   └── ...
├── googlee....html
├── gpg
│   └── ...
├── _includes
│   └── ...
├── index.md
├── _layouts
│   ├── default.html
│   ├── front-page.html
│   └── post.html
├── pgp -> gpg
├── _posts
│   ├── 2014-06-01-javascript-delayable-tasks.md
│   └── 2014-06-01-moving-to-jekyll.md
├── pwgen
├── schema
│   └── index.php
├── ssh
│   ├── public_ssh_key
│   ├── public_ssh_key.fingerprint
├── _util
│   ├── generate_site.sh
│   └── run_preview_on_4000.sh
├── vcard
│   ├── fredrik.vcf
│   ├── fredrik.wendt.vcf
│   ├── qrcode.html
│   └── qrcode-vcard-minimal.png
└── y_key_...

The problems I’ve been having are these:

  • when things don’t work as expected with Jekyll, you have close to zero chances of understanding why: there’s no --verbose or any type of logging that you can turn on
  • Docker has been incredibly unstable for me, causing complete machine froze ups
    • On my home server I’ve been running Docker version 0.10.0, build dc9c28f with Ubuntu 12.10 - countless freezes
    • On my laptop I’ve been running Docker version 0.11.1, build fb99f99 with Ubuntu 13.10 - even more countless freezes
  • puppet on DigitalOcean is really slow

Issues

I couldn’t get proper syntax hightlighting to work with triple backticks codeblocks. Turns out that the default markdown parser, RDiscount, doesn’t handle those the same was as the redcarpet one does.

You can’t mix \[what I call inline URLs\]\[http://inline.url\] with \[named references\]\[line_url_def_somewhere_else\] - as soon as you introduce just one “reference”, all links needs to be reference style.

And the problem was that I forgot that [inline](uses_parantheses) … :-P

To be continued …

This work by Fredrik Wendt is licensed under CC by-sa.