Published at 07.03.2014
We like developer meetups. That’s probably the reason why we found ourselves at the Berlin Ruby User Group (short: RUG::B) meetup at the Crealytics office yesterday. Just to recap the three talks and lightning talks real quick:
Table of Contents
First up was ‘Ruby Storm – Distributed work on a self-scaling system using RabbitMQ‘, where Steve Creedon and two of his co-workers at Wimdu walked us through their complicated integration processes of daily (data) feeds from partners for properties, availability and prices. Wimdu currently manages 360 000 properties with information on their availability and price, from 1700 partners. Creedon: “The first feed contained of 670MB XML, 30.000 prop, a steady daily feed for 1 partner. It took 27 for 1 script.”
‘Clevering up’ the whole thing, Wimdu first ‘got a bigger boat’. AWS brought the processing time down to 23 hours, which wasn’t the big win Creedon was hoping for. Making the computer sweat was a temporary fix, until they started task-boxing the work, both horizontally as well as parallel, keeping it simple by ‘building brains in jars’. The real plan B: running multiple processes and connecting them via a messaging broker (RabbitMQ). Splitting XML in chunks for the individual properties, converting those chunks to abstract JSON objects, then assembling them to a common form, 27 hours became 30 minutes.
On their decision for RabbitMQ, Creedon and his colleagues mentioned they wanted to work with a framework that knows how to start and stop the servers and manage the workers, with humanly readable statistics representing the number of queues, workers and masters. To showcase the workings of RabbitMQ they actually killed a server live – which was quite brave – and RabbitMQ seamlessly put another one to work.
In ‘It takes a village to make a programmer‘, Michelle tells us how she just landed her first job as a junior developer and how she got there. As I’m still fairly new to programming, I hope Michelle’s story will inspire people to help beginners feel more confident about learning to code.
A couple of tips, straight from Michelle’s hand-crafted slides:
/mentoringto your website if you’re looking to take on a student.
“When you use Rails, Sinatra, Django or any other web framework for that matter, and you save a session, you’re using cookies under the hood.” Konstantin Haase shares the story of Alice, Bob, ‘Recipetastic’, evil Eve who wants to get her hands on the recipes, and this Mallet person who wants to modify the list of ingredients. To fully experience Haase’s story telling capabilities, you should probably watch this recording:
Konstantin repeatedly referred to a talk he did in 2012, at Arrrrcamp: ‘We don’t know HTTP‘, which is also worth checking out.
During the lightning talks session, Arne Brasseur made us all giggle with his ‘Slippery Slides‘ – because Slippery slides are the best slides – presentation. Arne created a gem that ‘marries the Kramdown parser for Markdown with the flexibility of DOM manipulation with Hexp to generate HTML slides backed by either Reveal.js or Impress.js’. And it really quite neat. Go check out the documentation.
And Lisa Passing introduced the number of cryptoparties that are apparently taking place in Berlin. She stressed how many of these parties are workshops for non-tech people, where they can learn how to encrypt their emails or chat securely.
Tobias mentioned that the lovely people at Coderdojo Berlin, OpenTechSchool and Rails Girls Berlin (their next beginners workshop takes place on the 15th and 16th of March) always need more people helping out.
The next RUG::B meetup will take place on the 3rd of April. You can send in a talk (topic) via their website. We can’t wait to meet you there!