SlideShare a Scribd company logo
Coderetreat
In Developers’ Summit 2013 Unconference / 今回はさわりだけ
(probably next time )
                                             @haradakiro
• ペアプロでプログラミング技術を学ぶセッション
• 1セッション 45 分 / 1日6セッション

• 課題は、Conway’s Game of Life


• セッション終わったらコードは          消す



Coderetreat って何?
• 毎回セッション毎にペア交代

• 言語は何でもいい
 • 使いたい・使える開発環境は準備してきてね

• 各セッション毎にチャレンジ課題
 • トライするかは自由
  •   If 文禁止
  •   ループ禁止
  •   複数行メソッド禁止
  •   配列利用禁止
  •   しゃべるの禁止
  •   などなど




Coderetreat って何?
• 参加費は無料
• まともな昼ご飯が出る

• 45分で終わらせなくてよい




Coderetreat のルール
09:00 - 09:15 会場、趣旨説明、準備
09:15 - 10:00 ペアプロ セッション#1
10:00 - 10:15 ふりかえり#1
10:15 - 11:00 ペアプロ セッション#2
11:00 - 11:15 ふりかえり#2
11:15 - 12:00 ペアプロ セッション#3
12:00 - 12:15 ふりかえり#3
12:15 - 13:45 昼食(昼食は提供されます)
13:45 - 14:30 ペアプロ セッション#4
14:30 - 14:45 ふりかえり#4
14:45 - 15:30 ペアプロ セッション#5
15:30 - 15:45 ふりかえり#5 (おやつのじかん)
15:45 - 16:30 ペアプロ セッション#6
16:30 - 16:45 ふりかえり#6
16:45 - 17:00 全体ふりかえり




Codereterat
スケジュール例
• 二次元格子のセル
• 個々のセルには8つの近傍セル

• 近傍セルのうち2個もしくは3個が生きていたら、生
  存
• 近傍セルのうち3個が生きていたら、誕生
• それ以外の場合(1個以下もしくは4個以上)は、死亡




Conway’s Game of Life
•   きづいたこと
•   うまくいったこと
•   うまくいかなかったこと
•   次のセッションでためすこと

• ハッシュタグ #coderetreat



セッションふりかえ
り
• どんなクラスをつかってセル、格子を表現した?
• それは、わかりやすい?誤解をまねかない?

• 言語が提供するクラスを使わないでやってみる。




Primitive Obsession
•   テスト全部通せ
•   意図が分かるコードを書け
•   すべてを一回、一回だけ書け
•   余計なコードはいっさいなしだ




XP Simplicity Rules
• 5行
• 3行
• 1行

• ちなみに APL では?
 • life←{↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵}



1メソッドの長さ
は?
• 増えると大変
• 10超えのメソッドとか見たくもない

• 増やさないには、どうする?

 • 条件分岐禁止!




McCabe Cyclomatic
Complexity
• Ping – Pong TDD
  • 一人がテストコード書く、もう一人がプロダクトコー
    ド書く
• 配列はもういらないよね
• TDD as if you mean it
  • テストコードなしのプロダクトコード書いてないよね
• そろそろループもいらなくない?
• プログラマーならコードで語れ!(しゃべるの禁止)




Try
• 今日学んだことは(もしあれば)、何ですか?
• 今日驚いたことは(もしあれば)、何ですか?

• 休み明けの仕事で、何かやりかたを変えてみます
  か?




Closing Circle
• Legacy Code Retreat – 開催(たぶん来月)
 • Code Retreat for Legacy Code




Next Event –
To be Announced
• ありがとうございます
  • スポンサーの皆様
  • 会場提供の皆様
  • 参加者の皆様

• Please Try At Your Work Place!
  • ブログ書いてね
  • Coderetreat.org をのぞいてみてね

• ご質問などは harada.kiro@gmail.com へどうぞ。




Thank You!
• 募集開始は Twitter 上でアナウンス
 • どこかの参加募集サイト上で
 • スポンサーが集まったら




