プログラミング経験について

自分はIT企業を志望しているということもあって、エントリーシートにプログラミング経験という項目がある会社がよくある。
文系でも研修で覚えるから大丈夫!と宣伝しているところも多いけれども、全く参考にしないというわけではなさそうだ。それに、メーカーよりだと理系しかとらないというところも多かったように思う。
というわけで、今回は自分のプログラミング経験について書きたいと思う。


まず最初に言っておくと、自分のプログラミング能力なんてそうたいしたものではない。人並みよりはできるかもしれないけれども、情報系の学科にいる人、卒業した人なら自分以上にプログラミング能力にかけた人なんてごまんといるだろう。
自分が初めてプログラミングを知ったのは中学2年生のころだったと思う。
父からVisual Basicというプログラミングを教えてもらった(当時は6.0)。父親によると、昔から自分がパズルが好きだったので、もしかしたらプログラミングも好きになるんじゃないかと思って教えてくれたらしい。
まあ、そんな予感は的中してか当時はそれなりにはまったように思う。家に日経ソフトウエアという雑誌があったので、それを見て勉強して、スロットゲームや数当てゲームなんかを作っていたような・・・。
というのも、Visual Basicはウィンドウにボタンを配置してそれをクリックしたらどのようなイベントが発生するかというのが本当に簡単に書けるプログラミング言語だったので、たいした知識もなく作れたからだ。当時はfor文も配列も知らなかったように思う。
ただ、父親が新しいパソコンをどっかからもらってきて、いつの間にかそれが僕ばかりつかうようになって前に使っていたVisual Basicが使える環境にあるパソコンを使わなくなった。もし、そのパソコンにもその環境があればもう少しやったかもしれないが、確か当時はその環境を構築するのにかなりのお金を使うと思っていたと思っていたのだ。まあ、それでも父に頼めば会社から専用のCDを持って帰ってきてもらってインストールしてもらうということもできたのだけれども、なんとなくしたくなかったのでしなかった。というわけで、自分のプログラミング経験はたった1年で終わった。


で、そのパソコンで何をしていたかというと、メモ帳でこつこつとHTMLを書いて自分のHPを作っていた。ちなみに、HTMLはプログラミング言語ではなく、マークアップ言語だ。
HTMLはプログラミング言語じゃない : 雑記帳 : der Gegenwart
JavaScriptも使ったページも作ったか、ただどこかのサイトからコピペしたのを使っていただけだった。
確か、IEVBScriptというものが使えると知って少しだけ作っていたこともあったけれども、IE限定というのがなんだかなぁ。と思ったのでやめてしまった(といっても、当時使っていたブラウザはIEなんですが)。
それに、当時はプログラミングの勉強には関心がなかった。なので、JavaScriptのサイトへ行っても『関数』や『条件分岐』と書かれたリンクにはアクセスせず、『マウスを重ねるとイメージを変更』『アクセスした日時の表示』と書かれたリンクをクリックしていたように思う。つまり、プログラミングができることよりも、何ができるかのほうが自分には重要だったのだ。
そういう意味で、自分はそこまでいうほどプログラミングが好きというわけではなかったのかもしれない。


といっても、中学生のときにはまった気持ちは覚えており、プログラミングをまた学びたいという気持ちもあった。特にはてなブックマークを見ていると、プログラミングを学びたいという気持ちが強くなっていったように思う。
というわけで、大学は情報系の学科を選んで進学を決めた。
まず最初に学んだのは、大学1年生の秋学期に学んだC言語だった。まあ、経験があったおかげか、それほど苦労せずに授業を受けることができ、その授業の単位は秀となった(90点台)。さすがにポインタは少しつまづいたけれども・・・。
次に、学んだプログラミング言語は大学2年生秋学期に学んだJava。これは、GUIを含めて実習授業で、面白かった。がんばって自由課題でオセロ作ったりもしたような気がします。
他には、JSP(ほとんどJavaと変わらないけど)、MySQLC++も少しだけ学んだような気がする。
一度、去年ぐらいにRubyを少しだけいじった。けど、本に載っているソースコードをコピペしただけだ。
ただ、どれも人並みかそれ以下にしか使いこなせていない。
一番得意な言語はC言語だけれども、いまだに過去のプログラムや本を参考にしないと構造体すら作れそうにないし、標準ヘッダとして最初からある関数はいまだに使いこなせない。後、ネットワークプログラミングの知識はまったくない。
研究室に入ってからは、OpenCVOpenGLARToolkitというC言語ライブラリを使わざるをえない状況になったので少し勉強した。これぐらいか。
せめて、OpenCVぐらいは人並み以上に使いこなせるようになりたいものだ。