今年の総まとめ

まず始めに長らく更新を停滞してしまったことを反省したいと思う。
アルバイトや実験、発表の日々が続きついついブログの更新をサボりがちになってしまった。
本来このブログは僕の学習記録のためにつけているようなものなので、いくらサボったところで結局損をするのは僕自身でしかない。
だがこの数ヶ月の間、実は本当ならブログに書き込んでおくような様々な経験をしていた。そのことを考えてみるとやはり更新をサボってしまっていたのは非常に手痛いミスだったと思う。
特に「イテレータはただのポインタだよ」と助言を受けた時の、あまりの衝撃は今でも覚えている。当然すぎるその事実にどうして僕は気がつかなかったのか、目から鱗というのはこのことかと思った。

ともかく、そういった本当だったらここに書き留めておくべき体験をいくつもしてきた。
しかし既に時は過ぎ去り、その体験も記憶も風化してきている。
ここは思い切ってそういった「イベント」についての記事は諦めて、今年僕がどれだけ進歩したのかを総括して一年を締めくくりたいと思う。
以下、僕が今年学んだことを簡単に箇条書きにしていこう。

Java入門書を読む
LISPをかじる
Pythonを覚える
C++を覚える
・長期間のプログラミング作業(アルバイト)を行う
Emacsの扱いに慣れ始める(Flymake便利すぎ)
・gdbにお世話になる
競技プログラミングにチャレンジし始めた

ざっと振り返ってみるとなんだかプログラミング、特に言語習得関連に偏っている気がするがそれはまぁ事実なので仕方がない。確かに僕は今年一年で色々な言語に触れたと思う。
今年を振り返ると、僕にとっての2012年という一年は二つの期間に分けられると思う。アルバイトを始める前と後だ。アルバイトを始めた後の躍進は急激だった。

アルバイトを始める前の僕にとっての学習とはインターネットで情報を得るか、本を読むかでしかなかった。あとはせいぜいAOJでコツコツ問題を解くくらいか。速度は亀の歩みだったが。
それに対してアルバイトを始めた後に得たものは比べものにならないほどたくさんある。いや、決してそれまでの僕が何も得ていなかったというわけではない。Javaの入門書やプログラミングのセオリーを読んだおかげでオブジェクト指向に少しなりとも馴染みやすくなったように思うし、LISPの知識なんかはPythonの学習に大きく役に立った。動的型付けやリスト、リファレンス(参照、ないしポインタ)あたりだろうか。

今年を振り返ってみて、入門レベルなら複数の言語(少なくとも4言語)を一年で習得できるということはわかった。あとはこれからどのレベルまで持っていくかということだろう。
「複数の言語を体験し、その良さを悪さを認識した上で自分が普段使う言語を選ぶべき」プログラミング言語の選び方について僕はこう思っている。今のところLISPPythonC++がリードしている。
これからも幅広く言語に触れていきたいと思う。