ブログ

プログラミングの力を鍛える「ソニックガーデンジム」って何?──目指すのは仲間が集まる”空き地”作り


目次

    ソニックガーデンでは、プログラミング経験者の学生・第二新卒者を対象にした、プログラミングジムを不定期で開催しています。

    2023年12月1日(金)から第8期を迎えている本イベントは、現在3名の運営メンバーに支えられています。今回は、ジムの運営を務める中谷・知場・門田の3名に、今後のビジョンやソニックガーデンジムの魅力について座談会形式でお聞きしました。

    これまであまり掘り下げられてこなかったジムの特徴や目指す姿について赤裸々に語っていただきましたので、ジムって何?という方から、ジムについて興味がある方まで、ぜひぜひご覧ください。

    プログラミングの力を鍛える場所がソニックガーデンジム

    さっそくですが、ソニックガーデンジムではどんなことをしているのかをお聞きしたいです。
    門田の顔門田
    参加者一人一人にソニックガーデンのエンジニアが担当のレビュアーとしてついて、3ヶ月間みっちりコードレビューを行っていくのがメインのコンテンツになります。
    その他にも担当のレビュアーとオンラインミーティングで直接相談しながら開発を進めるペアプロ会や、自分の進捗状況を共有する進捗共有会などを定期的に開催していますね。
    中谷の顔中谷
    参加者全員が同じ課題に取り組むので、他の人のコードレビューを参考にすることができるのも1つの特徴ですよね。たくさんの考え方に触れることができるので、一人で進めるよりも圧倒的に成長することができます。
    こうしたコンテンツを通じてプログラミングの腕を鍛えてもらう場所がソニックガーデンジムです。
    知場の顔知場
    毎期改善を繰り返しているので来期はまた内容が変わっているかもしれませんが、参加者のプログラミング筋に効くかどうか、を特に意識して企画しています。
    ソニックガーデンジムでは、プログラミングの力を鍛えるための企画を行なっているんですね。メインコンテンツであるコードレビューは、参加者が書いたコードに対して行われると思いますが、課題が出されるのでしょうか?
    知場の顔知場
    そうですね。用意された課題を完成させるのが、ジムの基本のトレーニングメニューになってます。
    中谷の顔中谷
    具体的にいうと、まず「〇〇を3か月間で実装してください」という課題が出されます。書いたコードにはソニックガーデンの現役プログラマのレビューが入り、OKが出るまで修正を繰り返していきます。
    参加者には、レビューを乗り越えて3ヶ月で全ての実装を終えることを目指してもらいます。かなりハードなので、3ヶ月で課題の実装を全て終えられた方のことは「ジムマスター」と呼んで表彰していますね。
    ジム参加中に利用するポータルサイト。参加者の進捗状況が確認できる
    知場の顔知場
    コードレビューでは、書かれたコードがソニックガーデンのプログラマから見て良いと思えるものかどうかを細かくチェックしています。ただ動けばOKではなく、将来にわたってメンテナンスしていくために必要な考慮ができているか、他の人が見た時にわかりやすく書かれているか、セキュリティに問題がないかなど、様々な視点で指摘をします。大量のレビューを乗り越えることで、参加者のプログラミング力が鍛えられていると感じますね。
    ちなみに、ジムではどんなプログラマが参加者に対してコードレビューをするのでしょうか?
    知場の顔知場
    納品のない受託開発※を担当するプログラマの中でも、複数案件を持ってばりばりプログラミングをしているメンバーにレビューを頼んでます。

    ※…「納品のない受託開発」は、企画の段階から相談にのって、継続的な開発・運用を続けていく顧問型のサービスです。納品して終わりではなく、末長い関係を築くシステム開発のビジネスモデルになっています。

    門田の顔門田
    ソニックガーデンの中でも、特に腕が立つプログラマが参加してくれてますね。

    今の目的は、プログラミング仲間と遊ぶ場を作ること

    2周目の参加者が、レビューをする側として参加したこともあったとお聞きしました。どういう経緯でそうなったんですか?
    知場の顔知場
    先ほどお話しした通り、ジムは1つの期が3か月と決まっていて、それが終わったらしばらく準備期間を経て新しい参加者を募集し、また次の期を始めるというサイクルになっています。1つの期で終わるというのが元々の想定でした。
    それが、ある期を終えた参加者から、「次の期にも参加できます」と言ってもらえたんです。
    中谷の顔中谷
    その時に、「いや、ジムは1期で終わりなので」とはせず、運営として2周目以降の参加についてしっかり考えていこうという話になりました。
    そうした考えを持った理由は二つあります。ひとつは、「ソニックガーデンの文化を広めること」がジムの目的にあり、その文化を良いと感じてくれた人とは、長く付き合っていきたかったからです。例えば、「美しいコード」を目指すソニックガーデンのプログラマの価値観は、コードレビューを直接受ける中で体感してもらえると思っています。コードレビューを通じて、ソニックガーデンのプログラマの価値観を良いなと感じてくれた人と、3ヶ月でお別れするのは切ないという思いです。
    実際のコードレビューの様子
    中谷の顔中谷
    もうひとつは、一緒にプログラミングで遊ぶような、運営の僕らも参加者も楽しい関係性を続けていきたいからです。継続的な関係性を築ける場を目指して、2周目以降に何をしてもらうかをしっかり考えようという話になりました。
    門田の顔門田
    色々考えた結果、2周目の参加者には、コードレビューを受ける側ではなく、する側として参加してもらいました。自分たちも社内でコードレビューをしていて、プログラマとしてめちゃくちゃ力になるのを実感していたので、それを体験してもらおうと思ったんですよ。
    知場の顔知場
    過去の参加者からは、レビューすることが学びになったというコメントをもらっています。ただ、「レビューではなくコードを書きたい」という意見もありました。
    現在はジムを走り終えた参加者に対して、「好きなテーマで一緒にプログラミングしよう」と声を掛けて場を提供しています。ただ、まだまだ試行錯誤の余地はありますね。
    現在、2周目の参加者は課題自由型の「THE PROJECT」を行っている
    長く関係性を続けたい、というところが運営側の思いなんですね。
    中谷の顔中谷
    望んでいる人には引き続き鍛える場を提供したいと思っていますし、参加した後も僕たちと仲良くしてほしいと思っています。
    実は僕は最初、ジムへの参加をきっかけにソニックガーデンに入社してくれる人が増えたらいいなって思ってたんですよね。
    ただ、ジムの参加者は働きはじめの若い方が多く、会社に入って1〜2年で辞めて、ソニックガーデンに入るのは現実的に難しいと、やっていくうちに気づいたんです。
    とはいえ参加者にとって需要もあり、「2周目もぜひ」と参加してくれる方もいるという状況だったので、入社を目的に考えるんじゃなく、ジムを通して参加者とプログラミングで遊べたら良いなと考えるようになりました。僕も、いちプログラマとして参加者と交流することを楽しいとも感じていたんですよね。
    その話をした時、社長の倉貫さんに、「それって、(ジムを通して)参加者と友達になっているってことじゃない?」って言われまして。
    その言葉を聞いて、腑に落ちたんです。なので今は、プログラミングで遊ぶ友達を増やしていきたいという思いでジムを運営しています。
    門田の顔門田
    そうですね。今は、運営3人で「友達ってどう作るの?」って考えています(笑)。
    中谷の顔中谷
    幼稚園児みたいだよね(笑)。 ただ、それでいうと僕は、ジムに来てくれた時点でみんな友達だと思っています。
    ジムってかなりハードだと思うので、そこに申し込んでくれる時点で、その人のことが好きです。やっぱり僕らはプログラミング好きなので、ジムに飛び込んでくるような人には、親近感を抱くんですよね。
    知場の顔知場
    プログラミング仲間ですよね。
    門田の顔門田
    あと、今考えているのは、「友達をどう作るか」というより「どう友達であり続けるか?」ってところかもしれないですね。ジムが終わると、友達と遊ぶ場所がなくなってしまうから、みんな去っていってしまう。そこに課題感を感じています。
    中谷の顔中谷
    今のジムが目指すイメージは、友達が集まって遊ぶ公園ですね。
    知場の顔知場
    そうそう、ドラえもんでいう空き地みたいな場所です。「ジムに行けば誰かプログラミング友達がいるだろうな」と、フラッと立ち寄れるようなね。
    門田の顔門田
    ドラえもんの空き地との違いは、人が集まって野球をするのではなくてプログラミングをする、というところですかね(笑)。

    質の高いレビューがあり、意欲の高い参加者がいる

    プログラマが集まる空き地というのは、面白い発想ですね。ただ、他の仕事もある中で、ジムの運営を行うのは大変ではないですか?
    知場の顔知場
    もちろん、仕事量が多くて大変な時もありますが、しんどさはないですね。僕はジムが純粋に自分個人の楽しさに繋がっていると思っています。会社主催のイベントですが、運営をすることに義務感は感じてないですし、楽しくてやりがいがある仕事だと感じています。
    中谷の顔中谷
    全然しんどくないというのは同意です。特にたかちー(知場)さんは、ジムという場を使って、プログラミングで遊んでいますね(笑)。ジムで使うWebアプリを運営で開発していますが、たかちーさんが色々と面白い機能を追加してくれています。
    知場の顔知場
    ジム運営としてプログラミングで遊び始めたのは、「ジムマスターになったメンバーを一覧化したい」と依頼された時ですね。
    中谷の顔中谷
    依頼したのは僕で、記録として残したいと思ってのことでした。テーブルで一覧化するくらいで良いよというオーダーをしましたが、結果、装飾がしっかり付いたデザインであがってきました(笑)。
    知場の顔知場
    その時、ちょうどCSSで遊びたい時期だったんですよ(笑)。
    ジムマスターの一覧画面
    門田の顔門田
    他に遊んでいたものでいうと、「100日後にジムマスターになる君」という名前の進捗管理のペースメーカーもありますよね。
    知場の顔知場
    ぼそっとアイデアベースで言ったら、いちろー(中谷)さんに大ウケして実装が決まった機能ですね。必ず最終日までに課題が終わるようにコードが動いているので、参加者はこれを目安に、開発を進めていけます。
    もちろん開催する上での真面目な話もしていますが、色々とアイデアベースで開発できることが、僕にとってのジムの推しポイントの1つですね。
    運営目線でも楽しいイベントになっているのは素敵ですね。最後に、参加を検討している方に、ジムへの興味が湧くような推しポイントを教えていただきたいです!
    中谷の顔中谷
    想像を超えた、丁寧なレビューが貰えるところですね。レビューをするプログラマに対しては、「自分が納得できるところまでやってください」とだけ伝えています。コメントする箇所が増えるほどレビューをする側にとって大変なはずなんですが、全く手を緩めないし、むしろ楽しそうにレビューをしているようにさえ思えます。
    知場の顔知場
    僕も見ていて、レビューする側が楽しそうだなと思います。ソニックガーデンジムでは1対1で参加者に対してコードレビューをしていますが、どのプログラマもかなりの数のレビューをつけていますし、それぞれのコードに対するこだわりが感じられますね。
    門田の顔門田
    僕の推しポイントは、シンプルに技術力を極められる場になっているところです。内容がハードだからこそ、成長意欲の高い人が集まりますし、参加者から費用をもらってないので、良い意味でフラットに、遠慮なくレビューができます。そんな場で、プログラマとして今後も生きていこうと思えるきっかけを作れていたら本望です。
    中谷の顔中谷
    ソニックガーデンに入社しなかったとしても、プログラミングを極めたいと思っている人は、広い意味で友達ですからね。
    門田の顔門田
    そうそう。ジムをきっかけに本人が技術者として成長してくれるなら嬉しいですね。
    ジムをきっかけに、プログラミング仲間の輪が広がっていくのがとても楽しみになりました。みなさん、お話ありがとうございました!

    いかがだったでしょうか。取材を通じて、言葉の節々から運営のみなさんのプログラミングへの熱い思いが伝わってきました。

    変化が多いイベントとのことで、今後どのようなイベントになっていくか楽しみですね。

    ソニックガーデンジムは年2回ほど開催していますので、興味が湧いた方はぜひ参加してみてください。

    今後開催されるジムの案内を受け取りたい方はこちら↓
    https://app.jibun-apps.jp/form/f96e1ea4-1d3c-4c38-a873-8ab7acb7aaa4/new

    ライティング:小澤未花
    2022年に株式会社ソニックガーデンに入社。 弊社運営の初学者向けプログラミング合宿「ソニックガーデンキャンプ」の運営をはじめ、広報・メディア運用などにも携わる。

    この記事を共有する