らんだむな記憶

blogというものを体験してみようか!的なー

プログラム

プログラミングのチカラを身につけるならを読んだ!

覚えてないけど、最初にプログラム?というかBASICに触れたのは7〜8歳だった気もする。触れたというより眺めたに近いが。
モチベーションは単純だ。ゲームしたい。ファミコンを買ってもらえなかった!周囲は持っているのに・・・。これは痛い!お下がりのSHARP X1や(後にNEC PC-9801)は何故か転がっている。仕方ないからベーマガを入力してゲームするしかない。飽きたら次のゲームを入力だ。どんどんゲームが増えていく・・・
だが・・・難しい!クリアできない!普通なら練習するか攻略本を読むしかない。投稿プログラムに攻略本なんかあるわけない・・・。練習も面倒くさい。なら自分がクリアできるように改造すればいい!ソースコードは目の前にあるのだから・・・。
BASICを入力して、マシン語のデータが書かれているのでそれも入力してチェックサムがないやつだとすぐに暴走・・・チェックサムがついている投稿プログラムは素敵だなぁ〜と
C言語は行数がないし、gotoが悪らしいから嫌いっと・・・

カッコイイと思う

プログラミングはいたく視力を下げたし、まぁ、スーパーファミコン買ってもらえたのでモチベーションがなくなった・・・
数学は素敵だった。微分記号$\frac{d}{dx}$や積分記号$\int_0^\infty$はカッコよすぎだろ!!かーっくいー!
$\Delta = \frac{\del^2}{\del x^2} + \frac{\del^2}{\del y^2} + \frac{\del^2}{\del z^2}$は大分やばい
とりあえずプログラムはゲームやりたくて音楽聴きたくて視力が死亡する勢いで入力して、数学は電車の中でノート広げて書き込んだ・・・げほっ

自分に合う教本に出会う

運命の出会い。大体本の表紙に触れると野生の勘でなんとなーく

写経する

BASICはやばいくらい写経した。コメントもインデントも写経した・・・流石にそれはやりすぎだった・・・
数学はもう写経を捨ててフリーダムを求めて罫線もない白紙のノートになった

少なくとも、書籍のサンプルプログラムは、検証済み(であるはず)なので、

ってこともないので適当にデバッグするしか・・・(爆)
数学書はもっとやばい。勿論大体の論理のアウトラインは正しいんだろうけど、たまに証明がまったくよく分からなくてそもそも何かあやしい?或いは書き漏れ?があるようなこともある。自分でデバッグして別の論法で回避して読み続けるしか・・・。最高につらいのは論文のケース。errataなんかないし・・・。有名なやつなら誰かが別の論文で回避策を書いてくれることもある。ありがたや〜
実行環境って概念がないので、ある意味脳内コンパイルだから#include <cstdio>抜けてても気づかないからね・・・
これができないと数学はちょっと続けられない・・・

どんな言語を選べばいいのか?

色々考えるとC言語だなーと思ってしまう。結局いつか低レベルプログラミング(IgorZhirkov 吉川邦夫)|翔泳社の本のようなことが気になった時に、Cが分かりませんだと即死。というか気が乗らない。
CPythonにしてrubyにしてもインタープリタC言語で書いてあるから気になったら眺めたり設計をぼんやり見るもよし。rubyオブジェクト指向だけど、Cはそうじゃないのにどうやってインタープリタでは実装されてるんだ?的な・・・(但し、面倒くさいので深追いはしない・・・)
なんやかんやで速度を求めるアプリとか業界で少しは歴史あるアプリとかはCかそれに類するもので書いてある気がするので、githubからcloneして適当にバグを修正してぶぃんぶぃん乗り回すにはCとか分かってると便利だなーってか捗る