毎日アプリやインターネットについて書いている私だが、プログラミングをちゃんと勉強したことはない。
上で“ちゃんと”というクッションを入れたけど、私の場合本当は“まったく”と書くべきだった。いまだに、プログラミングなんて全然知らない。中学ではちょっと勉強したと思うけど、高校はCSの教科なし、大学では学生新聞の記事を書いたり、とっくに死んだ白人男性たちが書いた本ばかり読んでいた。私の若き日の人生には、プログラミングのプの字もない。
でも私のトゥドゥリストにはある。神に誓ってうそではない。
今日(米国時間12/9)はネット上のプログラミング自習塾Codecademyが、初めてのアプリを作ってリリースした。30分足らずで終わる、プログラミング入門編だ。今日は洗濯物が山のようにあるから、ひまつぶしにこいつをちょっとやってみよう。
このアプリのローンチは、コンピュータ科学教育週間にタイミングを合わせている。さらに、国の行事と合わせて、合衆国の児童生徒1000万人に1時間のプログラミング教育(の授業)を与えようという、キャンペーンもある。でもアプリのねらいはもっと一般的で、とにかく、毎日仕事で忙しい人でもプログラミングができるようになるために、プログラミングのコースを、小さな単位で、一口(ひとくち)ずつかじっていこう、というものだ。
CEOでファウンダのZach Simsによると、このアプリCodecademy for iPhoneは、同サイトのネット上の課程とは別の単独のコースだ。最初のはとてもベーシックで、プログラミングとはどういうもので、何を一体するのか、という話に終始する。でも今週中には、これの次の一口(ひとくち)が出る予定だ。
このアプリは、プログラミングができる、プログラムを書ける、という目標に向かう、とてもなだらかな、誰でも歩ける登山道だ。テストの問題に関する質問も歓迎されるから、自分のための学習を自分で組み立てている感覚になり、私のように、自尊心がでかくて傷つきやすいエゴを持ってる人間でもついていける。インナー類の洗濯が終わる前にアプリを終えてしまい、すぐにその続きをやりたくなった。
この第一回のプログラムは5部から成り、1)はじめに、2)データタイプ(型)、3)変数、4)比較、5)If…Else、となっている。各部にコード例と問題があり、Simsの言い方では、“スナックのような”レッスン集だ。
学習体験は、モバイルの環境に制約される。つまり、小さな画面と、大量のタイプは不可であること。デスクトップでアクセスする同社のWebサービスは、自分でコードを書きながら学ぶ、という学習体験になるが、アプリの方は、そのあたりがちょっと不自由だ。自分でコードを書くのではなくて、クイズの“言葉入れ”みたいに、未完成の文を正しい語で完成させる。答えの候補が並んでいて、その中から選ぶ。問題のまったくない部もある。
問題の中には、やさしすぎるのもある。‘はじめに’の部には、“‘6 – 2’を計算するプログラムを書けますか?”という問題があり、答えは”print(6 ? 2);” の’?'のところをマイナス記号’-'にするだけだ。答えはやはり多択の候補の中から選ぶ。
こんな話を読むと、“プログラミングなんて、馬鹿のやることさ。アプリのアイデアで、大儲けできるのに”、と誰かさんは言うだろうか?
こういう問題は、受動的な学習にはつきものだ。自分の問題を自分で解決していく能動的な学習に移行できるまで、その点には注意すべきだろう。
今日の私の30分の体験で感じた唯一の問題は、用語の定義がないこと。だから、いちいちGoogleの検索で、“文字列(string)って何?”とか、やらなければならない。でもたぶんこれは、そのうちCodecademy自身がモバイル版の問題点として気づき、対策してくれるだろう。
Simsは、成功したエドテック(ed-tech)企業の例としてDuolingoに言及しながら、目標はプラットホーム非依存なプロダクトを作ることだ、と言った〔ということはAndroid版も近く出る?〕。ただしモバイルデバイス、とくにスマートフォンの上では自分でコードを書きづらいから、この問題をCodecademyはどうやって克服するか? 私は、というと、オンライン(Web版)にユーザ登録しようかな、と今は考えている。
[原文へ]
(翻訳:iwatani(a.k.a. hiwa))