Learn markdown, use octopress

Pending shutdown

A while ago, I was informed that my old blogging service would shutting down at the end of 2011. They served me well over the years, but this seemed like a good reason to move on. The first thing I did was write a crawler to backup my old website. The admin section of my blog had a button to download an archived tarball for each month, but I didn't feel like doing the manual labor clicking on that button some 60 odd times.

I chose to automate the downloading. Knowing that I wanted to do a new fangled static website, instead of getting the full high resolution version of my blog, I lossily encodend the bits into into reStructuredText. I figured that would be sufficient if I wanted to import the posts, since my next blog would probably based on Python and hence support rst.

Though, when I get around to importing the old posts, I'm not quite sure what to do about comments.

Why reStructuredText?

rst is the standard lightweight markup language for Python programmers. So I tend to favor it when possible. In fact I've gone out of my way to use it for writing presentations and even my book. Sadly, it's not the only markup I use. Being an emacs user, I also use org-mode for note taking. Sadly those two are not the only markups I use, being a confluence user at work, I use their wiki markup as well, but I'm digressing.

I set out on the task of finding my blogging system that preferably was written in Python (if it needed hacking) and supported rst. Then I realized {"I was not up for the task of writing my own blogging system. I wanted something that worked out of the box."} The best one I found didn't support reStructuredText. In fact it wasn't even written in Python. It supported markdown, which is should be okay because it seems like all of these markups support the same 70% of use cases. The annoying thing is to remember the remaining 30%.

I don't think I'm completely satisfied with any of the lightweight markups I've come across. But given the tools that I use, it has made sense to learn the markups associated with said tools.

A typographic aside

I've been reading The Elements of Typography and have come to the realization that current lightweight markup languages are not sufficient in their support for typographic markup. For example, there is no way to designate dropcap support. Hacks like smartypants sit on top to provide functionality like curly quotes. Not to mention that typographic support for the web is years behind the renaissance standards. Ligatures? Maybe with some ugly javascript hack we'll start seeing those in a five years, though they have existed in print for centuries. (Did you spot the missing ligature in that sentence?) Sadly there is not enough time in the day to do much about this.

So the downside of reading that book is that I now take a hyper critical eye for some typographical nuances. These were things that I didn't even know about before and didn't have to spend brain cycles on them.

Enter Octopress

I followed the various shoutouts on Hacker News and the blogosphere regarding static blogging packages. I've watched them in github and I've even perused the source of some of them to evaluate them.

After attempting to get two different Python blogging systems up, and realizing that it required more hacking than I was motivated to do, I re-evaluated.{" Currently Octopress seems to be the best static blog system for me."} Other than the initial ruby install (it requires version 1.92, and apparently Gentoo devs aren't into that), it has been smooth sailing. I haven't had to touch ruby, only markdown and yaml.

It looks nice out of the box. It has lots of action on github. It supports code fragments, quotes, and pull quotes quite easily. It even looks decent on mobile devices. To enable remote deploy I had to update 2 lines of yaml.

I guess I've been in the mode of thinking I'll eventually need to hack on a given tool. Yet the pragmatist in me really appreciates that I can just use Octopress as a tool.

I don't think I'll be leaving Python soon. Octopress is a great tool (it could be written in Python or Erlang for all I know) that does it's job out of the box. I'm a little remiss that it doesn't automatically import clipart and write my copy for me, but I think I'll get by.