イベントレポート

2014/11/15 「Global day of Coderetreat in Matsuyama」が開催されました。

Coderetreatとは、1日をかけて”ソフトウェアの設計と開発の基礎を徹底的に練習する”ことを目標に、ペアプロをしながら実装を繰り返すイベントです。

opening

この日のお題は「コンウェイのライフゲーム」を実装することでした。
1セッションは45分で、午前中3回、午後3回のセッションを行いました。

会場はサイボウズ株式会社様のご好意で松山オフィスのミーティングルームをお借りすることができ、綺麗なミーティングルームで開催しました。
中学生(←中学生です!)から社会人の総勢14人が参加しました。

イベントは、以下の流れで行いました。

  • Coderetreatの趣旨説明
  • 自己紹介
  • セッションの進め方など説明(ペアプロ・TDDについて)
  • コンウェイのライフゲームの説明
  • ペアを決めて、セッションスタート!
  • セッション×6回
  • クロージング

###○自己紹介  自己紹介はアイスブレイクも兼ねて、「共通点探し」を行いました。 「共通点探し」とは、ペアを作って、お互い自己紹介したのちに、2人に共通することを見つける。 見つかったら、次の空いている人とペアになって、同じように共通点を探すアクティビティです。 このアクティビティを入れることによって、参加者同士で話しやすい空気になったと感じました。

自己紹介

###○セッション  45分、コンウェイのライフゲームをペアプログラミングで開発します。 次のセッションでは新しい人とペアになって、またコンウェイのライフゲームをペアプログラミングで開発します。このセッションを6回行いました。

 面白いのは、「開発言語は自分が使いたい言語でOK」、「1回のセッションが終わったら、そのセッションで書いたコードは全て消す」、「ファシリテーターからチャレンジ課題が出る」ことです。 ペアを組んだ相手が全然知らない言語を使っていたり、セッションが変わったら全然別の設計で開発していたり、普段の開発ではやったこともないような”縛り”が出てきます。

セッション中イメージ

このイベントでのチャレンジ課題は、以下でした。

  • マウスを使わない
  • 1つのメソッドの実装行数を4行以下にする
  • すべてのプリミティブ型と文字列型をラップする
  • Ping - Pong TDDの実施と、話すの禁止

1回目、2回目のセッションではコンウェイのライフゲームを理解することと、クラスの設計に時間がかかっている感じで、「…どうしよう」という空気も感じられたのですが、3回目以降ではかなりコードを書くペアも見受けられました。

お昼休みには同時刻に開催していたハノイの中継を見たり、TDDのデモを参加者の方にやっていただいたりして、まったり過ごしました。 あ、そうそう。スポンサーが昼食代その他、すべて費用を出してくれるため、参加者は無料で参加できるのもCoderetreatの特徴です。__「お得だ」__との声も聞こえました。

4回目以降は設計をちゃんと考えるために、セッション開始後に「作戦タイム」と称して、クラス設計を考える時間をあえて設けました。 これが良かったのか、かなり開発に弾みがついたようでした。

###○クロージング  クロージングでは円になって「今日学んだこと、驚いたこと、休み明けの仕事で何かやり方を変えること」を発表しあいました。 「休み明けからTDDやってみたい」__という意見が多かったです。TDDにインパクトがあったのだなと感じました。また、「しんどいと思っていたけど、思っていたより全然楽しかったし、勉強になった」__との感想もいただいて、嬉しかったです。

クロージングイメージ

ふりかえり

集合写真

最後になりましたが、スポンサーを引き受けていただいた、サイボウズ株式会社様、合同会社カルチャーワークス様、株式会社エイチビーソフトスタジオ様、合同会社ネクストコード様、イヨテツケーターサービス株式会社様(順不同)、ありがとうございました。

また発起人の@ramusaraさん始め、スタッフの皆さんのお力で無事開催でき、とても面白いイベントにできたと思います。本当にありがとうございました。

また来年、やりましょうっ!

※なお本ページ掲載以外の写真については、coderetreat本家にアップロードしています。