Schedule

Room 1 Room 2
8:30am - 9:15am Check In
9:15am - 9:55am English Welcome & Keynote
9:55am - 10:35am Coffee Break
10:35am - 11:35am English A Rails Criticism
Luca Guidi - @jodosha
Italian Opal, Ruby is back! ...on your browser!
Elia Schito - @elia
11:35am - 12:35am Italian Redis & Ruby like a pro
Stefano Fontanelli - @stefontanelli
English Securing your API via Oauth
Alessio Della Motta - @alleadel
12:35am - 1:35pm Italian Fat models must die
Ju Liu - @arkh4m
Stefano Verna - @steffoz
Italian Eseguire e monitorare applicazioni Rack con uWSGI
Roberto De Ioris - @unbit
1:35pm - 2:50pm Lunch
2:50pm - 3:35pm English Roll your own web crawler
Francesco Laurita - @flaurita
Italian Ruby & la scienza
Raoul JP Bonnal - @ilpuccio
Francesco Strozzi - @fstrozzi
3:35pm - 4:20pm English Concurrency vs Parallelism
Federico Ravasio - @razielgn
English The Client-Side on Ruby
Patrick Mulder - @mulpat
4:20pm - 5:20pm English DDD in Ruby
Emanuele DelBono - @emadb
Italian Rubymotion for fun and profits
Simone D'Amico - @damicosimone
5:20pm - 6:05pm English Code it from scratch
Francesco Canessa - @makevoid
English Cooking lessons with Vim and Tmux
Claudio Ortolina - @cloud8421
6:05pm - 6:30pm English Greetings & Prizes

A Rails Criticism

A deep insight on why Ruby on Rails has revolutionized web development.
This talk will focus its attention on the Rails "Golden Path", the reasons to its success, the most common problems, and how its API can be improved.
We will learn to benefit from a tool as powerful as it is dangerous, how to mitigate architectural, design and testability implications for your applications and how to improve the quality of your code.
Luca Guidi
Passionate web developer, he spent most of his career working with Rails, since its early days. In his free time, he loves to travel, spend time with his family, contribute to open source, blog about technology, and mix beats. He is an avid photographer and tea lover.

Opal, Ruby is back! …on your browser!

Opal is a production ready Ruby-to-Javascript compiler. In this presentation I will talk on how Ruby can be used to build awesome code for the browser. Keep applying all of your OO design skills having less context switch and increasing happiness!
This presentation will cover:
- a general overview and why I feel so good doing Ruby on the client
- some internals along explanation of implementing choices
- real world (™) use cases (including code ported from the server to the browser)
- fun! :-D
Elia Schito
A Ruby/Rails developer @mikamai, catholic, who loves his beautiful wife and his wonderful children. Opal core team member.

Redis & Ruby like a pro

Redis is an open source advanced key-value store. It can contain strings, hashes, lists, sets and sorted sets. Its greatest feature is that you can run atomic operations on these types, like appending to a string; incrementing the value in a hash; pushing to a list; computing set intersection, union and difference.
This talk shows how use Redis and Ruby to build an high scalable, reliable and concurrent infrastructure of services using the Publish/Subscribe messaging paradigm and distributed locks among services. All the examples coming from a large scale application that handles hundred millions of messages every day.
Stefano Fontanelli
I am a software engineer from Florence (Italy) with 8+ years of experience in software development. I studied at Scuola Superiore Sant'Anna (Pisa) as PhD student and I founded a startup called Asidev. Currently I'm backend developer at Gild, a Californian startup that brings Science into hiring. I love writing large scale applications that must be highly scalable, reliable and efficient.

Securing your API via OAuth (2.0) and Ruby on Rails

Need a uniform and standard mechanism for authorizing clients to access remote services and resources securely? OAuth is what you’ve been searching for! OAuth is an open standard widely adopted over the Internet and many big companies started supporting it, e.g., Facebook, Google, etc.
In this talk we explain OAuth protocol basics and theory, pointing out strengths and weaknesses. Eventually, we show how to implement a typical OAuth authorization scenario where an iOS client is authorized to consume services via OAuth, exploiting Ruby on Rails and Doorkeeper on the server side of the force.
Alessio Della Motta
Alessio Della Motta is a software architect and engineer interested in almost every field of computing. His technical background covers a wide range of technologies and languages and his focus is on enterprise and distributed systems.
Alessio completed his master’s degree at the University of California, Irvine in 2010. Then he started working as an IT consultant specializing in EAI and SOA. Now he manages and designs software solutions at Mavigex, a small company in Bologna.
In his spare time, Alessio likes to play guitar, football and to read big divulgative tomes on math and physics.

Fat models must die

