理系大学生名取さんインタビュー

1. 名取さんはいつからプログラミングを始められたのですか?またなぜプログラミングを始められたのでしょうか?

小学校5年生のときからPCが家にありました。ただ実際に自分でWebサイトを作ることを始めたのは、中学生に入ってからでした。自分が通っていた中学校には、IT補助員の先生がいて、その補助員の方がいたことや、中学のときは科学部に所属していて、その科学部にいた先輩のすすめがきっかけでHTMLを書くようになりました。実際に作ったものとしては、科学部のWebサイトを作るということで勉強していきました。
その当時読んでいたのは『HTML+CSS Handbook 2nd Edition』です。結局1か月くらい集中してWebサイト自体は完成したのですが、公開することができませんでした。学校の許可がおりずに(笑)

そしてその後はジオシティーズというYahooが運営しているサービスを使って、無料の範囲内でWebサイトを作るようになりました。TeraPadというテキストエディタを使ってHTML + CSSを書いて、ジオシティーズ上で公開していました。
当時作っていたWebサイトは、自分の関心のある技術的な情報について書いてるWebページのURLをひたすら貼りつけたものでした。またこのページには、自分でゼロから作ったわけではないのですが、他のサイトで公開されていたCGIのプログラムを拾ってきて、設置してクラスメイトを誘ってチャットできるような機能を付け、実際そこでクラスメイトとチャットしていました。
その後もやはり科学部の先輩のすすめがあって、Visual Basicを書いて、MSDNにあるサンプルコードを実際に見ながら、勉強していきながら、RSSフィードを表示させるようなスクリーンセーバーを作ったりしました。このときが始めて、プログラミングしたときだと言えると思います。
そして高校生になってからは、進学校ということもあり、自分でなにか作るということは減ったのですが、3年生になると、学園祭の全校制作でVBAを使ったドット絵を作ったりもしました。部員は一人だけだったのですが、コンピューターサークルにも所属していました(笑)

2. 名取さんは大学生になられてからはどのようにしてプログラミングを勉強されていったのでしょうか?インターンでの経験も含めてお聞かせ下さい

中学校で科学部、高校時代にコンピューターサークルに所属していたこともあって、大学は理系に進学しました。大学に入る前からそうですが、まずプログラミングを勉強するというよりは、自分が作りたいものを作るためにその都度必要なものを勉強していくというような形でした。
大学1年生の4月から12月の時期にかけては、高校時代からMacを持っていたこともあり、ちょうどiPhoneアプリ開発について巷で盛り上がっていたので、自分で作ってみようと思い、個人的にiPhoneシュミレーターで動くようなiPhoneアプリを作っていきました。

大学1年生のときは、プライベートの開発ではiPhoneアプリの開発に挑戦していましたが、大学の授業では1年生のときはC言語をやっていました。基本的な四則演算を行うプログラムをC言語で書いたり、指定された形式にデータを加工するプログラムを書いたりしていました。
さくらVPSのサーバを借りて、日付入力して、曜日を算出するような簡単なWebアプリケーションも作りました。WordPressでのサイト制作も実際に自分でやってみましたが、非常にいい勉強になりました。
大学2年生になってからは、授業ではJavaに近い言語になるのですが、Processingというプログラミング言語を使って、ブロックくずしを行うようなコードを書いたりしていました。プライベートでの開発はというと、私はMacを使っていたので、MAMPを使って開発環境を作り(WindowsであればXAMP)、そこでGoogleのジオロケーションAPIをJavaScriptを使っていじってみたりもしました。
大学3年生になると、授業ではなくて、実験の機会が増え、数値解析をするようなコードをC,C++を使って書いていました。プライベートの開発では、なにかを形にするというわけはないですが、PythonやRubyのコードを簡単に書いてみたりもしています。
実際私は理系の大学に進学して、情報系の学部に進学したため、授業でプログラミングを課題としてやる機会があったのですが、学校の授業では先生が教えたことしか勉強しません。それは非常に閉鎖的だと自分は感じました。授業という枠に留まらず、色んな言語に触れてみたり、アプリの開発など積極的に挑戦していったほうがいいと個人的には思います。
独学でプログラミングを勉強するようになった延長線上で、私は有給インターンに行く機会が得られました。そこではプログラミングを独学でやっていたときと違って、わからないことがあったときに周囲の方に相談しながら開発を進めることができるので、非常に有意義な学びの機会となっています。何より独学でやることも大事ですが、より学びの速度が加速したように思います。
また有償で対価をもらったうえでものづくりをするインターンなので、
自分の作っているものに対して責任感を持ってコードを書けるようになりました。具体的に言えば、SQLインジェクションといった問題にいかに対処するかを意識したうえで、コードを書くといったことが個人で独学で勉強しているときには自分自身意識できていない部分でした。
jQuery Mobileでの開発もやらせて頂きましたし、私はエンジニアですが、個人で開発していたときには経験がなかったデザイナーの方とコミュニケーションをとりながらプロジェクト単位で開発する経験にも恵まれました。

3. 最後にエンジニアインターンを見ている学生の皆様に一言メッセージをお願い致します

独学でプログラミングを勉強するのは非常に大切だと思うのですが、そのときに一緒に勉強する仲間がいることが大切だと思います。そのような仲間がいることで、互いに持っている知識、技を教え合うこともできますし、今自分がどのようなレベルにあるのかを相対的に知ることができます。
また最近ホットな技術について話をしたりすることもできるので、今後学ぶべき技術についても知ることができます。ぜひ一緒に学ぶ仲間を見つけてみてください。インターン先でそのようなやりとりができる方を見つけるというのでもよいと思います。