rtlechow.com

Ruby DCamp 2013

2013 marks my second Ruby DCamp, an annual Ruby-ish unconference. Located in Prince William Forest National Park, Viriginia, it literally takes place at a cabin in the woods.

Leslie Spit sends me off.

During the day, 80 curated participants gather to do Rubby at the central lodge.

We cook together.

We code together.

We game together.

Dominion Chess Artemis

And we programme the conference together.

At night we crash in these sleeper cabins.

It’s probably the most fun you can have while still actually learning.

Kevin Mitnick's Business Card

Yep, it doubles as a lockpick kit.

A Test-Driven FizzBuzz Test

Joey deVilla is testing interview candidates with FizzBuzz:

I asked each candidate to do the exercise in the programming language of their choice, with pen and paper rather than on a computer. By requiring them to use pen and paper rather than letting them use a computer, I prevented them from simply Googling a solution. It would also force them to actually think about the solution rather than simply go through the “type in some code / run it and see what happens / type in some more code” cycle.

Commenters are expressing violent disagreement, violent agreement, and violent alternative implementations in everything from Perl to Racket.

One thing missing from the discussion was a worked example. To fill the gap, here’s a video of me driving FizzBuzz with tests:

Some thoughts:

2011 Global Day Of Coderetreat Toronto

December 3rd was the first Global Day of Coderetreat. Over 2200 developers in 90 cities participated. Back in November, while planning a trip to Chicago for SCNA, Corey confirmed that nobody was facilitating in Toronto. This city has a really active software scene, so I figured I’d give it a shot. Here’s the result:

Global Day of Coderetreat Toronto Group Picture

It couldn’t have happened without help:

We had 18 Coderetreaters, who roughly broke up into one-third Rubyists, one-third Java, and one-third .NET. Python, Clojure, Javascript, and Gosu made appearances too.

Our sessions looked like this:

  1. Intro to the Game of Life. For some, this Coderetreat was a first. Plus it’s good to warm-up before the coffee kicks in.
  2. Kent Beck’s Four Rules of Simple Design. There are various formulations, but I prefer the minimal:
    • Tests pass.
    • Reveals intent.
    • No duplication.
    • Small code.
  3. Choose Your Own Adventure. Pairs picked one or more constraints from a list. Popular choices included no conditionals, no iteration, methods under 2/5 lines, “Tell, Don’t Ask”, and no objects.
  4. Evil Mute Ping Pong. “Mute” because talking is prohibited. “Evil” because Implementors can use whatever loopholes they find to make the tests pass.
  5. Make It Work. Write the worst code you can. Give it your best shot. A good way to wind down.

The final retrospective offered a variety of thoughts, with a couple common themes: [re]discovering TDD, getting to know both new and familiar languages, and thinking about the social aspects of our craft.

Srdjan and Martin

Srdjan and Martin plotting. Loaned my ARxTA/Github-stickered laptop. Pretty sure they tried breaking Ruby. Gonna have to check on that.

Damon and Marcus

Damon and Marcus in Deep Pairing Mode.

Dan and Owen

Dan tells me he had a great time retreating into deliberate practice. Owen was happy to spend some time with Ruby sans Rails.

Tim and Taz

Tim laughs at the code while Taz… gestures at the code. That’ll teach it.

Mark and Roxanne

Mark and Roxanne also in Deep Pairing Mode.

Anna and Austin

Anna and Austin did unspeakable things with nested hashes. But hey, there’s a Clean Code guarantee.

Kyle and Chris

Kyle firing eye lazors at the code while Chris drives.

Yehoram and James

Yehoram concentrates despite James utterly smashing the fourth wall!

The rest are on Flickr: