この記事は、モブプログラミングAdvent Calendar 2019の記事です。
https://qiita.com/advent-calendar/2019/mobprogramming
この話の目的と概要
ろう者・難聴者のエンジニアも一緒にモブプログラミングをやるにはどんな工夫が必要かな、と考えてちょっとやってみたという話をします。検討し始めたばかりなので、実践者とか、相談乗ってくれる人とか、一緒に検討してくれる人とかを募集しています。
はじめに
こんにちは。筑波大学と筑波技術大学で情報科学分野の教員をしている @chiemi_wtnb です。
これまで筑波大学の教育プロジェクト「成長分野を支える情報技術人材の育成拠点の形成」(通称:enPiT)にてプロジェクトベース学習(PBL)を担当し、アジャイル開発を実践してきました。
その関連で、@miholovesq さんや @kyon_mm さんに協力していただいて授業の中でモブプロを実践したり、Coderetreat for girlsの運営とか(こちらはペアプロがメインですがモブプロをやっている人たちもいます)、TDDYYΧに参加したりもしています。
この4月から縁あって筑波技術大学という、教育において情報保障が必要な障害(視覚、聴覚)を持つ学生を対象とした大学の産業情報学部(聴覚障害者が対象)で教えています。
この記事では伝え方・伝わり方の異なる学生たちとチーム開発をするのにスクラム開発を導入しようとしている話、その一環でモブプログラミングをするときの工夫について考えを巡らせている話をします。
現在わたしがやろうとしていること
筑波大学で導入してきたチーム開発のノウハウを生かして、プロジェクト学習を筑波技術大で取り入れようとしています。その際にFace to Faceのコミュニケーションが必要となることが多いスクラム開発に関してデフエンジニアチームが行うときの工夫や、デフエンジニアの混じったチームの場合の工夫などを試行錯誤してアウトプットしていきたいと考えています。
モブプログラミングで工夫が必要なこと
上記の取り組みの一環として、本学の学生数名とモブプログラミングをやってみようとしたところ、いくつか工夫が必要だと思う点がでてきました。
-
ドライバーの実況中継の方法
モブプログラミングを実施する際、ドライバーは自分のやっていること、また何を考えてそのコードを書いているか、また迷っていることなどを、コードを書きながら口頭で話しますがこれを行うことが難しくなります。
口頭で伝えることが難しい場合、例えば手話やチャットなどを用いて伝えることになるのですが、一度コードを書いている手を止めなければいけない(同時に行えない)という問題が出てきました。
また、モブプロをする場合、ドライバーもナビゲータも画面を見ながら話をするのですが、その場合手話が見えにくくなります。 -
誰かが話を始めたとき、コードを書き始めたときに見逃してしまう可能性がある
例えばドライバーが困っていることに対してナビゲータが調べ物をしていたとして、他のナビゲータが「あ、これはこうすればいいんじゃない」と議論を始めたとします。しかしナビゲータが自分のPC画面に向かっていると、その議論が始まっていることに気付かないことがあります。
一回やってみたときの工夫
先日、修士の学生2名と一緒に3人でモブプログラミングをやってみました。CyberDojoを使い、FizzBuzzをテスト駆動開発でやりました。
上記の1つめの問題に対応するために、主に配置面で工夫をしてみました。
- ホワイトボードにプロジェクタで画面を表示し、画面に対してナビゲータが何か指摘したいことを書き込みできるようにしました
- 実はこれは私が手話初心者なのでホワイトボードで書いて確認したり聞いたりしたい、ということもありました。
- ナビゲータは全員ホワイトボードの前に立つようにしました。ドライバはコードを書く前に何をやろうとしているかを手話で表すようにしました。ナビゲータは画面でのコーディングが進まなくなったらドライバを見るようにしました。
面白い効果として、ドライバ以外が立ってコーディングする形になり、なんとなく活発で参加者が集中しやすい感じになりました。ナビゲータが立ってモブプロするのは結構アリな気がします。
人数が少なかったのとFizzBuzzをやったくらいだったので、問題点で書いた「ナビゲータがPC画面を見てしまって議論が始まるのに気づかない」という問題は特に起こりませんでした。近くにいれば議論をする前に他のメンバーに注意を向ける(顔の前で手をひらひらさせたり、肩をトンと叩く等)を気をつければなんとかなりました。
そのほかに考えられそうな工夫
- 今回はテスト駆動開発のサイクルに合わせテストを書いたら交代としたのですが、時間で交代にする場合はMobSter交代時に通知ウィンドウが最前面にくるので良さそうだと思いました。
- またある程度聞こえの良い人であれば、デジタルワイヤレス補聴システムRogerを使い、ドライバの音声をナビゲータの補聴器に届けるのが良さそうです。ただ、多分双方向は無理そうなのでそこは工夫の必要がありそう。
- リモートモブプロのノウハウも活かせそうな気がしています。リモートでモブプロやる時って、チャットと口頭の会話の割合ってどのくらいなんでしょうか?興味があります。
これから
- これから機を見て何度か学生たちとモブプロを試みようかと思います
- よかったら企業ですでに働いているデフエンジニアの方も一緒にモブプロ会などできないかなと思ってます
- このような活動を通して今後「是非うちで働いて欲しい。一緒に働くための工夫は厭わない」というような人材をより多く輩出する助けを少しでもできれば、と思ってます。
興味のある方いらっしゃいましたらお声がけください。
次は @nowsprinting さんのやってみた系のお話だそうです。
おまけ: 筑波技術大学のこと
筑波技術大学は、筑波大のすぐ近くにある大学で、日本で唯一の聴覚・視覚に障害を持つ学生を対象とした国立大学です。私はその中で聴覚障害をもつ学生を対象とした学部「産業技術学部」の中で、情報科学専攻に所属しています。
授業の内容は他の情報系の大学と変わりはないのですが、情報保障が充実しており、教員は学生の様々な聞こえ方に対応するように、手話、口話、音声、スライド、筆記を組み合わせて授業を行います。授業外での個別対応などとても手厚い指導をする教育熱心な教員が多いです。また、様々な場面での情報保障にする研究活動が活発です。
- CaptiOnline Webベースの文字通訳システム
- ISeee インクルーシブなスポーツ観戦支援システム