俺とプログラミング

私はプログラマーです。

数日前、プログラミングの勉強を自分ではどうやってきたのか、ということをテーマにしたtwitterで上げている人がいて、あ!これ同じだ!と気づいたことがありました。その人は「プログラム的思考とか全く知らなかったけど雑誌に載ってるソースを打ち込むうちに何となく理解できた。」と書いてありました。私もよく思い出してみたらこんな感じで勉強してました。

1)すごく単純なゲームのプログラムのリストが10とか20とか載っている本が出ていて、それを買ってきた。

2)レーシングゲームとか数当てゲームとかそういうレベルだと記憶しています。その中で気に入ったゲームのプログラムをパソコンに打ち込む(正直全く意味がわかりませんでしたし、意味を掴もうとも思いませんでした。これを打ったら動くんだと信じてただ打ち込む感じ)

3)全部打ち込んで、カセットテープに保存。打ち終わって保存して実行しても大概は動かない。フリーズして反応しなくなるので再起動して保存したプログラムを読み込み。

4)印刷されたリストと自分のプログラムを1文字1文字確認すると、間違っています。意味が分からず打ち込んでいるので当然です。Oと0とかlと1とか難易度高い間違いもあります。大文字と小文字の間違いとか

5)そうこうしていると動くようになります。ゲームを楽しみます。

6)しばらくするとゲームに飽きてくるので、飽きてきたらようやくプログラムの確認をし出します。どの行がどんな意味を持っているか本に書いてあるので、なるほど。と思って確認。

7)一通り納得したら別のゲームの打ち込みに移ります。で、確か本を一冊全部やることはなかったように思います。気に入ったものだけ。そしてプログラムを覚えるというよりはゲームをやるために打ち込む雰囲気。なので正直勉強にはなっていなかったです。

以上。特に自分なりに色を変えたり応用したりということはしませんでした。もちろん一からプログラムを作ろうという気もなし。プログラムを作ろうという気になったのは数年経ってからだと記憶しています。

結局これってプログラミングを学習するという行為からは程遠いのですが、

・プログラムというのがどんなもので、どんなふうに書くとどう動くのか、は理解できた。

・Oと0は打ち間違える可能性がある。lと1も。プログラムを組むときに気をつけるコツ、みたいな物を覚えていった。

これは自然と身につきました。覚えるというより身につくという雰囲気。

プログラムの文法を覚えたり理屈を覚えたりすることよりも、そもそもの仕組みやコツを覚える方が先だったので、今のプログラマーさんの勉強の仕方とは全く違うんじゃないでしょうか?このtwitter主さんと私と少なくとも2人はそういう勉強法でうまくいったわけなので、もしかしたらこういう勉強法の方が適している人もいるかもしれません。

いざ自分が教える側になると理屈を教えた方がいいのではないか?と思ってしまうのですが、そもそも自分はそうやって勉強はしていない、というのは今考えると「あれ?」と思ってしまいますが、いつしか初心者だった自分はいなくなってしまうんですね。

これって、自分に教える能力がない、もしくはコミュニケーション能力がない、ということなんですが、自分が初心者だったときに売っていた本のようなプログラムのプリントアウトされた本はいつしかなくなり、CDにリストが保存されていて読み込んだら動かせるようになり、さらにネットからダウンロードできるようになっていくと、もしかしたらコツを身に着ける手段が失われてしまったのかもしれません。便利になる、というのはあくまで作り手側からの視点なので、学ぶ側にとって便利なことが何かは自分しかわからない、ということを知る必要がありますね。

多分、プログラムに限らず、英語の勉強もそうかもしれないですし、ダイエットとかもそうかもしれません。

なので、noteを始めるに際し、「あの頃の初心者だった自分が今、自分の隣に座っていて、今のネットの環境でプログラムの勉強を始めるとしたらどういう本が必要か」という視点で書いてみたいと思っています。

全ての人にとってこの勉強法でうまくいくとも思っていないのですが、もし、今勉強のやり方自体で迷いがある人がいたら、お役に立てるかもしれません。ちょっと読んでみようと思ってもらえるような記事を書いていきたいです。

ダイエットのやり方って、多数の人がたくさんの方法を教えてくれますよね。利用者の人は自分に適したやり方を選択する。たくさんの人が「俺のプログラミング」を共有して選べるようになるといいのかと思っています。



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