Coding dojo

18
December 10th 2013 Coding Dojo Ruby Hacknight

description

Coding Dojo presentation used at Ruby Hacknight Montreal in December 2013, sponsored by iWeb

Transcript of Coding dojo

Page 1: Coding dojo

December 10th 2013

Coding Dojo

Ruby Hacknight

Page 2: Coding dojo

● Rafael Rosa - Cloud evangelist at iWeb

[email protected] / @rafaelrosafu

● Hosting provider based in Montreal

● Operating since 1996

● 10.000+ clients from around the world

● 4 data centers spread around the island

○ tens of thousands of servers in Montreal

● Infrastructure focus

○ Cloud servers

○ Dedicated servers

○ Smart servers

○ Managed servers

○ Colocation

● Acquired by Internap in October 2013

Who am I?

Page 3: Coding dojo

What a heck is a coding dojo?

Why is it useful?

Page 4: Coding dojo

How often do we train our coding skills?

Page 5: Coding dojo

Are we ready for a real combat?

Page 6: Coding dojo

Deliberate Practice

Source: http://commons.wikimedia.org/wiki/File:Aikido_training_02.jpg

Page 7: Coding dojo

Deliberate Practice

● Introduced to the programming

community by Andrew Hunt and Dave

Thomas on "The Pragmatic Programmer" in

2009

● Being aware of what your coding

○ Don't "program by coincidence"

○ Understand why things work or don't

● Practice makes it easier

Page 8: Coding dojo

How do we do it?

Page 9: Coding dojo

Using the heart of XP

Source: http://epf.eclipse.org/wikis/xp/xp/guidances/concepts/xp_practices_36E149F4.html

Page 10: Coding dojo

Baby steps

Source: http://holycuteness.com/wp-content/uploads/2012/03/Kitten-takes-her-first-steps-Imgur.jpg

Page 11: Coding dojo

Quick randori guide

● Gather a bunch of nice coders

○ Free pizza and beverages help a lot

● Pick a challenge / puzzle

○ Ruby Quiz has 150+ options

○ Explain the puzzle (this part is tricky)

● Prepare the environment

○ rspec + autotest for automated tests

○ Pick a simple text editor, like Sublime

● Pair random people

○ Coding cycles of 5 to 7 minutes

○ Replace driver, pick a new co-pilot from audience

● Make a quick retrospective

○ What can we improve next time?

Page 12: Coding dojo

TDD cycle - Red, Green, Refactor

Source: http://blog.spec-india.com/spec-india-implemented-test-driven-developmenttdd

Page 13: Coding dojo

Pre-conditions

● Safe environment

○ Respect everybody

○ There are no dumb questions

○ Making mistakes is part of the process

○ Constructive criticism is welcome

○ Everybody helps each other

● Desire to improve your craft

Page 14: Coding dojo

Goals

● The main goal is to learn

● Finishing the challenge is a detail

● It should be fun!

● It isn't a competition

● It isn't an exhibition

Page 15: Coding dojo

Resources

● http://codingdojo.org/● http://rubyquiz.com/● http://pragprog.com/book/ebdojo - The

Coding Dojo Handbook

Page 16: Coding dojo

We're hiring!

http://carrieres.iweb.com/en

Page 17: Coding dojo

Questions

Page 18: Coding dojo

Merci à tous

[email protected] / @rafaelrosafu

www.iweb.com

@iweb