CodeRetreat@名古屋ギークバーに参加したお話
※ イベントの詳細は、タイトル兼リンク先のサイトを参照ください。
CodeRetreatとは
趣旨をすべて吹っ飛ばして、やることだけを説明するならば、
45分1セットのペアプロを何回か回して勉強するという感じ。
課題として、45分間で、Conway's Game of Life (以下ライフゲーム)を1から実装する簡単なお仕事です。
特徴としては、毎回コードを削除して、必ず1から実装する必要があることと、
(強制ではないものの)多少(TDDをするとか、if禁止とか)の制約をつけたりされる感じです。
今回は、純粋な参加者ではなく、ファシリテーター側のサポートをした感じです。
というわけで、純粋に自分が参加して、実際に手を動かしてどうだったとか、特に何もないわけですが、
全体を俯瞰でみた感想的な物を少し書いてみます。
みんな始めから色々難しく考えすぎでは?
はじめに断っておくと、若干遅刻したので開始時間にはいませんでした。
到着時に情報共有されたこととしては、
1. ペアプロに慣れている参加者は少ない。
1. ライフゲームを詳しく知っている参加者は少ない。
という感じらしい。
となると、まず始めは愚直でいいからとりあえず動くようにしてみる感じでアプローチすると良さそうな気がしますね?
ところがそうでもないらしい…
なんか、綺麗な設計して~、素敵なコード書いて~。みたいな人が多かった?
ライフゲーム自体は(どう実装するのかは置いておくとして)、
1. 【世界】の「今の状態」を取得できる
1. 【世界】が「次の状態」に遷移できる
が出来れば良いだけでなんですよね?
もう少し具体的にすると(世界を単純な2次元座標の集合だと定義すると)
1. 任意の座標の次の状態を判定する
1. 任意の座標に隣接する「生存」している「セル」を数える
1. すべての座標の状態を取得できる
だけできれば何とかなるんです。
(最初段階であたりをつけるのも悪いことではないと思いますが)どう表示するか?とかはその後考えれば良いんですよ。
とはいえ
「今日」うまくいかなかったなら、明日(以降)できるようになればいいので、
「それはそれ」的な割り切りも大切です。
(ごく一部の例外は(どんな事にも)ありますが)みんな最初はできないのです。
という事で、本日参加した方は、これで終わりではないのでこれからもやっていきましょう。
何となく興味を持った方は雑に@Dominion525宛にメンション飛ばしましょう!
色々調整がつけば開催されます。
まとめ
CodeRetreat良い取り組みなのでみんな参加するといいと思います。