---
title: Our office, your office
teaser:
tags: news,web
author: Dan Croak
published_on: 2009-02-06
---

We've [trained](http://thoughtbot.com/services/training) 78 developers in Ruby
on Rails in the past five months. The design of the classes have evolved such
that Rails & agile are now highly coupled.

### Working software delivered frequently

During last week's two-day class, we ran 25 short workshops during which
students wrote a blog, the web app developer's [rite of
passage](http://www.youtube.com/watch?v=2eMkth8FWno).

### Face-to-face conversation is the best form of communication

![''](http://images.thoughtbot.com/ui/2009-2-6-pairing.JPG)

Each workshop was completed by [pair
programming](http://en.wikipedia.org/wiki/Pair_programming). It was amazing to
witness the buzz that filled our office as students talked through solutions
with each together.

We also organized our office so the lectures were delivered to the group, seated
in a circle, facing away from the pairing stations.

No checking email or other distractions. Lots of questions & discussions as we
progressed.

### Continuous attention to technical excellence and good design

In [Beginning
Rails](http://www.thoughtbot.com/services/training/beginning-ruby-on-rails-boston),
we teach Ruby and Rails through Test-Driven Development. When students write
their blog, every line of code is written test-first.

In [Advanced
Rails](http://www.thoughtbot.com/services/training/advanced-ruby-on-rails-boston),
we teach refactoring to Rails best practices patterns. We pick up where we left
off in the Beginning Rails class. We test-drive new features to the blog,
integrating [version control with git](http://git-scm.com/) and [continuous
integration](http://martinfowler.com/articles/continuousIntegration.html) into
the development cycle.

For both classes, we send students on their way with the full source code to
[Umbrella Today?](http://umbrellatoday.com) for reference.

### Our office: March, April, May, & June

We have arrived at the logical conclusion that we teach best at our office.
Therefore, **we're pleased to announce classes once at month at our Boston
office**:

![''](http://images.thoughtbot.com/ui/2009-2-6-penguin.jpg)

* [March 16-17](http://thoughtbot.eventwax.com/beginning-rails), Beginning Rails
* [March 18](http://thoughtbot.eventwax.com/advanced-ruby-on-rails-march),
  Advanced Rails
* [April 22-23](http://thoughtbot.eventwax.com/beginning-ruby-on-rails-april),
  Beginning Rails
* [April 24](http://thoughtbot.eventwax.com/advanced-ruby-on-rails-april),
  Advanced Rails
* [May 25-26](http://thoughtbot.eventwax.com/beginning-ruby-on-rails-may),
  Beginning Rails
* [May 27](http://thoughtbot.eventwax.com/advanced-ruby-on-rails-may), Advanced
  Rails
* [June 15-16](http://thoughtbot.eventwax.com/beginning-ruby-on-rails-june),
  Beginning Rails
* [June 17](http://thoughtbot.eventwax.com/advanced-ruby-on-rails-june),
  Advanced Rails

### Your office

If you can't make it to our Boston office, we'll go to [your
office](http://thoughtbot.com/services/training/your-office). We just ask that
you set up a similar pair programming environment.
