Personal schedule for Bruce Bicknell
subscribe to Bruce Bicknell's
Git is a wonderful distributed source control tool with a reputation for being hard to learn. This workshop will sidestep the hard to learn reputation by explaining git in an easy to learn, bottom-up approach; and then reinforcing that lesson by immersing the attendee into a number of practical hands-on applications of git.
This workshop will tour through a number of advanced, in-depth topics on Rails 3. We'll look take a tour of many of the new additions to Rails 3, talk about how to exploit Rails' new focus on Rack to your advantage, dig around in the source to really understand how many of the pieces work, and take a look at how to bring some common, advanced patterns used in Rails 2.x into the world of Rails 3.
Keynote by David Heinemeier Hansson, 37signals.
Keynote by Michael Feathers, Object Mentor.
Ever wanted to build an API with Rails? Feel daunted? Google doesn't help much? Come talk to the developers of some of the biggest APIs built in Rails. Developers from Twitter, Github, ThoughtBot, NY Times, and 37signals will talk about the decisions and challenges they have faced in building their APIs. Topics will include; Authentication, Formats, Scaling, Security, Versioning, & Communication.
If you really love or hate aerodynamics, rainbow trout, the human
brain and arms, comfortable socks, and/or Easter Island then attending
this talk might be a really enjoyable or loathsome experience. Michael
may or may not talk about how seemingly random or even truly random
topics are important or unimportant for the fertile minds of creative
It is inevitable that at some point in your career as a developer you will inherit code developed by others. Trying to understand code developed by someone else can often lead to stress and frustration, but it doesn't have to. This talk will provide you with tools and techniques to help understand and begin working with code from other developers quickly and easily.
Why Bundler exists, what it can do, and how to manage your project's dependencies with it, whether your project is a pure ruby library, a tiny Sinatra app, or a giant Rails app.
Back by popular demand, Evan and Charlie are going to talk about all
those nooks and crannies of Ruby you never knew existed. Focused
mainly on traps to avoid, they'll discuss a number of features in Ruby
1.8 and 1.9 and how they actually work, including all the gory
details. As a special bonus offer, the duo will briefly discuss
performance related pitfalls and how they can be avoided.
Keynote by Yehuda Katz, Engine Yard Inc.
Most people think that freedom engenders creativity, but the opposite is true. But too much constraint makes it hard to get stuff done. It turns out that you need just enough constraint, and figuring out what gives you that perfect level is harder than you think. This keynote investigates the relationship between creativity and constraint as it applies to software development in the modern world.
Engine Yard was founded to help deploy, manage and scale Ruby and Rails applications. We built our company with a focus on supporting and cultivating the Ruby and Rails community and ecosystem. Join us as we walk through some open source work we've dedicated our time to, including Rails, Ruby, Rubinius and JRuby. We'll also discuss community efforts we're excited to be involved with.
We all know that Rails is made of Tasty Burgers, but what are those Tasty
Burgers made from? We're going to take a look inside the bun to discover
what makes up Rails, how the software gets to our plate, and how we can
improve it. We'll discuss some of the lower level libraries used to make up
Rails, and what makes them tick. Better Ingredients, Better Burgers.
Redis is fast. Rails is good. Resque is cheap. It's a match made in heaven.
Learn how to use Resque with Rails, how GitHub processes background jobs, and why Redis makes it blissful.
We'll compare Resque to other solutions, discuss design patterns, and review the plugins that add infrastructure.
Views are still the wild west of the web application area. A sea of DIV after DIV with tables tossed in for non-tabular data creates a sea of messy code that hurts the product both in performance and bandwidth. We'll look at the common pitfalls of view code, how to refactor that code into lean, semantic HTML, CSS and presnters that is not only pretty, but also correct and proper.
You're a developer. You write code. But your users don't see your
code. They only see the user interface. We're going to have a
conversation about how to think through your product's user interface.
We'll focus on a few analytical techniques you can use to analyze your
user interface and to communicate with a designer.
Up till now, computer hardware technology has been advancing by orders of magnitude every year; has software technology been keeping up? Now that headlong advance of hardware shows signs of slowing. Moore's law may be dead. Does that mean that software technology will have to pick up the slack? Can it? Is Ruby/Rails a hint of the future solution? If not, what is?
From friend suggestions in Facebook to product recommendations on Amazon the industry is moving to more intelligent systems. We'll discuss how to discover the relationships in your app and start personalizing the experience of your users. We'll discuss different design approaches to recommendations and how to leverage various libraries in novel ways in your rails application.
ActiveRelation and ActiveModel bring a lot of interesting features to
Rails 3. These new libraries make it easier to write complex queries
and to extend Rails to work with non-ActiveRecord objects. Learn to
use ActiveRelation and ActiveModel to clean up your code. See how you
can use ARel and AMo to build your own data layer or to connect to new
This talk shares the experience, process and best practices of splitting a single monolithic rails application into many smaller independently-developable but integrated system of applications. The result is lower development time, greater stability and scalability and higher developer productivity.