雑記帳

日常を綴っていきます

私にとってのプログラミング

私は今、大学において情報科学を専攻する身であり、将来はエンジニアかなんかになるんだろうなあと漠然とした将来図がある。

思えば、自分がプログラミングをしようと思った決定的な出来事はなかったように思う。高校二年生の時点で、何かTwitter APIを使った小さいプログラムを書いていた。自分が初めて書いたコードはRaspberry Piの状態をTwitterに通知するといったものだったように思う。

当時の自分は何か新しい事をしたい。周囲と違った何かをしたい。という思いでいたのだと思う。事実、プログラミングを拙いながらも習得した自分は、学業に専念する周囲の人々とは違った存在になれている感じていたかもしれない。そして、漠然と、大学は情報系の学科に進もうと決めた。

私が結局進学した大学は、二年から学科に配属される。一年時は共通科目で線形代数やら解析やらを学んだ。一年時に教わった数学は難解なもので、全く理解できなかったため、勉強を放棄した。自分が理系に来たことすら間違いだったのではないかとすら思うようになっていた。事実、一年時は成績も大して良くなく、その結果が自分の無気力に拍車をかけた。もうその時点では、高校生の頃に抱いていた、「情報科学を学びたい」という気持ちは風前の灯火程度であったように思う。自分のGithubのContributionsを見ても分かるように、ほとんどコードを書く気力なんてなかった。

そして、配属学科を選択することになった。結局、情報系の学科に進むことになった。自分はその時点では、サーバーやらネットワークといったインフラ寄りの技術にしか興味がなかったために、インフラ寄りの勉強を頑張ろうと思っていた。丁度この頃に、自分は都内のベンチャー企業で働き始めた。自分はRuby on Railsを書くことになった。Ruby on Railsのコードを書くのは楽しかった。何故楽しかったのかを説明するのは難しいのだが、とにかく楽しかった。わからないなりに色々調べてコードを書く楽しさ、高校生でプログラミングを始めた頃抱いていた感情を思い起こされた。

情報系の学科は、自然とプログラミングが出来る人は出来る人で固まっていく。自分の周りにはとても技術力の高い人が多かった。そういった人たちと共に講義を受ける日々で自分のプログラミングに対する情熱は俄然、上がっていった。GithubのContributionsを見てもこれは明らかで、二年が始まった数ヶ月で昨年度書いたコードの量を凌駕していたと思う。

 しかし結局、学科の勉強ですらこれは自分が学びたいことと直結しているのかと疑問を抱くようになった。アルゴリズムとデータ構造の講義では競技プログラミングの問題が課題となっていたのだが、自分は優秀な周りの人々と比べると解けているとは言い難かった。自分はやはり才能がないのではないかと思うようになった。そして、自分は本当にこのままプログラミングの道を志していいのだろうかと感じるようになった。競技プログラミングのような、複雑なアルゴリズムを考案する能力のない自分は理系に来たことが間違いだったのではないかと再び思うようになった。

結局、自分は興味があったサーバーやインフラの知識が周囲より勝っていただけで、プログラミングそのものの技術は他の人々より低かったのだ。これは自分が今までそういった勉強をなにも行ってこなかったからだという結論に至った。優秀な人達は、毎日競技プログラミングの問題を解いたり、書籍を読んだりしていて、相応に努力していたのだ。

そして、自分にとってプログラミングって何なんだろうという疑問に至るようになった。自分はプログラミングが好きか?と問われると間違いなくノーと答える。別にプログラミングそのものが好きなわけではない。

では何故プログラミングしているのか?

それは、自分が成し遂げたい事を実現する手段がたまたまプログラミングであったからだ。プログラミングという行為は手段にすぎない。