Coderetreat 募集要項

More Related Content

PDF
Tired to tdd
PDF
Code retreatの心得
PPTX
PHPカンファレンス2009 - 45分で分かる安全なWebアプリケーション開発のための発注・要件・検収
PPTX
ここからはじめる SQL Server の状態取得
PPTX
SQL Server 入門
PDF
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
PPTX
Sql server これだけはやっておこう 最終版
PDF
How to Make Awesome SlideShares: Tips & Tricks
Tired to tdd
Code retreatの心得
PHPカンファレンス2009 - 45分で分かる安全なWebアプリケーション開発のための発注・要件・検収
ここからはじめる SQL Server の状態取得
SQL Server 入門
Sql server エンジニアに知ってもらいたい!! sql server チューニングアプローチ
Sql server これだけはやっておこう 最終版
How to Make Awesome SlideShares: Tips & Tricks

Similar to Coderetreat のススメ at Developers' Summit 2013 Unconference (7)

PDF
"レガシーコード"再考
PDF
オレオレになりがちなテスト計画を見直した話
PPT
勉強会のすゝめ 2.0
PDF
もっとうまく頻繁に価値を届けたいチームのためのスクラム勉強会(公開用)
PDF
議論を描く技術「ファシリテーショングラフィック」
PDF
Perl入学式をやってみた! - YAPC::Asia 2012
PDF
110901 tokyo scipy1_アンケート結果
"レガシーコード"再考
オレオレになりがちなテスト計画を見直した話
勉強会のすゝめ 2.0
もっとうまく頻繁に価値を届けたいチームのためのスクラム勉強会(公開用)
議論を描く技術「ファシリテーショングラフィック」
Perl入学式をやってみた! - YAPC::Asia 2012
110901 tokyo scipy1_アンケート結果
Ad

More from Kiro Harada (20)

PDF
Kaizen in Action for Regional Scrum Gathering Tokyo 2017
PDF
Kaizen in Action
PDF
TPS, Lean, and Scrum - How They Are Developed and Influenced One Another
PDF
ぐるぐるDDDは何を目指しているのか
PDF
スクラムパタン入門
PDF
Is Xp still extreme?
PDF
改善の3つの顔
PDF
3 Faces of Kaizen
PDF
TPS Lean and Agile - Brief History and Future
PDF
スクラム再入門(仮) Developer Summit 関西 2013
PDF
ぐるぐるDDD/Scrum - モデリングと実装のうずまきをまわそう
PDF
DDDをScrumで廻す あるいは ScrumをDDDで廻す
PDF
改善のためのちょっとしたコツ
PDF
非開発者のためのアジャイル開発入門
PDF
アジャイルマネジメントとは?
PDF
A Tip to Help Your Kaizen
PDF
Jenkins に XFD を追加してみると
PDF
Arduino jenkins
PPTX
アジャイル開発をはじめる前に
PDF
Scrum & Kanban
Kaizen in Action for Regional Scrum Gathering Tokyo 2017
Kaizen in Action
TPS, Lean, and Scrum - How They Are Developed and Influenced One Another
ぐるぐるDDDは何を目指しているのか
スクラムパタン入門
Is Xp still extreme?
改善の3つの顔
3 Faces of Kaizen
TPS Lean and Agile - Brief History and Future
スクラム再入門(仮) Developer Summit 関西 2013
ぐるぐるDDD/Scrum - モデリングと実装のうずまきをまわそう
DDDをScrumで廻す あるいは ScrumをDDDで廻す
改善のためのちょっとしたコツ
非開発者のためのアジャイル開発入門
アジャイルマネジメントとは?
A Tip to Help Your Kaizen
Jenkins に XFD を追加してみると
Arduino jenkins
アジャイル開発をはじめる前に
Scrum & Kanban
Ad

Coderetreat のススメ at Developers' Summit 2013 Unconference