Il concetto “Fat Models, Skinny controller” è da sempre uno dei cavalli di battaglia di Rails ed è uno dei principi fondamentali intorno a cui ruota il suo stack. Purtroppo, seguire ciecamente questo pattern spesso porta ad una crescita smisurata delle responsabilità dei modelli, che col passare del tempo e dei commit si trasformano in matasse di codice ingarbugliato e ingestibile.
In questo talk verranno esplorate differenti metodologie che si possono seguire nella pratica per mantenere il controllo del proprio progetto. Si descriveranno i pattern più diffusi proposti dalla community Rails per risolvere il problema della crescita del codice nel medio-lungo periodo: incominciando con concerns e presenters per passare a service objects e DCI, verranno spiegati i pregi dell’utilizzare pratiche più OOP per gestire con soddisfazione la complessità delle nostre applicazioni.
Ju Liu
Ingegnere informatico, appassionato di tecnologia e conoscenza. Si è dedicato allo sviluppo di applicazioni web, con un focus particolare a metodologie di lavoro agili e al Test Driven Development. Innamorato di Ruby on Rails, del codice elegante e di Vim.
Stefano Verna
Entusiasta di nuove tecnologie, TDD e metodi agili di sviluppo. Attivo contributore open-source, appassionato sviluppatore Ruby. Conosciuto dai più per l'estensione per Fire­fox Do­wn­The­mAll!
Nel 2010 sono tra i fon­da­to­ri di we­Lai­ka, so­cie­tà di consulenza torinese spe­cia­liz­za­ta in sviluppo di ap­pli­ca­zio­ni/ge­stio­na­li in Ru­by on Rails e sviluppo mo­bi­le iOS ed An­droid.

Eseguire e monitorare applicazioni Rack con uWSGI

