##小学生のとき、BASICのコードをMSXマガジンを見ながら写経した話
時は三十云年前。
スーパーマリオが大ブームとなり、ファミコンが一家に一台あたりまえみたいな時代となりまして、当然、私も欲しい!となったのですが、我が家の両親はゲームに理解がなく、泣いてお願いしても、必死にプレゼンしてみても、まったく買ってもらえませんでした(頑固だな!!)。
しかし、MSXだったらパソコンだから、なんか勉強になりそうだからいいよ、ということに(単なるイメージ!)。
なんでそんな一般的にはマニアックなものを知っていたかというと、姉の友人が2人ほど、なぜかMSXを持っていたのですね。うちと同じような両親だったなのかな。
結局買ってもらったのは、当時出たばかり(年齢がばれる)のSONYの定価32,800円HB-F1でした。カセット差し込むところが赤いやつ。
で、ドラクエ2とか悪魔城ドラキュラとか、ファミコンの倍の値段はするカセットをお小遣いやお年玉をやりくりして購入し、ファミコン代わりに楽しんでいました。
ある日、そのとき先に進めなくて詰まっていたゲームの攻略方法が載っていたので、雑誌「MSXマガジン」とやらを購入してみたんですね。
そしたら、読者が作成・投稿したゲームが掲載されていて、BASIC言語で書かれたコードが丸々載っていたのですよ。
RPGの楽しげなゲームが画面キャプチャとともに紹介されていて、ナニコレ、やってみたい!え、これ打ち込めば動くの?すごくない?
で、意味も分からず、コードを頑張って打ち込みました。
ひたすら打ち込みました。
来る日も来る日も打ち込みました。
(この時失敗したと今思うのは、まったくコードの意味とかを考えずに、ただひたすら打ち込んでいただけという点です)
RUNリターンする瞬間のドキドキといったらたまりませんでした(大概エラーだらけ)。
エラーをひとつひとつつぶしていくのも楽しかったです(ここで言うエラーは、ただのスぺルの打ち込みミス)。
何千行もあるコードなので、もちろん打ち間違いだらけで、結局まともに動かなかった記憶があります。
##結果どうだったか
大事な子供時代に、この写経に膨大な時間を費やしましたが、結果得たものは、タイピングスピードが早くなったってことだけ(それも1本指打法)!!
プログラミングについての知識はちっとも身に付きませんでした。
##プログラムの写経に大事なのは何か
ソースコードの意味を考えながら行うこと
なんですね。
あたりまえですが。
そもそも、当時はプログラムを勉強しようとしてやっていないわけで。
目的は「早くこのゲームをやってみたい!!」
むしろ考えることは時間の無駄、とばかりに、無心にただコードを打ち込むのみ!!
ただ、パソコンの青い画面に向かって英語書いてる自分かっこいい?みたいなのは感じていて、いつかこのコードを見ただけで何が書いてあるか分かりたいな、とは思っていました。
久しぶりにBASICのコードながめてみましたが、まぁ今だったら文法知らなくてもなんとなく分かりますね。成長してて良かった。
今の自分が小学生時代の自分にアドバイスするとしたら、先に条件分岐やら繰り返しやらのプログラミングの概念を学んだほうがいいということ。
じゃないと、文法を知ったところで、概念がわかってないから行き詰ってしまいます。
Scratchなどの子供でも分かりやすいビジュアルプログラミングでそれらを学んでみて、それからBASIC等テキストプログラミングの写経をすれば、条件分岐はこういう風に書くんだーとか、あ、ここはリストだな、ふむふむ、などと、ただのまる写しでも思うところはあって、少しは身になったのかなと思います。
(あ、昔だからScratchなんかない...)
##まとめ
1、写経はソースコードの意味を考えながら行うこと
2、写経の前にプログラミングの概念を学んだほうがいい
でした。