zizynonnoの日記

書き殴りな記事が多いですが、それは自分が「凝り性で完璧主義な書き方をしがち」なので「いつまで経っても記事が完成しない」ことへの対策です。時間のある時にきっちりかっちり成形します。よろしくお願いでごわす。

ガンプラでいう足を完成させただけなのに、「プログラミング最高!!!」となる入門書について

Hello World!が表示されました!」「URLがサイトに表示できるようになりました!」とか「ページ分割できるようになりました!」といったパーツを完成させることを、あたかもそれができると楽しい!最高!というニュアンスで書く参考書やサイトをよく見かける。

 

しかし、「URLがサイトに表示できるようになりました!」みたいなものは、現在作っているWebアプリの中のパーツの一部を作ったにすぎない。ガンプラでいうと「足のパーツができました!」みたいな感覚だ。

 

Hello Worldだって、言ってしまえばただ文字が出てくるだけだ。

 

「おっし、ここまできた。」みたいな達成感みたいなものは確かにある。それなりにテンションも上がるが、それはガンダムの足のパーツを作った達成感であって、道半ばである。

 

しかし、巷の入門書や入門サイトでは足を作っただけで「プログラミング最高!!!」「みんなもプログラミングやろう!!!」みたいなパリピで陽気な文体とテンションで迫ってくるので、(あれ...この文体ではあたかも足を作っただけで死ぬほど楽しいのがエンジニア界隈では常識みたいなテイストでかかれてるけど、書かれてるテンションほど楽しくない...)という違和感を感じ、自分の不向きを悟ってやめていく人が多いのではないか。

 

今から20年前のインターネット黎明期。インターネットが当たり前ではないようなホームページ全盛期の人にとって、ページ分割の機能を追加して表現方法を増やすことはとてもロックなことだと推察できる。なぜなら、インターネットが当たり前ではないから。その機能の拡張にレア感があったから。

 

それが今ではみんなインターネットやスマホを使っていて、「ページ分割の機能」なんて機能は当たり前に存在する。空気みたいなものだ。それを実装することに対して何か特別な感情を抱いたりしない。

 

入門書を書く人の年代なんてどう見積もっても30代以上のそこそこ経験を積んできたエンジニアであると推察できるので、当時の熱量で「ページ分割の機能が追加できる!!」「プログラミング楽しい!!!」みたいに入門書に書いてあると、今の若者にとっては熱量の差に違和感を感じるのだ。

 

さて、「ミスマッチを自分で勝手に察して離れていく」を防ぐには表現を抑えるという対処法もあるとは思う。それと同時に私は「この技術を習得するとこんないいことがあるよ!こんな広がりがあるよ!というメリットを明示的に提示すること」を提唱したい。

 

「明示的に」が大事だ。

 

例えば「ページ分割の機能が追加できる」であれば、

 

これはブログなどのWebサイトに使われる技術で、ユーザーがサイトを見やすくなるメリットがあるよ!見やすくなると離脱率が低下して、たくさん広告を見てもらえたり商品を買ってくれるよ!結果的にあなたが儲かるよ!

 

のような金銭的アプローチや、

 

「ページ分割の機能が追加できる」ことによって「この人はこれだけの技術力を持っている。だからすごい。転職市場でも有利だし、転職先でもヒーロー扱いだ!」

 

のような技術者の承認欲求を刺激するアプローチなどがある。「ページ分割の機能が追加できる」は適宜、自分の知ってる難しい技術に脳内変換して頂きたい。

 

確かに、ある程度IT業界で経験を積めば、どの技術がすごくてどの技術が当たり前かなどの審美眼が身につく。自分の中で技術を習得するメリットを作り出せる。なので「あの技術を習得しよう!」ともなる。すごくわかる。

 

しかし、相手はなにぶん初心者だ。変化も早く、業務範囲が膨大になりつつあるIT業界において、チュートリアルの段階でマイルストーンや目に見えるモチベーションくらいは提示しないとイヤになってやめてしまう。

 

魔王を倒すのに、地図とコンパスと目に見える宝物くらいは欲しい。それができなければ、IT業界の人手不足は一生なくならないのではないかと感じる。技術を習得するメリットがなければ、技術を習得しようと思わないからだ。

 

そんなことを2018年のエンジニア1年目に思ったことがあったので、記載。