いつも楽しく読ませていただいてる、ホーリーさんの記事にプログラミングは作ってなんぼだよという話がありました。
全く持って記事の通りです。どんなしょぼいものでも、ウェブサービスやアプリを自分で作ってみると成長レベルがサンプルコードをただ写すだけとは比べ物になりません。
これは、実はプログラミングだけの話ではないと思います。少し例をあげて説明したいと思います。
プログラミングと料理の共通点
例えば、あなたが料理を上手くなりたいと思ったとします。その時は、まずは「こんな料理作りたい!」とか「こんな素敵な夕食を作って、恋人と一緒に食べたい!」って思って始めるはずです。美味しいグラタンを作りたい。スープを作りたい。
これは、最終目的(完成した姿)を想像している状況です。
そこから、「じゃあこの料理教室に通おう」とか「このレシピブックを買おう」とか次のアクションが決まります。
作りたい料理はイメージできているので、行動には無駄がありませんし、料理の順序や、必要な材料などもすぐに覚えられます。
逆に食材から入って、「今はパクチーが流行ってるから、まずはパクチーについてしっかり勉強して、パクチーを極めたら料理を覚えよう」と考える料理初心者はいるでしょうか?
少ないはずです。
料理のプロならともかく、初心者でこの考えには普通は至らないはずです。
パクチーなんて使える選択肢めっちゃ狭いですよね。
食材から入ると、もしかしたら料理としたら扱いづらいものを掴んでしまう可能性があります。
自分の目的と合わないプログラミング学習
「こんなのあるわけない」と思うでしょう。けど、プログラミングになると、このいきなりパクチーの勉強を始めてしまう、いきなりパクチーさんがたくさんいます。
本屋に行って、「流行っているみたいだからこの本を買おう」とか、「とりあえずプログラミングスクール通うわ」のような人です。
おそらくこういった人は、大変勉強熱心で、向上心も高い人です。
しかし、ただ一つミスをしているのは、作りたい作品(料理だったら完成形)のイメージが全くついていないことです。
受験勉強ならこれでもある程度上手くいったのかもしれません。
「国語」を勉強したいなら、本屋に行って適当に選んだ参考書でも大丈夫だったはずです。
しかし、実はその参考書はすでに国語だったら「国語の点数をあげる」という完成形があってその枠に収まっています。
プログラミングは、本屋では「プログラミング」とひとくくりにされていますが、実は中身をみると、各プログラミング言語によって「数学」と「保健体育」くらいの隔たりがあると思った方がいいでしょう(全然違います!)。
プログラミングを使って何を作りたい?具体的なイメージがあるだけで効果がある
さて、このいきなりパクチーさんを防ぐ方法は、「こんなもの作りたいなぁ」と頭の念頭に置いておくだけです。
完成形の漠然としたイメージがあるだけで、情報キャッチのレベルに差をつけることができます。
「これは自分にとって価値のある情報っぽいぞ」というアンテナが張れるため、遠回りながらも正解に近づくことができます。
これが目的がない場合だと、全ての情報がフラットになるので、自分には必要のない情報も取り込んでしまい混乱してしまいます。
それでも全くイメージがつかないという人は、まずは初心者向けの学習動画で、実際に何かを作っている動画をざっと見て、概要を掴むようにして、そこからこんなの作りたいというイメージを作るのでもいいでしょう。
以上のように、もしプログラミングをもう始めている人は、まず何かを作る!そして、これから始めようとしている人は「こんなもの作りたいな」と頭に置いて思って勉強しましょう。今年の夏も暑くなりそうです、一緒に頑張りましょう!
関連記事: