プログラミングは「モブプログラミング」で楽しく勉強しよう!
最近の若い人の傾向なのですが、プログラミングが好きじゃないという人が多いですね。私の勤めている会社だけでしょうか。
IT企業に就職しているのに、プログラミングをやりたくないとはどういうことか?と思うのですが、私がこれまで見てきた感じでは、プログラミングが苦手な人が多いんですね。だから好きじゃないと。
そこで今回は、プログラミング教育が小学校で義務化されるということもあるので、プログラミングが苦手なITエンジニア、新人SE、これから勉強しようと思っている小学校の先生向けに、プログラミングの勉強法をご紹介します。
方法を紹介する前に、私は一般的に言われている、アウトプットしろとか、他人のソースを読めとかは言いません。苦手な人は一般的に言われていることをやって躓いたハズです。
■ モブプログラミングで楽しく学ぶ
私が紹介する方法は「モブプログラミング」です。
「モブ」とは「集団」という意味です。直訳すると「集団でプログラミングする」ということです。つまり、みんなでワイワイしながら楽しくプログラミングをします。
■ 準備するもの
大きめのモニタ:1台
PC:1台
キーボード:1つ
マウス:1つ
おかし、ジュース:多数
■ やり方
例えば、Javaの勉強をしたい人が5人いたとします。
5人で1つのPC、モニタ、キーボード、マウスを使います。
つまり、キーボードをたたく人は1人だけです。
全員で1つのモニタを見ます。
キーボードを持った人を「ドライバー」と言います。
そして、キーボードを持たない人を「ナビゲーター」と言います。
ドライバーがプログラムを書きます。
ナビゲーターはドライバーをサポートします。
イメージとしては、車のドライバーとナビゲーターと同じです。ドライバーがプログラムを書き、4名のナビゲーターは正解にたどり着けるようにナビゲートをします。
つまり、ナビゲーターはネットや書籍を駆使して、わからないことを調べてドライバーに伝え、みんなで協力しながら正解に近づいていくというやり方です。なお、一定時間ごとにドライバーは交代します。
たとえば、「Hello World」を出力するプログラムを作成するものとした場合はこんな感じです。
~~~ モブプロの現場イメージ ~~~
ドライバー「クラスの書き方がわからないんだけど・・・」
ナビ1「public class~って書けばクラスになるっぽいよ」
ドライバー「書いたよ~」
public class HelloWorld{
}
ナビ2「文字の出力にはSystem.out.printlnっていうのを使うみたい」
ドライバー「こんな感じ?」
public class HelloWorld{
System.out.println("Hello World!");
}
ナビ3「とりあえずコンパイルしてみようか」
ドライバー「エラーだねぇ」
ナビ4「public static void mainっていうのが必要みたいだよ」
ドライバー「こうかな?」
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World!");
}
}
ナビ1「良さそうだから動かしてみよう!」
全員「お~、動いた!」
全員拍手!
~~~ ここまで ~~~
いかがでしょうか?
上記イメージは極端な例ではありません。
問題が解決して動いたら歓声は上がるし、拍手もしちゃいます。これはプロの現場でも使う手法です。私のチームでも使っています。今週もやりましたし、おやつも本当に準備しています。
■ 楽しくなければ覚えられない
プログラミングが覚えられない、苦手だと感じる人は、一人で黙々と勉強しているのではないでしょうか?楽しくない勉強で一生懸命アウトプットしたって、他人のソースを読んだって覚えられるわけがありません。
子供の頃を思い出してください。得意な科目は楽しかったのではないでしょうか?楽しいから覚えられるんです。
一般的に言われている方法でプログラミングが出来なかった人は試してみてください。小学校の先生なら職員室で先生が全員集まって、みんなでワイワイしながらプログラミングしてみてください。きっと一人で勉強するよりも覚えられると思います。