Week 298: Berlin odds and ends, hackday

Horribly late but here goes anyway. On Monday I briefly dropped by the Makers Loft and finally managed to see the Third Wave crew again.

Sake started up in earnest and team participation started to ramp up. Just now I piped the git commits into our communal chatroom, something I should have done a lot earlier because it so nicely shows the active heartbeat of a project.

I installed two applications I had been holding out on. I’m trying to backup my files to Amazon Glacier using arq but Berlin bandwidths are not very conducive to sending 192GB to the internet. Also I installed Flux to modulate my screen temperature into something a bit warmer for these cold winter days.

I think this bears sharing regularly:

The rest of the week sake kept up. On Tuesday I picked up my visa from the Russian consulate for the trip to Moscow. I’m on the plane back to Berlin as I’m typing this.

Wednesday I had a coffee with Niels van der Linden, a Dutch national who’s living in Istanbul and is active in the startup scene over there. Lots of interesting parallels and things to learn from each other in that one. We had a nice lunch with Praxis and then I went to the Iron Blogger Berlin meetup.

Picked up a pack of these stickers

A sizable part of the week was spent finalizing paperwork both for my German bookkeeper and for various institutions back in the Netherlands. After making my rounds through the city I dropped by at the ÖPNV hackday Apps and the City at Supermarkt.

Apps and the City hacking around

I couldn’t hack as much as I wanted because I needed to send my slides to Moscow for the following week, but once I finished those I still managed to get two small things in:

Firstly I uploaded the sample file of the various POIs for Berlin’s S-Bahn stations to Google Fusion Tables to be able to get a quick feel for the data. What’s in it, what’s not and how accurate it is.

Sadly, there is a full dataset available with the points for all stations in Berlin, but that is geocoded in some obscure German datum and therefore cannot be readily loaded into Fusion Tables. Ready usability is key for many hackday datasets, even if other participants had more time to do a possible conversion than I did. For a data provider: you show knowledge of the outside world by supplying GPS.

The issue to be solved with this dataset would be: finding your ideal way around a station for a transfer or your ideal exit for your final destination and based on that information to chain back and guide you into the optimal carriage of the underground train.

The first approach, to brute force the problem by tabulating all possible entries and exits, turned out to quickly balloon into something horribly large. After some thinking I thought up a graph representation of a subway station and demonstrated with a proof of concept “Stationsrouter” that you can route through that using the well-known A* algorithm.1

This can be easily extended for for instance wheelchair access by using a weighted graph and setting the weights of stairs to infinity for those users. I posted the algorithm and a rough graph coding online, I need to find the time to make the interface more attractive (probably by porting it to Javascript) and to transcode a couple more stations. To figure out where an arriving train lands on a platform and therefore which graph segment that corresponds to wouldn’t be too difficult.

There's a bride dancing in the middle of the street. #xberg

On Friday I was supposed to take an introductory German language course, but the hackday shenanigans made sure I missed that early appointment. Trying to reschedule something for the new year to level up my Deutsch. We did a capacity planning session with Hubbub and I ended the afternoon by watching a bit of TEDxAmsterdam waiting for the new talk by Kevin Slavin.

On Sunday I met with Peter Bihr, Matt Patterson and Daniela Augenstein to talk about open government in Berlin and then the next day it was off to Moscow!

  1. Web developers many of which are self-taught and who are not regularly faced with problems that are not solvable using procedural programming and databases often have no idea how more difficult problems in the domain of computer science can be solved. Corollary: game development contains many many of these more difficult problems.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.