Global Day of Coderetreat 2023 in #tddyyχ を開催しました

TDDワイワイ会 にてCoderetreat(コードリトリート)を開催しました。

tddyyx.connpass.com

Coderetreat

Coderetreat は1日をかけてプログラミングの基礎力を鍛えるイベントで、以下のようなワークを実施します。

  • 1時間1セッション、計6セッション
  • すべて異なるペアとのペアプロ
  • セッションごとにコードを破棄する(1から実装し直し)
  • お題はライフゲーム (Conway's Game of Life)

Coderetreatのコミュニティでは年に1度Global Dayが設定されており、当会ではその日に合わせて普段の「TDD+モブプログラミングでワイワイする会」に替わりCoderetreatのイベントを開催しています。今年は4回目の開催になります。

お礼

ランチスポンサー及びおやつスポンサーとして、株式会社アトラクタ様に協賛いただきました。ありがとうございました!

www.attractor.co.jp

#tddyyχ のハッシュタグ検索でどんなランチを食べていたかがわかります。飯テロ注意)

また、「遅れてきたから」とたくさんのお菓子を差し入れていただいた @sato_ryu さんもありがとうございました!

運営としての感想

さすがに4回目ともなると勝手がわかってきており、運営は自己組織化されている気がしました。Coderetreatとしては初めての会場でしたが、配達の受け取りのために下に降りないといけないこと以外はいつもの会と同じだったので問題なくできました。

趣旨説明スライドも当日の朝に編集し、ぶっつけで説明を喋ったりスケジュールに合わせて叫んだりしましたが意外と覚えているもので参加者として振る舞いつつも運営をするという感じで楽しめました。

後述する事件に心を乱されつつも会としてはいつもどおり学びの多い会として環境をつくれたと思います。

参加者としての感想

普通にセッションに入っての感想でいうと、コードを書く能力がなまっているのを実感しました。

テストコードを書いてなかったりDevOps改善で触るのは設定ファイルだけだったり、レビューだけ・効果測定だけ、あるいはドキュメントの読み書きといった「自分でコードを書き進める」作業が少ない環境にあるのは確かで自分でコードを書く時間を取らなければならないなという感想でした。

抽象度の高い設計アイデアは浮かぶけど、具体的な実装まで思い浮かべようとすると細部が荒い、あるいは調べないといい感じの書きっぷりがわからない、といった感じです。(そういう仕事ばっかりになってましたわ……)

副業でコードを書く機会は取れるのでそこで鍛えたり、仕事の中でコードを書くような方向にもっていったりしようと思いました。

最後に

参加いただいた方に感謝申し上げます!ありがとうございました!

通常のTDD+モブプログラミングでワイワイする会もよろしくお願いします


おまけ: 勉強会寿司おじさんとの邂逅

今回は10人の参加枠を用意し、CoderetreatのHosting Guide に則って「無料」「ランチ提供あり」で開催しています。 ところがその限られた参加枠のうち1人の方がランチ直前で来場され、ランチボックスを配布した直後におかえりになられました。私が断片的な情報を聞いた当初は「思ったイベントと違ったから帰っちゃったのかな」と思いましたが、話を突き合わせてみると食事を調達することが目的だと感じられるものでした。

私も直接対応したわけではないため伝聞になりますが、以下のような振る舞いをされていたようです。

  • こちらから遅れてきた方向けに会の趣旨説明をするも、スマホで動画を見ながら聞く
  • 「普段はどういった言語を書かれているんですか?」と聞いても「勉強しようと思っているところなんですよねー」と初学者ですらない旨を伝えられる
  • コードを書かずに各ペアプロセッションをウォークスルーで眺める
  • ランチが配布されると自分の分を持ってサッと帰る

ランチ後話題にあがり、その方の参加イベントを確認するとすべてのイベントが懇親会ありのイベントであったためこれはいわゆる「勉強会寿司おじさん」と呼称される方だったのではないかという話になりました。

scrapbox.io

tomio2480.hatenablog.com

運営側としては以下のことに憤りを覚えています。

  • 参加枠の1割を食事目的の人に割いてしまった。
  • 会場は入館手続きが必要な場所であり、急にいなくなられてセキュリティ上の懸念が生まれ「ちゃんと退館したのか」などの確認負担が発生した。
  • 参加者がセッションに集中できるように運営陣で環境を整えていたのを無下にされた。

これに対応するためにいくつかの手段は考えられますが、とはいえ1年に1回のイベントでそこまでがんばりたくないので来年も同じようにやるんだろうなという気はしています。1

補足: なぜ無料で昼食を提供するのか

普段の「TDD+モブプログラミングでワイワイする会」はケータリング付き懇親会は用意していません。2 前述の通り、Coderetreatでは参加者が1日中プログラミングに集中できるように環境を整えよ、とHosting Guide で規定されているためチケットは無料、かつ昼食を提供しています。以下はGuideの該当箇所です。

Ticket prices

A coderetreat is designed to be a low-barrier event to expose developers to development practices we deem helpful to advance their career. It is neither a commercial, nor a certifiable workshop. The best coderetreats are those that are most inclusive to anyone regardless of their economical situation. ...

Food and Drinks

Running a full-day event must involve catering of some sort. Smaller events might be able to crowdsource a lunch buffet, but for less connected groups, lunch is best provided through catering or delivery. ...

GuideではNO SHOW対策にデポジットを取り当日会場で返金をするというアイデアがあります。懇親会寿司おじさん対策には会の最後で返金する、ということができますが会に参加する気のない人間が会場にいるのは印象がよくないです。それであっても決済手数料を運営で負担しないといけない点、運営で現金を扱いたくない点などから発生を許容するしかないのだろうと思います。


  1. 無断欠席の方が1名いたので1週間前にリマインドして「これないならキャンセルして」は大事そうなことはわかった
  2. ほぼ運営メンバーで飲みにいくのでそれについて来たい人が来るだけ