citizen428.blog()

Try to learn something about everything

Information Overload 2011-10-02

Octopress Templates

When deciding to switch from Wordpress to Octopress one of the main reasons was that I don’t need most of the advanced features the former offers. However, for my weekly Information Overload series I relied on two features, namely templates and scheduling: I created a new post from the template and then filled it with content over the week. Once I was done I’d schedule it for publishing on Sunday afternoon. Here’s how I plan to do this with Octopress.

Goodbye Wordpress

After using Wordpress as my blogging engine of choice for over a year (after moving away from S9Y), I decided to switch this site to Octopress. Why? Because it’s cool! No, seriously. I was actually quite happy with WP, it just always felt like way more than I actually needed. OP on the other hand is super lightweight, ritten in Ruby and uses some of my favorite technologies, like Sinatra and Markdown. It doesn’t stop there though: having the site rendered to static files means I can get rid of MySQL and PHP on my little VPS, which definitely is a plus. And it’s also very cool to have all your posts in a directory on your local file system, so you can use all your favorite command line tools to search through or batch modify them. Last but not least I’m now writing my posts in Emacs instead of some crappy web input form (ok, granted, I could have done that before too).

Now to the actual migration. I started by exporting my WP blog to XML. This can be done in the administration backend under “Tools - Export”. Once I had this XML, I used the following script to convert the posts to individual files for Octopress:

This was a fork of another script, but tailored for my specific needs (e.g. all tags and categories of a post were converted to categories and I exported the files to Textile instead of Markdown because I used the former in my WP install through a plugin).

Since some of my posts are quite popular and get linked to a lot, I didn’t want to loose my old links. I therefore wrote another script that created 301 redirects for all of them:

The script can generate the necessary directives for Apache or Nginx, so all you have to do is copy them into your web server configuration. I also added another redirect rule for the RSS feed to not annoy my subscribers:

1
RewriteRule ^/feed /atom.xml [R=301,L]

Of course I also didn’t want to loose all my comments, so I had to come up with a solution for that. I first installed the WP Disqus plugin and exported all my current comments. I then used some good old Emacs magic to convert the list of redirects I had already generated to a CSV for Disqus’ URL map migration tool. So far this has not migrated all comments to the correct location, but it should eventually work out (worst case I’ll have to email Disqus support).

Last but not least I used Octopress’ excellent customization suport to re-add some stuff to my headers, like the OpenID delegate.

Of course there are still some things that need to be done, some of them more urgently then others. First off this site needs a better stylesheet. The default is actually quite ok, but I want something with more personality. I’ll also have to go through my old posts and clean them up a bit, the automatic conversion did some funny things at times. I also want to re-integrate Flattr and PostRank, but I’m not exactly in a hurry when it comes to that.

I hope this post was useful to some of you, I’m definitely happy with my new blogging setup.

Information Overload 2011-09-25

This week’s issue is shorter than usual since I spent 4 days in Helsinki to attend Frozen Rails and then had to prepare my talk for Linuxwochenende 2011. I also had to deal with a non-functioning hard-disk in my MacBook Pro, it still remains to be seen if the disk failed or if it’s just the SATA cable.

Frozen Rails Recap

I spent the first half of this week in Helsinki at the excellent Frozen Rails conference and thought I’d share some impressions with you:

Monday: when we (team Tupalo that is) finally got to the pre-opening event it was rather empty already, but we managed to collect the leftovers and get a party going that was very fun and helped in getting to know many people quickly. Later that night we picked up a jet lagged Ryan Smith (Heroku) from his hotel and stayed out much longer than we should have… ;-)

Tuesday: Arriving at Finlandia hall still a bit hungover, I soon got very excited by what I saw around me. The conference is rather small, which in my opinion is one of its strongest points, since it’s very easy to actually get to talk to a lot of the attendees. The overall atmosphere is very amicable, so you barely ever feel like you are intruding on someone when you strike up a random conversation. Talk-wise it started with Geoffrey Grosenbach’s (PeepCode) keynote, which was nice but not overly exciting. This was followed by a spontaneous talk by Jeff Kasimir (Jumpstart Lab) titled “The Problem Is In Your Ruby”, which was absolutely fantastic. I also got a chance to talk to Jeff about potential cooperations with RubyLearning later, let’s see if that gets anywhere. I then took a couple of hours off for some socializing, before watching Jeff’s second talk Blow Up Your Views. The last talk I saw that day was by the Travis CI team and I enjoyed it so much that I immediately switched one of my own projects to Travis. After the conference we had dinner in the excellent Soul Kitchen, followed by some drinks at A21 and Bar Loose.