Nato nel 2009 come semplice server per applicazioni WSGI, il progetto uWSGI in 4 anni e' cresciuto a dismisura diventando oramai un framework per costruire applicazioni di rete ad ogni livello. A meta' 2012 (dopo piu' di un anno di lavoro) e' stato finalmente completato il supporto per lo standard Rack (l'equivalente ruby di WSGI).Ora uWSGI puo' eseguire framework come RubyOnRails e Sinatra aggiungendo "for free" tutte le features che gli hanno permesso di diventare l'application server di riferimento in realta' come Reddit, DotCloud, Activestate Stackato, Washington post e molti altri. Il talk introdurra' brevemente il progetto per poi presentare un caso di uso reale, ovvero come e' stata costruita l'infrastruttura di mytable.it, uno dei piu' grandi (forse il piu' grande) portale in italia scritto in Ruby On Rails.
Roberto De Ioris
Co-fondatore di Unbit e 20Tab, amministratore di sistemi UNIX da 11 anni (di fila..), lead-developer dei progetti uWSGI, BlastBeat, Koi-ha e altri di cui non ricordo neanche il nome. Prediligo la programmazione low-level ma non disdegno linguaggi come perl, python e ovviamente ruby

Roll your own web crawler

It is all about data.
Having the right data at the right time might make the difference between you and your competitor. Google can show you just what it can catch. If you know where to find the data of your interest, let's go deeper and roll your own web crawler framework.
Taking the advantage of the latest cool technologies I will show you how to build your distributed web crawler based on Redis and Mongo
Francesco Laurita
Francesco joined Gild in 2012 as a Lead Software Engineer, having fun writing complex algorithms on Gild’s data analysis backend. Prior to Gild, Francesco worked for more than ten years at FASTWEB, one of the biggest ISP companies in Italy, where he led business critical software. Francesco was also one of the top users on Coderloop, leading him to become one of the authors of challenges on Gild’s code evaluation system.

Ruby e la Scienza

Ruby anche scienza: la sua versatilità, insieme alle diverse implementazioni, offre nuove opportunità di utilizzo creando un ecosistema di strumenti e librerie applicabili a diverse discipline scientifice. Dalla biologia e bioinformatica, con il progetto BioRuby, alla matematica e statistica, con il progetto SciRuby, il numero di gemme e' in costante crescita (http://biogems.info).
Nuove tematiche, come il web semantico e la gestione della conoscenza, insieme a tecniche di data mining, machine learning e visualizzazione, vengono studiate, sviluppate e sperimentate in occasione di eventi internazionali quali CodeFest e BioHakathon. Lo stimolo a migliorarci, avere nuove idee, diffondere le librerie e gli strumenti prodotti ci ha condotti, ormai dal 2009, a partecipare al programma Google Summer of Code raggiungendo, anno dopo anno, progetti di successo, coinvolgendo nuovi sviluppatori e una massa critica di mentori in grado di stimolare sempre più la comunità.
Raoul JP Bonnal
Laureato nel 2003 in Informatica all'Università di Milano Bicocca, ha intrapreso la carriera di bioinformatico presso il CNR-ITB e un'esperienza in America e' ora responsabile della bioinformatica, sviluppo e analisi dati, presso l'Istituto Nazionale di Genetica Molecolare di Milano.
Insieme a Francesco Strozzi contribuisce al progetto BioRuby, parte della Open BioInformatics Foundation -OBF-, e sono mentori Google Summer of Code per le organizzazione OBF e SciRuby.
Francesco Strozzi
Laureato nel 2005 in Bioinformatica all'Università di Milano Bicocca, è responsabile dal 2011 della Core Facility di Bioinformatica del Parco Tecnologico di Lodi, per lo sviluppo software e l'analisi di dati genomici.
Insieme a Raoul JP Bonnal contribuisce al progetto BioRuby, parte della Open BioInformatics Foundation -OBF-, e sono mentori Google Summer of Code per le organizzazione OBF e SciRuby.

Concurrency vs Parallelism

What does it mean to structure a program in a concurrent manner?
Concurrency is about structure, while parallelism is an interpreter feature: the problem has to be solved by the programmer first.
What I'd like to show is how to think about problems, so to extract concurrent objects from the domain logic.
I'll also take a brief view on different patterns to achieve concurrency and which gems to use that implement one.
Federico Ravasio
That programming geek you'll find arguing about syntax on a late friday night, probably in front of quality Belgian beer.
When university was no longer fun, he started freelancing at Webrain and has been doing so ever since.
Longer version: http://www.linkedin.com/in/federicoravasio

The Client-Side on Ruby

In this talk, I would like to look at the options that Ruby offers to serve client-side web applications. With the example of Backbone.JS I would like to discuss first the elements of a client-side web application (events, rendering, data transport), and how this influences a web application stack (= separation of concerns)
Second, I would like to show how Rack and Sinatra can be used to serve directories of JavaScript files. Last, I want to show the relationship between Rack, Sprockets and the Asset Pipeline. Last, and I want to do a preview on loading multiple JavaScript files asynchronously through RequireJS-Rails.
Patrick Mulder
I started to get paid for developing user interfaces for Matlab end of the 90ies, progressed towards scripting Unix with Perl, Python and Java (Swing), and finally got infected by the Ruby-on-Rails around 2008. I have been developing web applications with Ruby since then, and rarely looked back.
I like blogging at http://thinkingonthinking.com and was recently invited to a panel discussion at Wroclove.rb 2013 on single page applications with different representatives of frontend frameworks (AngularJS, EmberJS and Backbone.js).

DDD in Ruby

When developers talk about Domain Driven Design they usually talk about Java or C# implementation and it seems that languages like Ruby or Python are not suited for these kind of architectures. During the talk I would like to show that every patterns described in the blue book can be written even in Ruby and sometimes the Ruby implementation is better than the Java one. Ruby is not a second a class language and its dynamic power could help a lot in writing complex business logic.
Emanuele DelBono
I'm a software engineer that is trying to become a polyglot programmer learning new languages and tools to develop better applications. I work as a lead developer and architect in CodicePlastico a small software house based in Italy, I'm responsible for the development of web applications primarily with ASP.NET MVC and Ruby on Rails and Javascript.

Rubymotion for fun and profits

Two years ago, at rubyday '11, I did a talk about Macruby and predicted the advent of something similar for the iOS platform.
The day has come, today we got a quasi-mature semi-opensourced toolchain for developing apps for Apple devices.
In this session I will introduce you to Rubymotion starting with a basic overview of what it's needed financially and in terms of know-how.
I'll show how it's blazing fast compared to ruby MRI and explain its limitations.
I'll go through some of the most popular gems and show you how ruby idioms and patterns are insinuating in the obj-c community.
Finally I will show come concrete code examples from my apps.
Simone D'Amico
I'm COO of Metwit, a platform that collects and analyse crowdsourced environmental data (especially weather).
I'm passionate about a lot stuff: XP and Agile (I'm coaching SCRUM), Devops (chef worshipper), Apple frameworks (Cocoa lover) and obviously Ruby (I used it before it was cool ;))

Code it from scratch

An overview about starting your app small and growing it bigger as you need, beginning with domain model classes "sketched" in ruby (yea, DDD) and then considering integrating various libs or implementing your own to reduce complexity and save time in the end.
Francesco Canessa
The average developer, ruby and javascript are my day-to-day languages, developeing multiple small open source projects and libraries based on tools I need.

Cooking lessons with Vim and Tmux

The purpose of the talk is to show how to tackle different tasks with a shell based environment composed of Vim, Tmux and other tools. The core idea is that we can use Rails conventions to make our workflow better. And being all of this modular, you can mix and match different solutions to fit your needs.
From the technical standpoint, I would perform small tasks live, with a video fallback.
Tasks include:
- file and code navigation with ctags
- smart interaction with a REPL
- Running tests
- Moving efficiently among models, controllers and views
I will use Hermes (http://new-bamboo.github.com/Hermes/), a bootstrap script that configures a shell based development enviroment on Mac. I've started the project with Damon Davison, a fellow colleague, and it's been my production setup for months now.
The main theme of the talk will be cooking: for example, having knife skills is important for any dish you want to prepare. In a similar fashion, being able to easily jump around files is also key in not breaking your flow.
Claudio Ortolina
Hello!
My name is Claudio, I'm an italian developer currently living in London and I work for New Bamboo (http://new-bamboo.co.uk).
I've been a Rails developer for a couple of years, with experience into the full stack (servers and puppet, plain old ruby/rails and coffeescript/javascript with tools like Backbone.js and Require.js.