自分語りあるいはポエムにあたるやつです。個人ブログなので好きに書く。


型システムのしくみ、を買いました。読み始めてはいますが、まだ途中です。

これを買った主な理由が、型システムや、もっと雑に言えばコンピュータサイエンスまわりの理解が足りていないから、です。

情報科学研究科、を出たものの・・・

大学時代と、大学院時代にはコンピュータサイエンスを学んでいました。

QAエンジニアでコンピュータサイエンスを学んでいると言うとだいぶアドバンテージっぽく思われるかもしれません。たしかに学位的な見栄えはよいと思いますが、実際は中身が伴ってないなという自覚があります。タイトルにも書いた劣等感がここです。

学位は取ったけど身になっていない・・・と言うと大学側に申し訳ないのですが、そう「感じてしまう」という話です。

授業の成績はそれほど悪くなかった、のですが、なにせプログラミング自体ほぼできないまま計算機科学の研究室に入ってしまったので、たぶん周りからしたら「なんだこいつは」という状態だったと思います。

学部生時代、最初の輪読がTAPL

これの原著ですね。当時は日本語版が出ていませんでした。

輪読の仕方もわからず、そもそもコードもまともに書けず、なので相当落ちこぼれていた記憶しかありません。

いちおう輪読自体は終えて、その後も研究らしきことをしたのですが、指導してくださった先生に言われるがまま(※これは指導の問題ではなく、そうしないと何も進まないレベルで自分がわかっていなかった)卒論修論を書いていました。

あのころわからなかったことを取り戻したい

そんなこんなしつつ、なんとか修了はできたわけですが、先に書いたように「コンピュータサイエンス少しわかったぞ」とは正直言えない状態です。用語や概念のインデックスを脳内にかろうじて張れたかな・・・というレベルです。

そういった挫折&失敗経験もあって、社会人になってからは学生時代よりも本を読んだり、人前で考えを話したりするようになりました。たまに登壇や言語化についてホメていただくこともあるのですが、それらは「学生時代ダメすぎたので少しでも取り戻したい」という思いから、です。

せめて学生時代女遊びしてたからとか、麻雀ばっかりやってて授業全く行ってなかったからとか、そういうダメなりの理由でもあればまだ良い(よくない)のですが。普通に授業は出て、それで身についていなかったので、根本的なやり方がわかっていなかったんでしょうね・・・

という理由があって、あのころ学んで理解できたとはとてもいえない

  • 型システム
  • プログラム意味論
  • 計算理論の基礎
  • コンパイラ

あたりを、本当に牛歩で取り返そうとしている最中です。

・・・という事情から、最初にあげた『型システムのしくみ TypeScriptで実装しながら学ぶ型とプログラミング言語』を手にとりました。

これで少しは理解度を高めて、いずれ『型システム入門』に再度挑戦したい・・・

これはQAエンジニアの業務には直結しませんが、当時のリベンジというか、ダメだった当時の自分という生霊を浄化するような戦いだと位置づけています。