Last week we were in Portland for the 8th annual RailsConf, the largest gathering of Ruby on Rails developers in the world. For some of us it was a return visit to RailsConf and to Portland, but for most it was the first time and the general consensus was the same; that RailsConf is a very unique mix of social, educational and hands-on learning events.
“I’ve mostly been to single vendor conferences before, but RailsConf was a nice change, it’s much more community driven,” – Piotr Banasik, Engineering (Co-Founder).
RailsConf 2013 was not the only reason we were stoked to be south of the border in Portland, Oregon. The City of Roses is also the only place you can get Voodoo Doughnuts, it has over 30 microbreweries and as a result hundreds of specialist ales, it boasts an impressive lineage of tech history and has been nicknamed the ‘Silicon Forest’ because of it’s inspiring landscape – all in all, we felt right at home. And the home we stayed in was pretty awesome, too.
The Best Bits of RailsConf 2013
With more than 20 talks a day, the conference was a real immersion into what the Ruby on Rails community had been doing, thinking and achieving for the last year. It was tough to slim it down to these eight favourites, as chosen by our very own Payroll Hero Adventure Engineers.
1. Volatiles and Stables – Michael Lopp
“It was great hearing about the need for volatiles and stables in a company, it certainly gives you a fresh perspective on the skills of your colleagues and yourself.” – Dane Natoli, Engineer.
In this talk, Michael proposed that a business needs two kinds of engineers, Volatiles and Stables, and that both play a major role in productivity and innovation. He outlined that ‘stables’ play nice with others, are careful and work to mitigate failure; whereas, ‘volatiles’ define strategy rather than follow it, do not see failure as an option and see risk as a thrill. It certainly got each of us thinking about which box we fall into.
Recommended Reading: head over to Michael’s blog post on the topic here at RandsinRepose.com to find out if you are a volatile or stable; or even just to learn how to juggle the two personalities efficiently in the workplace.
2. Describing Your World with Seahorse – Trevor Rowe
“Seahorse looks like a very promising cross platform API framework, we’re curious how it will evolve over time. With Amazon Web Services behind it it should at least maintain momentum for their own APIs.” – Piotr Banasik, Engineering (Co-Founder).
Trevor Rowe is a software developer at Amazon Web Services, he authored the Seahorse tool, worked on integrating Paperclip with the aws-sdk gem, and has contributed to a variety of other open source projects. Trevor’s talk introduced us to the Seahorse language, a DSL for describing API operations for just about any web service. He introduced us to what Seahorse does and showed us that once you have your API described using Seahorse, you can essentially create an entire API client library with one line of code.
Recommended Reading: Sadly we can’t find any slides for this presentation right now, but if we come across any we will update this post as well as posting it to our Facebook page.
3. Incremental Design: A conversation with a designer and a developer – Rebecca Miller-Webster and Savannah Wolf
“It was interesting for me to see how design and Engineering interact at another company. I hope to apply some of the learning in PayrollHero’s product development process.” – Adam Baechler, Product Development (Co-Founder)
Rebecca and Savannah addressed two problems that everyone in this industry has faced from time-to-time and asked “developers, how many times have you had to completely rip out your hard earned code for a totally new site design?” and to designers “how many times has a re-design taken four times as long as the developer said it would and not looked good in the end?” The resolution, they proposed, was to change to using an incremental approach to design.
This designer/developer talk walked us through an introduction to incremental design, how to design with incremental changes in mind and how to develop for incremental design, including utilizing SASS, structuring your mark-up and CSS, and structuring your Rails views and partials.
Recommended Reading: Rebecca and Savannah’s slide show on incremental design from RailsConf 2013 is available to read, right here at Speaker Deck. You should dive in today, it will change how you work tomorrow.
4. No Traffic, No Users, No Problem – Jim Jones
“Jim showed us some cool tools for using Mechanical Turk for Usability testing and definitely gave us some food for thought” – Adam Baechler, Product Development (Co-Founder)
Another talk highly recommended by Adam was ‘No Traffic, No Users, No Problem!” by Jim Jones. “Should the signup button be red or blue? Does my site’s sales pitch sound awkward? What will the user think about my site the first five seconds they visit?”, asked Jim. His talk then walked us through Using Rails and Amazon’s Mechanical Turk service, how to perform usability tests, A/B testing and how to gain valuable feedback on your site before launching to a single real user.
Recommended Reading: If you’ve never heard of Amazon’s Mechanical Turk, or you’re struggling to get valuable usability information with your current methods, you should certainly watch Jim’s slideshow, here on Slideshare.
5. How Shopify Scales Rails – John Duff
“Seeing how Shopify scale having so many request at the same time was very interesting, they had a problem that startups usually don’t have, they just had so much traffic!” – Florent Lamoureux, Front-end Engineer
The first line of code was written for Shopify nearly 10 years ago to power an online Snowboard shop. Now the years have passed and today Shopify powers over 40 thousand online stores, processes up to half a million product sales per day and has over 30 people actively working on Shopify – making it the longest developed and probably the largest Rails code base out there. As a start-up, we really found value in hearing their story of how Shopify has had to evolve to meet its immense growth and the needs of its customers, layer by layer.
Recommended Reading: If you need a quick boost of entrepreneurial inspiration we recommend watching Shopify’s talk on YouTube.
6. Morning Keynote Talk – Yehuda Kats
Yehuda’s talk was a big hit with Suman Mukherjee, one of our Adventure Engineers. Unfortunately, because the talk was morning keynote we have not been able to find any slides to share with you but Suman offers this great, personal evaluation.
“Yehuda’s talk mainly concentrated on how not to write adhoc JavaScript and provide a good structure to it. He pointed out how turbolinks and JavaScript, bound to data attributes, makes the JavaScript clumsy and hard to maintain.” – Suman Mukherjee
Recommended Reading: Yehuda Katz is a member of the Ember.js, Ruby on Rails and jQuery Core Teams and co-author of best-selling jQuery in Action and Rails 3 in Action. He is a very influancial member of our community and we recommend following him at his http://yehudakatz.com/ or on Twitter @wycats
7. From Rails To The Webserver To The Browser – David Padilla
“From Rails to the Browser to the Web Server was very interesting. David taught us about Rails internals and it was great to hear from him how it all works under the hood.” – Florent Lamoureux, Front-end Engineer
David asked a room full of developers “do you know exactly how those HTML documents end up in a browser?” and his talk showed us all of the components that make the magic happen. We dissected the relevant code within Rails, Rack and the thin web server to discover exactly how the web server starts and listens to a TCP port, communicates with Rails and returns the HTML document that your browser parses.
Recommended Reading: If you’d like a bit of practical reading for your lunchbreak or morning commute, David’s slideshow is available to read here, on SpeakerDeck.
8. The Magic Tricks of Testing – Sandi Metz
“Sandi talked about how to write tests that you don’t hate. She focused on what parts of the code should be tested and how certain tests do not provide any value but add maintenance overhead. However she did only talked about unit testing” – Engineering (Founding Team)
Sandi, winner of the Ruby Hero Award, said exactly what we were all thinking “Tests are supposed to save us money, right. How is it, then, that many times they become millstones around our necks, gradually morphing into fragile, breakable things that raise the cost of change?” Sandi’s answer was that we could be writing too many tests and testing the wrong kinds of things. This talk striped away the veil and offered simple, practical guidelines for choosing what to test and how to test it.
Recommended Reading: Finding the right testing balance isn’t magic, but if you still feel as though you’re having the wool pulled over your eyes you should definitely watch Sandi’s slides on ‘The Magic Tricks of Testing’, here on SpeakerDeck.
Well that is the end of our RailsConf 2013 review, we hope you find some of our recommendations useful and valuable in your own work.
But You Didn’t Mention The Talk By…
There was a lot for us to cover, and we picked out only a few of the gems. If there’s a particular talk you’re looking for, most of the presentations can be found here, on GitHub.