We are proud to present you 3rd annual RubyShift 2012, an independent non-profit conference on Ruby, Clojure, NoSQL, and satellite technologies with accent on making new friends, being inspired, and having fun.
RubyShift 2012 will be held on Saturday and Sunday, September 29—30 in Kiev, Ukraine.
Speakers
Alexey Vasiliev
PostgreSQL in Highload Projects
PostgreSQL is a feature-packed relational database that every Rails developer should consider using. Why? I will discuss the main reasons of using this database in this talk.
Alexey Vasiliev is a software engineer at Railsware in Kiev. He's developed such products, as: PopCornUA (android and iphone applications), MongodbLogger (logger for Rails), SmtRails (shared mustache templates for Rails), PIRO (the rocket for pivotal tracker account) and many others. Also Alexey is a creator of Open Source training manual for setting up and scaling of PostgreSQL in Russian.
Alvaro Videla
RabbitMQ Hands On
In this talk we are going to see a short theoretical introduction to RabbitMQ and messaging in general to later dive into a live coding session to see how implement messaging into our applications. The live demo will go from starting the server and issuing basic administration commands up to creating several consumers and publishers. We will implement use cases ranging from a basic queue server to a publish subscribe system. The goal of the talk is two fold: to see how easy is to implement a solution around messaging and to understand that we don't need to be a "big player" in order to take advantage of RabbitMQ.
Alvaro Videla works at VMWare as Developer Advocate for Cloud Foundry. Before moving to Europe he used to work in Shanghai were he helped building one of Germany biggest dating websites. He co-authored the book "RabbitMQ in Action" for Manning Publishing. Some of his open source projects can be found here. Apart from code related stuff he likes traveling with his wife, listening/playing music and reading books.
Nick Sutterer
Off The Tracks — Challenging The Rails Mindset
Nick Sutterer is proud to be a member of the Ruby open source community. His Cells and Apotomo projects have been bringing increased view modularity and event-driven programming to Rails for years. He has enjoyed attending, and speaking at, Ruby conferences around the world. Buy him a beer sometime, and with very little prompting, he will tell you why there should be no such thing as a double-render error, why you should not confuse your models with your resources, and how to play a mean bass in a punk rock band.
Piotr Solnica
DataMapper 2 — an object mapping toolkit
Ruby developers are living in the world of Active Record. No matter what ORM you’re using, it’s an implementation of the Active Record pattern. There’s been a recent discussion in our community about separating business logic from the persistence concerns. People are experimenting with different approaches but they still use an ActiveRecord ORM under the hood.
In this presentation Piotr will give you an introduction to the development of DataMapper 2 - the first true implementation of the Data Mapper pattern in Ruby language. He will talk a little bit about ORM patterns and show you core parts of DM2 that already exist and the ones they’re going to build soon.
Roy Tomeij
Modular & Reusable Front-End Code with HTML5, Sass and CoffeeScript
A lot of Ruby developers use Rails for their everyday projects. Often they toy around with front-end themselves or outsource it, ending up tangled in a web of css-all-over-the-place.
Keeping your front-end code clean is hard. Before you know it you're suffering from CSS specificity issues and not-really-generic partials. Find out how to keep things tidy using the HTML5 document outline and modular Sass & CoffeeScript, for truly reusable code.
Michael Klishin
Becoming an Immutant: A Year with Clojure
Over a year ago I switched to using Clojure as my primary language. This will be very much an experience report: you will learn what is great about it, what isn't, how it changed my perspective on software development, simplicity, concurrency and alien life forms.
Michael is a serial OSS contributor, travis-ci.org core team member, trance music lover who is passionate about JVM languages, concurrency, studying (natural) languages, data and writing boring bio blurbs for conferences.
Aleksander Dąbrowski
Sinatra Autopsy
Since medieval, autopsy of dead corpse was the best way of learning how human body works. We will use the same technique, examinating Sinatra, to learn how to write better code. With its 1740 lines of code, this piece of software is great example of Ruby application. We will see what jewels are hiding in its chest, notice some good practice, but also we will take a look at bad and stinky parts. Since Aleksander's only commit to Sinatra was concerned documentation, he is the right person to lead the autopsy. He will look at Sinatra with the fresh eye. Konstanin Haase won't get any hurt (probably).
Lourens Naudé
ZeroMQ: Scriptable sockets
ZeroMQ is a socket abstraction and concurrency framework that's changing the way we think and reason about distributed systems. Mailboxes, atomic message delivery and swappable transports allow for fast, flexible and resilient network topologies. It's I/O model also sits very well with all Ruby implementations.
Lourens is an independent consultant currently based in sunny Madeira Island, but originally from South Africa. He specializes in backend / platform / domain solutions and is well versed full stack, from VM to high level protocols and known for his offbeat Ruby patches and extensions. Current interests include disruptive communications technology like ZeroMQ / libxs and he is working on ZeroMQ monitoring features for better operations support.
Marcin Kulik
ascii.io: No nonsense asciicasting for serious hackers
In this talk Marcin will present new tool in developers' arsenal: ascii.io.
Why this might be interesting to Ruby developers? The whole service is built from many parts written in many languages but the center of the whole platform is a Ruby on Rails app that glues everything together. It's an interesting example of use of many unusual techniques (one example: using tmux in Resque background jobs for thumbnail/preview generation O_o, how cool is that?). The presentation will show you why (and how) you should use tools from outside of Ruby ecosystem in your Ruby apps.
Marcin is an active Ruby community member and open source contributor. You could have seen him on EuRuKo 2010 conference where he was giving presentation about interesting Rack stuff. He's also frequent speaker on Cracow's Ruby users group meetings.
Sergey Boiko
Deadsimple JRuby troubleshooting with JVM-toolset
Main selling point of JRuby is a real multithreading without GIL. But after working with it in production and troubleshooting different issues he believes that main benefits of using JRuby is a bunch of great JVM tools.
Stucked threads, memory leaks, blocked connections, weird errors — they all can be investigated and fixed quite easily in a short amount of time. In this talk he will tell you about JVM-toolset and show how to use it for troubleshooting your production environment.
Sergii Boiko is a software engineer at Railsware. His main scopes of interest are language design, scaling and troubleshooting. He likes to collect different pieces of knowledge about debugging and apply them for resolving pesky production issues.
Michał Papis
RVM 2: what we have learnt and where are we going
Most of you have tried RVM at some point or at least heard of it. I want to share with you what I have learnt while supporting RVM users. We will cover The Grand Plan for RVM2, how it will be different and why RVM users will benefit from it.
Michał works at EngineYard as RVM Release Manager. He uses shell for about 14 years and ruby for about 5 years, he is core team member of RVM, SMF, RailsInstaller and contributes to number of ruby and shell related projects.
Marat Kamenschikov
What is Hypermedia API?
RoR did a great thing to make REST popular. Now it turns out that original REST approach is not what we think REST is. But what it is then? Hypermedia API is a new term which stands for original REST approach. What is the difference between "REST" and Hypermedia API (true REST)? What is Hypermedia? Why is it needed? These questions will be covered in my talk.
Rails guy since 2007, pattern-lover and philosopher, always try to look deep into the things and understand the core concepts, not only look at the tops. This led me to Hypermedia now and we'll see what will be next.
Tickets
This year we have two ticket categories: an Individual ticket for $65 and Supporter ticket for $250. For Supporter one we'll place your logo on the web site and will give you a personal thank you from our team.
We do our best to be closer to the open-source community. Please drop us an email if you contribute or involved in organization of a local group and we'll get you a discount or a free ticket.
Last but not least, we are going to transfer 10% of our ticket revenue to an open-source project of choice to appreciate their hard work. You'll be prompted to choose one from the list on checkout. Feel free to ping us at @rubyshift in case of questions.
Location
Venue address: 1/3 Myhailivska Street, Kiev, 01001, Ukraine. (Independence Square, Maydan Nezalezhnosti)
Hotel Accommodations
So you're coming to a conference? Great! It's good to take a good nap after the party. Here's a list of hotels and hostels within a few minutes walking from the venue.
Most of the hotels are within 80 USD price range. Great hostels average 15 USD.
| Hotel | Phone Number | Distance | URL |
|---|---|---|---|
| Hotel Kozatskiy | +380 44 279 49 14 | 0.02km | http://kozatskiy.kiev.ua |
| Khreschatyk Hotel | +380 44 596 80 00 | 0.1km | http://khreschatik.kiev.ua |
| Hotel Dnipro | +380 44 254 67 77 | 0.1km | http://dniprohotel.ua |
| Hotel Ukraine | +380 44 278 28 04 | 0.1km | http://ukraine-hotel.kiev.ua |
| Basseynaya Apart Hotel | +380 67 249 79 67 | 0.9km | http://bit.ly/Niktgg |
| Mini-hotel on Kropivnickogo | +380 44 235 90 46 | 0.9km | http://bit.ly/NXxfea |
| Hostel | Phone Number | Distance | URL |
| City Centre Hostel | N/A | 0.1km | http://bit.ly/PcnPkC |
| Roots Kiev Hostel | +380 44 270 68 78 | 0.2km | http://hostel.kiev.ua |
| Kiev Hostel & Lodging | +380 93 813 39 59 | 0.3km | http://hostelukraine.com |
| Down Town Hostel | +380 98 263 65 06 | 0.9km | http://bit.ly/QqT2ff |
| Delil Hostel | +380 44 278 70 86 | 1.5km | http://delil-hostel.com.ua |
Schedule
| Saturday, Sep 29th | Sunday, Sep 30th | |
| 9:00 | REGISTRATION | — |
| 10:00 — 10:45 | DataMapper 2 — an object mapping toolkit (Piotr Solnica) |
What is Hypermedia API? (Marat Kamenschikov) |
| 11:15 — 12:00 | Sinatra Autopsy (Aleksander Dąbrowski) |
Modular & Reusable Front-End Code with HTML5, Sass and CoffeeScript (Roy Tomeij) |
| 12:00 — 13:30 | LUNCH | |
| 13:30 — 14:15 | Deadsimple JRuby troubleshooting with JVM-toolset (Sergey Boiko) |
ascii.io: No nonsense asciicasting for serious hackers (Marcin Kulik) |
| 14:45 — 15:30 | Off The Tracks — Challenging The Rails Mindset (Nick Sutterer) |
Becoming an Immutant: A Year with Clojure (Michael Klishin) |
| 16:00 — 16:45 | RVM 2: what we have learnt and where are we going (Michał Papis) |
ZeroMQ: Scriptable sockets (Lourens Naudé) |
| 17:15 — 18:00 | RabbitMQ Hands On (Alvaro Videla) |
PostgreSQL in Highload Projects (Alexey Vasiliev) |
| 18:00 — 18:45 | Lighting Talks | — |
| 20:00— | Afterparty at Lucky Pub | |









