はじめに
去る 3 月 27 日、28 日に呉工業高等専門学校様(以下呉高専様)にて WEB サービス開発の基礎講座を行いました。今回は講座に至るまでの下準備から実施までチャレンジングな内容を幾つか詰めたこともあり、全体的なご報告レポートを記します。
きっかけ
アイデア家業池田様のお声掛けにより、呉高専の学生さん数名を対象にレクチャーの依頼をいただきました。co-ba 呉高専の企画から渋谷にあるコワーキングスペースco-baさんに縁のある形で始まったそうです。
経緯
とりあえずどこかでオフラインレクチャをすることは決まっていたものの、いきなり広島で初対面の学生にレクチャをするだけで十分なことを伝えられるだろうか、という課題がありました。
池田様より「事前にコミュニケーションや軽いレクチャを行いながら、意識合わせをして行って、オフラインを行う形」はどうだろうかとのご提案を受け、以下のようなことを決めました。
- 事前課題として動画を真似する WEB サービス開発の「体験」を行っていただく
- チャットの開設による質疑応答、コミュニケーションの円滑化
- 中間でビデオチャットを活用したオンライン講義(2 時間)
- 広島にて2日間のワークショップ形式の講座(二日で計 8 時間)
以下それぞれの時系列に沿って記します。
動画での体験
WEB サービスの開発体験を動画を通じて行うものです(弊社にて鋭意制作中。近日公開予定)。これを真似するだけで「全体的にどういうことをしなければいけないか」という全体感を掴むことができます。
前後編合わせて 13 章を前後半で分けたのですが、課題を伝えてからたった数時間で前編終了する人がおり、オンラインレクチャまでに全員が前半を完遂することができました。
動画は全体合わせても 1 日かけずに見ることができる想定のものではありますが、これほど早く終えてしまえる基礎能力の高さに指導側がワクワクしたのを覚えています。
チャットの開設
全員が発言できる場を作ってコミュニケーションするためのチャットを開設しました。このチャットは実際のオフラインレクチャ当日も含めて URL や情報共有の中心として位置しました。講座が終わってしまった今も、彼らと私たちを繋ぐ手軽な窓口として存在しています。
開設当初「なんでも聞いていいですよ」的にしていたのでRails チュートリアルの質問が出るなどの活用もしていただけました。
今後の相談などもこちらを通じて今後行われる想定です。
オンラインレクチャ
動画の前半が終わったところでビデオチャットを利用したオンライン講義を行いました。
目標・目的としては下記でした。ただし、この時点で完全に理解する必要はなく、オフラインでマスターする為の予備知識を植え付ける事が大事だという考え方です。
- ここまでの体験で「なんとなく真似したらできた」で通り過ぎてしまう部分や、不明瞭になりがちなポイントの確認と解説。
- これから内容がデータベースを扱うため、その為の事前知識の提供。
- その他、疑問や不安があればその解消。
弊社の入っている CASE Shinjuku の新・会議スペースはこのオンライン講義を行うのに適した環境だった様子で、通信環境は良好、無駄な雑音が混ざるようなこともなく快適に進めることができました。
実際に対面する前のこういったコミュニケーションからも、受講生それぞれの特徴や雰囲気が掴めたことも大きな収穫であったと思います。
いざ広島
Day1
東京から広島まで新幹線で約 4 時間、広島から呉まで 1 時間弱ということで、片道計 5 時間程度かかります。かなりの長旅ですが、最終的な進め方の確認や打ち合わせ、資料の最終調整などをしているうちに時間が経ってしまいました。
会場準備ということで co-ba 呉高専にてプロジェクタやホワイトボードなど設営し、初日の講義を開始しました。内容としては、動画でやった知識を元に進めることができるステップ式の課題に沿って開発をし、様子を見ながら適宜フォローを入れてゆきます。課題を GitHub 上の Issue として用意し、実際の開発現場のようなイメージで進めていただくことを意識しました。
適宜ミニレクチャーを挟んで、オンラインでは不足していた部分を補ったり、確認していくなど行いました。オンラインでは聞きにくいことも対面の和やかな空気感によって質問しやすくなっていましたし、各個人の表情を見ることができるので講師側も理解の確認をしやすいという利点を強く感じました。
初日は準備や確認を中心にしたこともあり、全体的にジックリ進めるスタイルで進みました。
夜は懇親的に近所のお店でご飯を食べながら「学校では聞けないこと」など聞いてみたり、学校で行なわれている学習の内容などを教えていただいたりなど、終始和やかなムードが維持されました。
Day2
基礎的な初日の課題を終えて、応用的な部分を集めた2日目の課題を進めていきます。初日の成果か、全体的な進捗のスピードが増し、理解も深まっていることを感じさせました。
内容としてはデータベースのレコードの基本的な扱いから、マイグレーションやリレーションのような「実際の開発現場でやっていること」に結びつくような内容を盛り込む構成になっているので、獲得すべき概念は高レベルです。にも関わらず、皆さんよくついてきていたと思います。デジタルな資料だけではなく、その場でホワイトボードに絵を描きながら説明をするようなことも行い、記憶の定着を促すよう進めていきました。
終盤は「現場の技術者に聞いてみたいこと何でも聞いてみよう」ということで、質問に答える形式で「バグの倒し方」を分類した上で実演したり、「WEB アプリケーションの基礎が結局掲示板のようなサービスを拡張したようなものである」というようなテーマでお話したりしました。
最後に、現場でよく利用されている Ruby on Rails を用いて、一瞬で今回作ったようなシステムの原型を作るデモをしましたが
「大切なのは今回の 2 日間で会得したような『概念』や『仕組みの理解』であって、フレームワークの活用はそういった基礎知識があった上ではじめて効果的に活用できるものである」
という哲学も共にお伝えしました。
理解を深めた彼らがより高い技術を体得して、仕事の現場でチームメンバーとして私たちと再会する日を楽しみにしています。
最後の写真は帰りの慌しい中で撮ったのですが、今回計 6 名の高専生が講座に参加してくださいました。
帰り道、受講生の成長ぶりを肴にしながら講師メンバーが新幹線の中で飲んだ缶ビールが格別であったことは言うまでもありません。
おしまいに
今回ははじめてのことを数多く含むチャレンジングな企画でしたが、とても楽しんで行うことができました。
きっかけを下さり、当日までの段取り、講義のフォローなど多方面で活躍してくださったアイデア家業の池田様、学生を見守って自由な空間での実践的な学びを応援してくださった林先生、光井先生、そして高専生のまとめ役として皆を牽引してくださった新谷様、誠にありがとうございました。今後ともよろしくお願い致します。
新谷様の受講生側の活動報告も含めてご覧いただけますれば幸いです。
今回の講義の内容などについてのお問い合わせは大歓迎ですので、お気軽にお申し付けいただければ幸いです。