オルタナティブ・ブログ > 村上福之の「ネットとケータイと俺様」 >

ロスジェネ彼女無しダメ人間がネットとケータイについてブログを書いたりします。

はじめてプログラミングを覚えるのはどうしたらいいか?という質問の答え

»

プログラミングを覚えたいという人がいます。どうしたらいいですか?とか、教えてくださいとか、どこで教えてもらえますかと聞かれます。

個人的には、Webプログラミングに関しては、漢字の書き方を覚えるのと、プログラミングを覚えるのは大差ないです。最初の最初は、「写して、書いて、覚える」しかないです。

絵とか写真が多くて分かりやすい言葉で書いてあるプログラミングの入門書で、出来るだけ薄いのを買ってきて、淡々と最初のページから、書いていることを淡々とマネして、写経してください。たまに改造してみてください。最初は、それだけです。だいたいわかったら、一冊全部やる必要もありません。難しい解説なんか、理解しなくてもいいです。動けばいいです。

今なら、本を買わないで、ドットインストールでもいいかもしれません。

最初は、本当にそれだけです。

頭がいいかどうかより、最初の最初で、写経する根気があるかどうかです。

多少、意味が分からなくても、淡々と写経を続けてください。地道に。淡々と。「はじめてのプログラミング」は、そんなものです。地味です。地道です。それだけです。難しくもなんともないです。最後までやる必要も無いです。

本一冊に書いているのをするのに、そんなに何ヶ月も時間はかかりません。薄いのだと一日掛からないことがありますし、長くても一冊で一ヶ月くらいです。クソ分厚い本は、だいたい読むところが20%くらいしかないです。

今のWebのプログラミングやスマホアプリプログラムは、「ある程度」は、頭が相当悪くてもできます。

フーリエとか離散コサイン変換とかチューリング理論とか数学を使うのはメーカーにいたときだけで、 ネット業界に来たらいきなり、数学を使わなくなりました。Σとか∫(インテグラル)とか、何年見てないんだろう。ソシャゲのKPIツールとか作れば、もうちょっと数学に触れられるんだろうけど、そういう仕事してないなぁ。

昔のプログラミングは、メモリの管理とか、ポインタとか、画像処理が必須だったりしましたが、今のWebのプログラミングなんて、算数すら使わないので、誰でも出来ます。本やネットから写経すればいいです。

ぼくも30年前、小学生のとき、キーボードの打ち方もアルファベットも良く分かってないのに、淡々とマニュアルのサンプルプログラムを写経してBASICのプログラミングを覚えたのです。そういうマイコン少年は日本中にいました。逆に言うと、小学生でも出来ます。僕の場合、たいして、学校で成績はよくなかったですが、プログラミングはできました。

「文系でもプログラミングできますか?」という質問がよくありますが、「小学生くらいの知能があればできる」と思います。僕らが子供の時のマイコン雑誌'に掲載されていたプログラミングは、小学生とか中学生とか高校生ばっかりでした。しかも、今より1000倍厳しいメモリ管理のうえに、ロクにAPIもツールが無い時代に、九九がロクにできない小学生がプログラムを書いていたので、文系も理系もへったくれもないと思う。

中学生が,「ゲームを作るために、画像作成ツールやマップツールやドット絵ツールが無いから、まず、それから作ろう」というのが普通な時代でした。#マイコン少年あるある。

日本はありがたいことに、自国語で書かれた入門書やサイトがいっぱいあります。自国語の入門書が無くて、英語しかない国の方が多いです。

プログラミングの最初なんて、漢字の書き取りと同じです。初めてのときは、ひたすら漢字ドリルに書いている漢字を写経のように淡々と書かないと漢字なんて覚えないじゃないですか。へんとか、つくりの意味なんか、知っててもしらなくてもいいから、淡々と写経して、漢字を覚えるのと同じです。

何かを学ぶとき、最初の最初は、地道にマネすることが大事だと思ってます。

プログラマの皆さんが、新しい技術や言語やAPIが出てもリファレンスのwebページを見て、パッと使えるようになるのは、皆さん、最初の最初に地道な努力をしたからです。いきなり出来るようになったわけではありません。

すばらしいプログラミング学習教材サイトがいっぱいでてます。すごいことだと思います。ドットインストールとか、すごいなぁー、と思ってます。しかし、「地道にやる」という最初のステップがないと、意味が無いです。どんなにすばらしいサイトがあっても、地道にやる「根気」と「時間」が無いと、意味は無いです。

!!!!!!! アルファブロガー・アワード2010受賞

↓ご意見、ご感想はTwitterで!フォローするとネット業界のアレなことをたびたびつぶやきます。

Comment(1)