Ruby on Rails Extreme Crash Course
A talk I have given in December 2007 to convert 9elements to Ruby on Rails. Intended to present the basics of Ruby and Rails in about 3 hours.
An introductory talk on Git given at Barcamp Ruhr 2 in March 2009 (German only).
Talk given at Railscamp Germany 3 in Münster in 2010 about the mechanics behind Ruby’s metaprogramming capabilities (German only).
A talk about Gits data structures and graph-oriented nature, combined with practical tips for using rebase given at Barcamp Ruhr 4 in March 2011.
An introductory talk about AngularJS. A HTML5 presentation done in reveal.js and spiced up with my own little jsfiddle clone.
Articles and Texts
Some longer articles I have written in places other than this website.
Getting started with Ruby on Rails
An article I wrote for Smashing Magazine in March 2009, outlining the basic ideas behind Ruby and Rails, intended to provide enough orientation for interested programmers to educate themselves. Pretty outdated by now, but still useful to get a rough overview.
You can find all of my open source code at http://github.com/janv/.
REST in Place
REST in Place is an AJAX Inplace-Editor that talks to RESTful controllers. It requires absolutely no additional server-side code if your controller fulfills the following REST preconditions:
- It uses the HTTP PUT method to update a record
- It delivers an object in JSON form for requests with “Accept: application/json” headers
The editor works by PUTting the updated value to the server and GETting the updated record afterwards to display the updated value. That way any authentication methods or otherwise funky workflows in your controllers are used for the inplace-editors requests.
Tumblr Pushstate Extension
As much as I love tumblr’s auto pagination, of of the big gripes I have with it is that after a while of scrolling it becomes absolutely deadly to mistakenly click on a link that makes the browser leave the page. Because all that content was loaded with Ajax, there’s no way of getting back to where you were except to repeat the scrolling orgy again.
My Extension fixes this by using the pushState-API to update the browser location with the current page while you scroll. When you leave the page, you can hit back and continue where you left instead of having to scroll there again.
Haskell-Nxt is a library to control Lego Mindstorms NXT Bricks from Haskell. Since the nature of the communication with the Brick is stateful, the library consists almost entirely of IO monads.
Haskell-NXT was my first piece of Haskell software and probably has a lot of rough edges. I wrote it for a first attempt at finding a topic for my diploma thesis.
We developed this at 9elements because we love HAML, we love CoffeeScript and we don’t want to have a media break in our toolchain. If you want to see it in action, feel free to take a look at the 9elements homepage.