Make everything as simple as possible, but not simpler.
-- Albert Einstein

Aurora v2.0

For a while I've been out of the whole blogging business, other medias like twitter and message boards have taken over my time. There is something very satisfying with webpages though, you have more words and letters to express yourself (140 characters really make you sound like a douche or a stoned surfer) and you can include all sorts of crazy medias, like pictures. Dude. Seriously.

While sometimes having the urges to blog about something and even going to the extent to write something down, I've lately become all to complacent to publish anything. This I realized after a while was because the fact that while I'm perfectly happy to bang out something on my Mac in Apple's excellent Pages application [1], I'm more reluctant to transform that into an actual blog post since that requires me to do a lot of extra manual steps. This has more to do with the very peculiar setup I have for posting blogs than anything else.

A little background history might be in order. I started my blog Aurora back in 2006, at that time I was new to blogging and I asked my friend Noel to suggest what to use [2]. He back then used a system called Movable Type. MT is a web based publishing platform, much like the now more popular WordPress, but it also allowed offline authoring of articles and you could upload them afterwards to the server. This was really the thing that drew me to MT so I started to modify the scripts I got from Noel and thus my blog was born. The process was a little bit complicated, I could never get a 1-1 mapping between my local file and what was published as MT did a lot of magic. So there were a lot of manual tweaking of the HTML back and forth before I could publish anything.

So fast-forward a couple of years. I'm now even lazier than I was back then, all those manual steps and fiddling with the HTML directly simply doesn't appeal to me anymore. Well, I doubt that it ever did. Something needed to be done to clear up the rotten stench in Denmark...

Stand back, I'm a programmer

So after some thinking and talking on twitter with Nick about how really silly large all the blog software packages were [3] I got into thinking that maybe hey, I really could write my own stuff and get all the features that were really important to me. I had originally dismissed the idea back in 2006 as crazy, since all these blog packages were large, even gigantic - surely they are doing lots of things, I don't want to reinvent the wheel again, do I? I just want to blog...

The thing is, not necessarily is not bad to reinvent the wheel, certainly not if it's in the core of what you do. And what do you know, sometimes you get more understanding while doing it and the result is a better wheel, not that old square thing that leaks air. No, this wheel is actually round. Who would imagine?

If you've taken a peek at the actual HTML that gets exported by any of the standard word processors, including Pages, you will notice that it's horrible, complex and very much not suited for any blog.
Investigating my situation some more I found out that the Apple Pages application doesn't save some obscure binary format, instead it's just a zip archive which contains easy to parse xml files and image files. Hey, what do you know, I just might be able to author all my stuff in Pages and then simply export it from there and generate HTML...

All I then need to do is to loop over all my .pages files and generate HTML for all of them and then an index, an archive and a RSS feed (all these tasks are fairly similar as well).

All of these tasks were easily implemented in around 1000 lines of python, where lxml and xpath were the lifesavers in order to quickly parse and deconstruct the internal Apple Pages format [4].

The only thing that concerned me at this point was the comment system. I've been looking at several other blogs, and what really struck me was the amount of work that has gone into the comment systems. I really didn't want to start putting together a comment system with all it entailed so I compromised by choosing a off the shelf comment system Disqus that integrated very easily into my own pages. I guess time will tell if it is any good.

Breaking the conventions

Another thing that really bugged me about blogging with the known big softwares were that the most of the blogs all look the same. Sure, most of the themes give the illusion of customizations and choice, but it's all within the really narrow framework that give you. For example, have you noticed that virtually all the blogs have a very narrow text column? The theory is that you read more easily when the text column is narrow and lo and behold almost all the blogs have a narrow text column, regardless how you resize your browser window. Leaving most of the real-estate to be just empty background.

Another example is the navigation column. Most blogs have them, and usually they contain all sorts of drivel. On every single page on the blog! You know, if I really wanted to get hold of the information I can go to a single information page somewhere on the blog, but while I'm reading the article I'm interested in I would like as few distractions as possible.

Towards this end I've taken a more minimalistic article approach to blogging. You will notice that each article have a small header at the top outlining the different options, but the rest of the page is dedicated to the actual article. It's freely scalable and will match your browser window. In fact, even the comments to the articles are located in a separate page, apart from the main article page.

Oh my god, what have I done?

So now for all practical purposes I've made my MacBook and Pages an integral part of my blogging. Indeed I feel like I'm in that proverbial corner with wet paint all around spelling out "You're locked in". This might very well be true, who knows what Apple will decide to do with their internal Pages format? Even so, sometimes you just have to take a leap and go in a direction. I will probably think twice before upgrading my iWorks copy anytime soon, but in the meantime my development environment for writing blog postings have just become a lot more streamlined and comfortable by leveraging Pages to do most of the work for me. So after this I can finally go back to post some new blog posts!


[1] Which really has become my goto word processor, much like KeyNote has just destroyed any future use of PowerPoint I might have had.

[2] Actually Noel was pushing me into starting to write a blog.

[3] In fact, as a proof he sent me his script that kind of distilled down what all the blogging softwares were doing in a ridiculously short python script.

[4] xpath is like crack, really powerful and addictive. But also very dangerous. Do not want to get used to it.