見出し画像

プログラミングをやりたくない人の気持ち

(とくに大人のプログラミング学習について。
わたし自身はプログラミング学習を否定するものではありません。
ただ,やりたくない人はたくさんいるのでちょっと書いてみました。)

プログラミングの本を書いてる人は,きっとプログラミング大好きな人達ばかりなんだろう。
だからプログラミングやりたくない人たちの気持ちがわからない本になっている。

先日,大型書店でプログラミング関係の書棚を見た。
おそらく300冊近い本があったと思う。
C,Python,PHP,Java,JavaScript,Node.jsなどいろんな本があった。
しかし,それらの98%くらいは文法のことしか書いてない。

中学生と高校生の時,英語の成績はよかったが英文法の授業はあまり好きじゃなかった。
昔の英語教育は,単語と文法を詰め込む方式だった。
その時代のひとたちは,結局いまどうなったかというと,必要に迫られた人が英会話教室に通ってるのだ。
単語と文法を知ってても,英語を理解したことにはならない。

プログラミングの文法を説明されて,何を作れるのかイメージできる人は
プログラミングできる人だけだ。

わたしはHTMLが書けるけど,それは
1からこのとおりにやったら見本と同じサイトが作れます,という本があったからだ。
わたしはその素敵なサイトを作ってみたかった。
なので,1からHTMLやCSSをその本のとおりに順々に構築していって,
最終的には見本と同じサイトを作れた。
なんならちょっと自分好みに変えたりするところまでできた。
体当たりで作っていく過程でHTMLとCSSのことを少しずつ理解していったのである。
その後,少しずつ自分のできることを増やしていって,今ではいろんなことができる。
いちからタグの勉強しないといけなかったら、わたしみたいな面倒くさがりは、今でもHTMLは書けなかっただろう。

プログラミングの本は,ほぼ文法の本でなにが作れるかがわからない。
ごくごくたまに文法の説明の後に「ではこれを作ってみましょう」みたいなのがあるけど,
「雪の結晶を描いてみましょう!」別にそんなの描きたくないし。
「アンケートフォームを作ってみましょう!」そんなのGoogleFormでできるし。
「このグラフをPythonで描いてみましょう!」そんなのExcelでするし。

好みのものが作れないのならプログラミングするモチベーションは湧かないし,
代替品で簡単にできるなら,そちらを使うだろう。

プログラミング大好きな人達は,計算やグラフもPythonやRでやりたがる。
しかしそれは職場で共有できない。
だいたい上司が見てもわからないし,自分が異動したときに,そのプログラムを後任のひとがさわれると思えない。
いま,どこの職場に行っても,Officeが使えるというこの状況を舐めてはいけない。誰でもが使えるものがあるならそれを使うのが当たり前である。
みんなExcelを見慣れてるし,使い慣れてるのだ。

Pythonのほうが楽に早く計算できる,とかいうのは何の説得力にもならない。
新しいものを身につけるのは時間がかかる。しかも自分がそれができるようになるのにどれくらい時間がかかるか予想もつかない。
既に使えるExcelのスキルを上げるほうが,目の前の仕事にすぐ対応できる。

なんでわざわざプログラミングしないといけないの?てなる。

「情報」という科目も似たような運命だ。
高校で「情報」が必修化されたは2003年だけど,大学新入学生にはまっさらな状態で教えないといけないことが多い。高校で学んだことなんて忘れてる。
そして大学でも教養でしか「情報」をやらない文系学部生は,4年生になる頃にはもう忘れてる。

「情報の授業はただただ苦痛でした」と言われたことがある。プログラミングの授業だって同じ様になる可能性がある。(もうそうなってる人がいるのかもしれないけど)

要するにITって詳しい人がやってくれたらいいんでしょ,てことになる。

Scratchはその点よくできてる。
いろいろ動かして右側にそのアニメーションが出てくるので
プログラムを組んでるというより,パズルのように組み合わせて
望みの動作を生み出すような感じだ。
あれだと,もっとこうしたい,ああしたいというアイディアも出るだろう。

しかし,大人向けプログラミングの本はScratchのようにはいかない。
そしてどの本を開いても似たようなことしか書いてない。
そりゃそうだ,文法しか書いてないんだから。

それは漢字辞典や文法書を見せて,
さあ小説を書け,と言ってるようなものだ。

素人は,文法を示されても何が作れるのかイメージできない。
たとえ文法を勉強したとしても,いまの自分の実力だと何をどこまで作れるのかイメージできない。
なので,プログラミングの勉強はどのように取り組んでいいかさっぱりわからないし,モチベーションも湧かない。

実際になにか楽しいものを作れるような本を書いてほしい。
やりたいことは人によっていろいろなので,いろいろなものを作れるものを書いてほしい。
Web記事連載のほうがいいかもしれない。
今回はクイズを作ります,今回は英単語パズルを作ります,今回は家計簿アプリを作ります・・・などなど。
そしたらその中に1つくらい作りたいものを見つけられる人がいるかもしれない。
1つくらいアプローチしたくなるものがあるかもしれない。
そしたらプログラミングしたくなるかもしれない。

たとえばWebサイトで実行できるクイズプログラムを作るとして。

  1. とりあえず1問つくって,正解不正解を表示させるようにする

  2. 間違いの場合は解説を表示する

  3. 5問作って,5問解答したら正解得点が表示される

  4. 解答結果をcsvにはく

みたいに順々に難しくしていけば良い。

HTMLとCSSとJavascript,PythonなのかPHP使うか,
いろいろあるんだろうけど,どうしたら楽に作れるかというのは
手を動かしながらでないと学べない。
そして1言語だけ学んでても,望むものが作れない場合も知る必要がある。

でも本屋に並んでるプログラミングの本は,言語ごとだ。
Javaの本ならひたすらJavaの文法だけが書いてある。
300冊も本があって,プログラミングやりたくない人が手に取れるような雰囲気の本は1冊もないように見える。
「あー,ここはマニアのためだけのコーナーね」ていう感じである。

今までの人生で,コーディング画面を見せて
ドン引きされたことが何度もある。
それくらい普通の人にとっては見慣れない画面に対する拒否意識は強い。
だいたいコマンドを英語で書かないといけないし,記号とかも変な感じ,
エラーメッセージも英語だから気が萎える。

そういうハードルを乗り越えてでもプログラミングしたい気持ちにさせるということについて,プログラミングの本を書いてる人は真面目に考えてほしい。

そもそもプログラミングって,なにかを作れるからいいんじゃないの?
なにかを作っていく過程で文法を勉強する方法があってもいいんじゃないの?
なにかを作りたい気持ちにさせないと,そのプログラミング学習は失敗じゃないだろうか。


この記事が気に入ったらサポートをしてみませんか?