SlideShare uma empresa Scribd logo
1 de 16
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 募集要項

Mais conteúdo relacionado

Semelhante a 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
 

Semelhante a 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_アンケート結果
 

Mais de 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
 

Mais de 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
 

Último

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 

Último (9)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 

Coderetreat のススメ at Developers' Summit 2013 Unconference