Published by Simon Schoeters

RuPy 2009 roundup

Back from a few days in Poznań, Poland with the Belighted team for the RuPy 2009 conference. RuPy is a two day conference about Ruby and Python. It's the Ruby stuff we wanted to see.

Cells and Apotomo

One note wothy talks was the one by Michał Łomnicki and Nick Sutterer about Cells and Apotomo, Rails plugins for creating reusable web components. It's one of those things you don't immediately use but may be useful in a certain project. Still not sure if I'll ever use it but it looks a fairly simple solution to build interactive components.


The second day started with Paolo Negri with RabbitMQ, a messaging system based on the AMQP standard. It's platform neutral with lots of different packages and bundles to bind it with your favorite language (like Ruby). It's a way to exchange massages with a queuing system and looks really interesting. Sounds like a nice solution to replace own made batch queuing systems and is definitely more scalable. Worth to keep an eye on.

Mastering Git

The next one was Scott Chacon from GitHub. It's one of the more ‘traditional’ subjects compared with the previous two but the one we were all looking forward to and Scott did not disappoint: I finally understand why Git is better as SVN (insert lousy comments here). He started of with some SVN bashing to make his point and went on with a Git ninja training and what makes GitHub a great repository for sharing open source projects. Scott is a good speaker and knows how to get and keep the attention, this was definitely the best talk of the conference. Some things I'll try to remember:

  • Subversion keeps diffs, Git stores snapshots.
  • Git is faster and more efficient in disk space usages as SVN.
  • Branch often and use it as ‘environments’, switch contexts when needed.
  • Git (almost) never removes data.
  • You can start a clone and work on it without access rights from the owner, this helps collaboration.
  • It's frictionless (non linear): branch fast, merge it when done and remove the branch.
  • Read his free book: Pro Git.

Here is a quick example on how to create branch easily in Git:

git init # create a local repository
git branch # shows the current branch
git branch blue # creates a new branch called blue
git checkout blue # switches to the blue branch
# write some code
git merge blue # merge this branch with the master
git branch -d blue # removes the blue branch

Make sure to take a look at the git commit --amend, git blame <filename>, git blame -C <filename> and git bisect commands.

Also a big thanks to the CSS Ninja's for hanging out with us, it was nice meeting you guys.

Do zobaczenia!