Scrapboxを使って技術書の輪読会を進めた話

 

この記事は何?

  • Scrapbox」という、情報共有用のノートを複数人で同時編集できるツール(Googleドキュメントに近いサービスですね)を用いて、自然言語処理の勉強会を完走したので、その進め方について紹介します。

  • 輪読会をやりたいけど、どうやって進めるのが良いのかな?と悩まれている方の参考になれば幸いです。今回はコロナ禍もあってオンラインで開催していましたが、オフラインの勉強会であっても同じやり方が適用できると思います!
    また、自然言語処理以外の輪読会を開く場合にも同様に進められるはずです。

  • 一緒に勉強会を完走してくださった下記の仲間にこの場を借りて感謝申し上げます、ありがとうございました!

    asteriam (@asteriam_fp) | Twitter

    しんちろ (@sinchir0) | Twitter


    takapy | たかぱい (@takapy0210) | Twitter

サンプルについて

下でつらつら説明する前に、まずはどんな感じのものを作ったのか、ざっと見ていただければと思います!

scrapbox.io

理想的には、実際に使ったノートをそのまま公開したかったのですが、テキストからの引用についても多く行っていたため、著作権に抵触する箇所を削除したものを貼っています。

それでは、輪読会の進め方について以下で説明していきます。

進め方について

事前準備

  1. 次回までの範囲について、各々が読んでいくなかで「わかったこと」「分からなかったこと、質問したいこと」「納得できないこと」などを箇条書きでScrapboxに記入していく。この時、他の人が書いていることに対してもどんどん追加コメントをしていきます。(同意・回答・補足など。)

    今回の場合は、範囲を1章ごとに区切って進め、インターバルについては次回の内容の濃さ次第で1週間または2週間のどちらかを選択しました(※簡単な章が続く場合は、複数の章をまとめて1回に詰め込みました)。教材は「機械学習・深層学習による自然言語処理入門 scikit-learnとTensorFlowを使った実践プログラミング」を使いました。

輪読会当日

  1. 決めた時間にGoogle Meetsに集合し、書かれた内容について上からみんなで読んで確認していく。疑問が残っている内容についてみんなで議論する。その場での口頭による追加質問も大歓迎。

  2. 1.で解決できず、かつ調べた方が良さそうなことは各自の宿題とする。

  3. 次回の章の範囲と集合時間を決め、解散。「事前準備編」に戻る。

以上のループを繰り返し。

やってよかったこと

  1. 質問するハードルを限りなく下げる
    「〜ってなんでしたっけ?」という簡単な復習のような質問も気軽に書いていくことで、他のメンバーも結果的に「言われてみればあんまりちゃんと分かってないな」と気づかされることも多かったです。今回は既に顔馴染みのあるメンバーだったので発言はしやすかったと思いますが、初めましての人たちとやるときは別途アイスブレイクの時間などもあると良いのかなと思いました。
    また、「変なこと聞いちゃってすみません」などという発言に対しても「そんなことないです」とフォローし合う空気づくりも大切だと思いました。優しいメンバーに恵まれたおかげで、この点はあまり困らなかったというか、自然にそういう空気感が醸成できていたと思います。

  2. 1.に関連しますが、多少本の大枠と外れたことであってもどんどん質問・コメントし合うようにしました。
    例えば、コードの書き方やフォーマッティングに関する良い/悪いプラクティスは何なのかであったり、環境構築のTipsといった事柄にも話が及びました。また、今回は自然言語処理を実務に適用することに興味のあるメンバーが揃っていたので、「実際実務で使えるのか?」といった問いも非常に有意義でした。

  3. Scrapboxに疑問をまとめる形式を採用したことで、「全員が毎回の範囲で当事者意識を持って参加できる」という利点が生まれたと思います。
    輪読会でよくあるのが、「持ち回りで1人ずつが本の内容をまとめて発表」という形式だと思いますが、この場合、「自分が担当ではない回はどうしても内容理解などの準備が甘めになってしまう」とか、「質疑はその場限りになっていて、みんなの時間を奪ってまで今挙手して質問を投げかけるのは憚られるので、手を挙げない」などといったデメリットがあります。
    一方、Scrapbox全員参加形式の場合は、「事前に書けば書くほど自分の疑問に答えてもらえる!」というインセンティブが働き、結果として多くの質問が集まりやすくなる仕組みになっていたと思います。

  4. 事前に議論する事柄がScrapboxでチェックできるので、ある程度心と頭の準備がある状態で臨める。
    これも、従来のように発表資料を誰かが準備して〜という形式にすると、直前まで資料にアクセスできないことが多く、その場で初めて議論したい内容について問いかけられ、考え始める(そして中身の濃い議論にならない)ケースが目立つと思います。
    一方、Scrapbox形式であれば、事前に何について話し合うのか分かり、自分なりの意見を考えておけるだけでなく、そのことについて下調べしておくこともできます。結果として、意味のある議論につながりやすかったと思います。

  5. 誰がコメントしたものなのかすぐにわかる。
    これは賛否両論あるかもしれませんが、今回のように誰でもどんなことでも書いて良いというハードルの低い状態を保てている限りは、誰が書いたものか分かった方が、質問の意図をすぐに確認できて便利でした。
    Googleドキュメントを使っていると、「誰がその箇所を編集したのか?」は変更履歴を開かないと見えてきませんが、Scrapboxでは「Command+i」というショートカットで、手軽に本文中に自分のアイコンを載せることができます。この仕組みを使って、誰が何を書いたのかが簡単に可視化できるようになりました。

f:id:taro_masuda:20210531135926p:plain

図:各メンバーのアイコンがScrapbox上に表示されている様子

 

今後やるときに改善したいこと

  1. アドバイザーを1人以上呼びたいと思いました。
    理由は簡単で、メンバーのうち誰もクリアな答えを持っていない疑問については、その場で解決しようがなかったためです。とはいえ、圧倒的に強い人の存在により、質問のハードルも無意識に上がってしまうリスクもあると思うので、場の雰囲気作りには注意が必要そうです。

  2. ファシリテーターを持ち回りにすること。
    特に誰が進行をリードしていくかを決めずに続けていましたが、その場の空気感でしんちろさんにばかり仕切りを任せてしまっていました。次やるときは、回ごとに役を入れ替える形式にすると良いと思いました。

  3. 前回未解決だった宿題についてのチェックが甘めだったかなと思います。
    前回残っていた疑問については、メンバーの誰かが調べてくれた内容をシェアしてくれることもありましたが、ちゃんと振り返ることが習慣として定着していなかったです。次やるときには、各回のアジェンダとしてしっかり盛り込んでおこうと思います。

以上です。輪読会企画の際はぜひ参考にしてみてください!