Burlington Ruby 2014 Schedule

Ernie’s been writing code since he was 6 years old, but only getting paid to do so for the past 16 years or so. Sometimes he still can’t believe people actually pay us to have this much fun.

He’s the author of a bunch of Rubygems, some of which might even be useful, a contributor to Rails, a committer to Arel, and an ardent believer that all true first person shooters are played with a mouse and keyboard.

Have you ever had to wait 30 seconds for your front end app to load in development?

You must be using the Rails Asset Pipeline.

This talk will show you a better way.

Decoupling your Front End application from your Rails API gives you the best of both the Javascript and the Rails world. It will accelerate your development and help you write better, more maintainable code.

We build systems to help real people. But honestly, are we being that helpful in our interfaces? Or are we treating the copy as an afterthought and letting people fend for themselves? Instead of debating the latest design trends, let’s reflect on something that isn’t going away: the text on your website.

In this session, we’ll look at how strings, labels, forms, and flows shape the user experience. You’ll learn how to write clear copy and guide your readers through multipart interfaces in a friendly way.

The increase in web development vocational programs means a steady supply of junior developers, but are we prepared to help them become productive members of our teams?

These programs were created in response to the need for more developers, but I fear without apprenticeships to bridge the gap, we’re simply moving the bottleneck upstream.

In the absence of an established, structured program, I’ve had to figure out what it means to be a software apprentice and ensure I’m building skills and learning best practices daily. Conversely, the senior developers have had to think about how to integrate apprentices and provide purposeful learning opportunities.

In this talk, I’ll share my experience coming from a vocational web development school and the apprenticeship program we’re developing at Democracy Works, Inc.

RubyMotion is a framework for creating iOS applications with the flexibility and familiarity that Ruby provides. By architecting around a web view and a single page javascript application, building native iOS applications can leverage all of the tools and techniques that we’ve developed for the web.

In this talk, I will walk through the development of an iOS application that uses this approach with RubyMotion, a Rails backend, and AngularJS. I’ll discuss how we decided what responsibility each component should have, how they interact with one another, a couple of things that turned out to be a bit tricky. Our iOS app has an Android and a mobile web equivalent and this is where this approach really shines: we’re essentially building all three at the same time.

There are some downsides to this approach. Familiarity with iOS conventions and the Cocoa APIs are still necessary to build an app that looks and feels polished. It’s a poor fit for applications that need to be completely or mostly available offline and if your app does not have an Android or mobile web version, you lose one of the largest benefits.

The sky is falling!!! Life as we know it is over! These pretzels are making me thirsty! There’s been a lot of talk recently regarding the health of Ruby. Is it dying? Does it have Lupus? (Hint, it’s never Lupus). I sit down with Sandi Metz, Ernie Miller, and Johnny Bourisquot for a candid discussion about what the future holds for one of our favorite languages.

An interview too often feels like a first date - awkward, strange, and not entirely predictive of what’s to follow. There are countless books and websites to help you when you’re a job seeker, but what about when you’re the one doing the hiring? Will you just ask the same puzzle questions or sort algorithm problems? What are your metrics for evaluating or contextualizing the answers? In this talk, I’ll discuss successful practices and techniques to help you find someone who will innovate your business, bring new energy to your team, get the work done, AND be someone you’ll want to work with.

Concurrency is all the rage. When you have tons of data being shoved down your throat, you need all the help you can get. All the cool kids are turning to alternatives to try and keep up: node.js, clojure, erlang, elixir, Go. Popular thinking is that Ruby is too slow and “won’t scale.” But our favorite friend can support it very well. In this talk we’ll take a look at the actor pattern in Ruby with Celluloid and compare to similar solutions in other languages.

Sandi Metz has thirty years of experience working on projects that survived to grow and change; her book “Practical Object-Oriented Design in Ruby” is an outgrowth of this experience. Dealing with long lived applications has left her deeply biased towards practical solutions that produce working software that is easy to change. She believes in simple code and straightforward explanations.

Sandi worked for many years at Duke University and now independently consults and teaches. She lives in Durham, North Carolina, where her daily bicycle commute now consists of a loop that starts and ends at her house.