Wednesday: Despite a lack of sleep I dragged myself to Richard White’s (UserVoice) keynote, who talked about startups and entrepreneurship. That was followed by the very interesting How GitHub Uses GitHub to Build GitHub by Zach Holman (GitHub, surprise). I then spent some time hacking a little on a bit of Ruby code for my lightning talk, but went to see Ryan Smith’s talk on how stuff works at Heroku. After the coffee break I sat in “Joseph Ruscio’s” (Librato) talk Implementing a RESTful API with Ruby the Right Way, but I must admit that I was a bit tired and didn’t pay as much attention as the talk deserved. The last talk was my personal favorite, Debugging Ruby Performance by GitHub’s Aman Gupta (I have some notes as an Emacs org-file on GitHub). The conference ended with some lightning talks, including our own on hack weeks at Tupalo. For dinner Heroku invited some 25 or so people to the expensive Hotel Kämp, where I spent most of the time talking to Topfunky and his friends. We then went over to Le Bonk to join the GitHub drink up, but due to a non-disclosure agreement with myself no details about this evening will be made public ;-)

All in all a very nice and well organized conference, that for me has the perfect size. Congrats and thanks to the team for organizing such an awesome event! BTW: someone set up a GitHub repository with Frozen Rails slides, photos and notes, check it out!

Information Overload 2011-09-18

Event Tip: Coded Cultures 2011

The awesome folks of 5uper.net are organizing the Coded Cultures festival, an event I highly recommend! Here’s their press release:

CODED CULTURES
CITY AS INTERFACE
FESTIVAL 21/09 – 02/10/2011
TALKS.EXHIBITIONS.WORKSHOPS.

Vom 21. September bis 2. Oktober 2011 wird in Wien das Festival CODED CULTURES von der Gruppe 5uper.net veranstaltet. CODED CULTURES thematisiert die Schnittstellen von zeitgenössischer Kunst, Medien, neuen Technologien und deren Auswirkungen auf Gesellschaft und Kultur. Im Mittelpunkt stehen europäische Positionen einer aktuellen Kunstpraxis, die sich auf Medien und deren (Re-)Konfiguration zwischen urbanem und virtuellem Raum konzentriert.

Im Zeitraum von zwei Wochen wird von über 100 Künstlern, Kulturschaffenden und Mitarbeitenden das größte Wiener Medienkunstfestival an 13 Locations in Wien präsentiert.

CITY AS INTERFACE
Im Jahr 2011 konzentriert sich das Festival mit dem Untertitel “City as Interface” auf die Stadt als Austragungsort künstlerischer Interventionen. Dabei wird die Stadt als experimentelles Areal für neue künstlerische Anwendungen gesehen, als Ort an dem künstlerische Prozesse in unterschiedlichsten Formen der Interaktion eingreifen können.

Künstlergruppen, Kuratoren und Forschende setzen sich mit öffentlichem Raum außerhalb der “gesicherten” Strukturen dezidierter Kunstareale auseinander. Digitale und mediale Kunstproduktionen spielen mit den Bereichen an der Schnittstelle zwischen realen und virtuellen Räumen und vermitteln, wie neue Medientechnologien die Art und Weise unserer Orientierung und die Prozesse unserer Umweltwahrnehmung verändern.

AUS DEM PROGRAMM
21.09.2011: Eröffnung und Pecha Kucha Night: ODEON Serapionstheater
22.09.2011: Fokustag Donaukanal: Badeschiff, Adria, Urania, Central Garden
23.09.2011: Fokustag MuseumsQuartier: RaumD, Electric Avenue, quartier21
24.09.2011: Fokustag 1020: LABfactory, This.Play Space, Glockengasse
No9, MAGAZIN, Lust Gallery
27.09.-30.09.2011: Talks / Workshops: Urania (Mittlerer Saal), This.Play Space
01.10.2011: Lange Nacht der Museen / Abschlussveranstaltung

Unfortunately I don’t know if I’ll really make it, since the next two weeks will be super busy. I’ll definitely try to drop by though.

Information Overload 2011-09-11

Information Overload 2011-09-04

This week’s Information Overload is slightly shorter due to a trip I took, hope it’s still interesting though.

Information Overload 2011-08-28