SlideShare a Scribd company logo
1 of 16
Download to read offline
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

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

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

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

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

More from Kiro Harada

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

More from Kiro Harada (20)

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

Recently uploaded

バイオリンの運弓動作計測による初心者と経験者の差異分析
バイオリンの運弓動作計測による初心者と経験者の差異分析バイオリンの運弓動作計測による初心者と経験者の差異分析
バイオリンの運弓動作計測による初心者と経験者の差異分析sugiuralab
 
00001_test_automation_portfolio_20240313
00001_test_automation_portfolio_2024031300001_test_automation_portfolio_20240313
00001_test_automation_portfolio_20240313ssuserf8ea02
 
チームで開発するための環境を整える
チームで開発するための環境を整えるチームで開発するための環境を整える
チームで開発するための環境を整えるonozaty
 
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜Naomi Yamasaki
 
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~honeshabri
 
これからはじめるAnsible - Ansible Night Tokyo 2024
これからはじめるAnsible - Ansible Night Tokyo 2024これからはじめるAnsible - Ansible Night Tokyo 2024
これからはじめるAnsible - Ansible Night Tokyo 2024Hideki Saito
 
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdf
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdfIGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdf
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdfIGDA Japan SIG-Audio
 
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版Takayuki Nakayama
 
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」IGDA Japan SIG-Audio
 
The 86th National Convention of IPSJ (Student Encouragement Award))
The 86th National Convention of IPSJ (Student Encouragement Award))The 86th National Convention of IPSJ (Student Encouragement Award))
The 86th National Convention of IPSJ (Student Encouragement Award))yoshidakids7
 
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。iPride Co., Ltd.
 
AWS Lambdaと AWS API Gatewayを使ったREST API作り
AWS Lambdaと AWS API Gatewayを使ったREST API作りAWS Lambdaと AWS API Gatewayを使ったREST API作り
AWS Lambdaと AWS API Gatewayを使ったREST API作りiPride Co., Ltd.
 

Recently uploaded (12)

バイオリンの運弓動作計測による初心者と経験者の差異分析
バイオリンの運弓動作計測による初心者と経験者の差異分析バイオリンの運弓動作計測による初心者と経験者の差異分析
バイオリンの運弓動作計測による初心者と経験者の差異分析
 
00001_test_automation_portfolio_20240313
00001_test_automation_portfolio_2024031300001_test_automation_portfolio_20240313
00001_test_automation_portfolio_20240313
 
チームで開発するための環境を整える
チームで開発するための環境を整えるチームで開発するための環境を整える
チームで開発するための環境を整える
 
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜
JAWS DAYS 2024 E-3 ランチにまつわるちょっといい話 〜給食がない町の小中学生に温かい昼食を〜
 
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~
キャラで動かすGPT ~GPTsでどんな感じに作っているとか考えていることとか~
 
これからはじめるAnsible - Ansible Night Tokyo 2024
これからはじめるAnsible - Ansible Night Tokyo 2024これからはじめるAnsible - Ansible Night Tokyo 2024
これからはじめるAnsible - Ansible Night Tokyo 2024
 
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdf
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdfIGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdf
IGDA Japan SIG Audio #22 オンラインセミナー VRの知る.pdf
 
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版
キンドリル_ネットワーク自動化成熟度診断サービス ご紹介資料 2024年3月版
 
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」
SIG-AUDIO 2024 Vol.02 オンラインセミナー 「必殺使音人(ひっさつしおとにん)カットシーンを成敗せよ」
 
The 86th National Convention of IPSJ (Student Encouragement Award))
The 86th National Convention of IPSJ (Student Encouragement Award))The 86th National Convention of IPSJ (Student Encouragement Award))
The 86th National Convention of IPSJ (Student Encouragement Award))
 
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。
AWS_Bedrock入門 このスライドは2024/03/08の勉強会で発表されたものです。
 
AWS Lambdaと AWS API Gatewayを使ったREST API作り
AWS Lambdaと AWS API Gatewayを使ったREST API作りAWS Lambdaと AWS API Gatewayを使ったREST API作り
AWS Lambdaと AWS API Gatewayを使ったREST API作り
 

Coderetreat のススメ at Developers' Summit 2013 Unconference