すこしふしぎ.

VR/HI系院生による技術ブログ.まったりいきましょ.(友人ズとブログリレー中.さぼったら焼肉おごらなきゃいけない)

回想録ー其ノ三ー大学編

こんばんは1000_chです.今日も元気に振り返りシリーズです. リレーメンバーはだいたい振り返り終わってて若干乗り遅れてる感はありますね.

さて今回は大学に入ってから今までの所を語ります.プログラミングが出てくるのはいつのことやら.ではいきますね.

大学1年

自分の大学は,2年冬学期になるまで専攻がきまりません. 1年〜2年夏の成績をふまえ,進むべきところを選択するシステムになってます. 大学レベルの知識に触れた上で,進む道を決めることができるという反面, うまいことやらんとやりたいことができないシステムです. 世知辛いですね.

まぁそんなこんなで,1 年次は教養の勉強をいっぱいと,大学から始めた合唱サークルに打ち込む日々でした.

ちょこちょこロボコンっぽい授業に参加したりはしたのですが,プログラミングなんて全く触っていません.

大学2年

1年次で進学先振り分け前の単位はほぼそろい,夏学期はほとんどやることがありません. 幸いにして成績にも問題がなかったので,無事自分の希望通り,工学部のロボットを扱う機械情報学という学科に進学します.

そして2年冬.はじめてプログラミングに触れます.

機械情報は,3年夏まで機械系の学生と共に授業を受けます. 機械加工から設計,組み込み開発などをベースに学んでいきます. だもんで,初めて触れた言語はC言語でした.

人生初のプログラミングなもので,includeだのmainだのおまじないの数にビビっておりました. それでも,自分が組んだコードが動く快感は大きかったです. HelloWorldで感動...とまではいいませんが,ブラックボックスだとおもっていたコンピュータの世界(と怖い黒い画面)に思ったよりも簡単に入っていけるなぁと思ったものです. わからないなりに授業で出てくるコードを書いたりしていたのですが,簡単な対話型買い物プログラムとか書いたのは楽しかったです. しかしいまだにsegmentation faultとか出てきたときのガクブル感は忘れられません.

このときは「とりあえず授業だからやっていた」という感じで,「これが何の役に立つんだろう」ってのは具体的なイメージはなかったです.

大学3年

夏学期

キャンパスを移り,いよいよ情報っぽいことにも触れ始めます. マイクロコンピュータのアセンブラの話に始まり,ハードはロボットの姿勢制御,ソフトはコンピュータビジョンやグラフィクスと,ロボット屋さんが必要とする知識はどんなものがあるのか,を体験しました. 震災の影響で土曜も授業になったりで,毎日午前2コマ座学,午後ずっと演習ってな毎日でした.

プログラミングでいうなら,半年間のCを軸として,C++オブジェクト指向という考え方を知ったり,openCVやらopenGLを初めて触った頃ですね.あとはpythonって言語がおもしろいよ!って先生に布教されて「Cだけでなく複数言語学ぶのも楽しいんだなー」って漠然と思ってた頃です...まぁpythonではprint "hello world"で満足してました.てゆーかpythonのfor文(いわゆるforeach)の意味が分からずもういいや,ってなった覚えがありますw

でまぁ当然のことながら,授業で自分の知識として身につけられる部分には限りがあります. ぶっちゃけ回路の話とか未だに知識が足りなくてぐぬぬってなることが多いです. しかし,この経験のおかげで冬学期にどんどん演習難易度がエスカレートする課題にもビビらずついていく心構えができましたw

...冷静に考えると,世の学部3年生たちはこの頃インターンとか参加してるんですよね. 自分はまだ研究も始まってないので「いやいやせっかく大学はいったんだから就職とかないっしょ院で研究っしょ」とか考えてたと記憶しています. どちらが大切かは価値観次第だと思いますが,自分の現在の価値観は大学院入っていろいろやったからこそだと思ってるので後悔は全くないです. ...というかそもそもこの頃の技術力では今以上に何もできないw

冬学期

いよいよ機械情報が本気を出し始めます. いままでの演習なんてただのお遊びだったんや...と思えるような課題を毎日出されます. キツイときは,終了予定時間になって初めて課題内容を理解し,そこから解き始めるなんてこともありました. あまりにキツいもんで「シベリア送り」とかいわれてましたねぇ.

そのおかげ?か学生同士は協力せざるを得なくなります. 結果今まで以上に変な連帯感ができ仲良くなれたりしますw

課題としてやってたやつを少し思い出すと..

  • arduino(ただしarmマイコンをそのまま.IDEとかヌルいものは使わない.レジスタリファレンスとの激闘.冬学期初っぱな)
  • octaveでrobot simulation(順/逆・運動学/動力学のコード実装)
  • アセンブリ言語
  • PSoCマイコンによる回路プログラミング
  • FPGAボードによるry
  • openCV / openGL つかって自力AR(ARToolkitのありがたみがよくわかる)
  • クラスタリング・パターン認識
  • Lispでロボット動かす(lispがとにかくつらい)
  • 自分で勝手になんか作れ

ぱっと思いつくとこでこんなところか. まだまだいろいろやらされた勉強させていただいたように思います.

これを半年かからずにやるんだから大変です. 当然午前の座学はなくならないわけで,朝から晩まで缶詰です. 世の大学3年生は暇だとかいいますけど,我々からしてみるとそんなん嘘です. 大学生活の中で一番インプットが多かったのがこの時期です

演習では基本的にCとLispを利用していました. なんでLisp?と思うのですが,おそらく教授の趣味です. 皆「Cもようわからんのになんでこんなんやらなあかんねん!」といいながらたくさんのカッコと戦っていました. 今になってみるとLispまた触ってみたいなぁとも思うのですけどね.

だもんで授業としては新しい言語に触れる機会はあまりなかったです.

もちろん演習とは別に,座学の方でもプログラミングの課題が出たりします. こちらの方でパターン認識とか,機械学習とかの課題がありました. ここで改めて触ったのがpythonとの出会いです.

Eigen使うのが面dnumpyというすばらしいライブラリを知ったので触ろうと思ったのがきっかけです. グラフ描画とかも簡単にでき,強制されたのではないということもあり,pythonは好きな言語の一つになりました.

先述の通り3年ラストの課題で1ヶ月くらいで勝手になんかつくれ,ってのがあります. ここで自分はCV / GLつかってAR空間とのインタラクション的なものを作りました. この体験がもとで,今のVR / HIを扱う研究室を選んだといっても過言ではないです.

大学4年

研究室配属の学年です. 様々な演習を経て「ロボットを介するよりも,直接情報技術を人間に還元したい!」って思いが募り,HI分野を志します. そしてある意味ロボット学科のなかでは異端(?)なVR/HIの研究室に所属することに.

この研究室がまた自分にあったところで,「手の早い者のみ生き残る」と. リソースを活用して自由にいろんなものを作らせてくれるところでした. なので夏学期は「とにかくいろいろ作ってみたい!」と,processingにはじまりarduinoにoF,MaxなどのMediaArt系環境を様々さわりました. ここで"ITのからんだモノ作り"の楽しさを味わいます. やっぱ自由にモノつくれる環境って最高だよね,と.

モノをつくって,それを使って,という研究のループが楽しくて,「プログラミングはあくまで手段だよね.何を作るか,こそ大事だよね」と思うようになりました. ...複雑な開発環境学ぶのを避けたともいえるのですがw

修士1年

さて卒論が終わり無事大学院へ. 序盤は割と卒論を学会に出すために論文を書く作業が主で,あまり開発はできていませんでした. そのうち趣味でiOSのネイティブ開発を触ってみるようになります. というのも,konashiつかってiphoneと実世界もっとつないでみたいなーと思ったんです. 現状エンコーダのセンサ値よみこんで,くらいしかできてないですが,そのうちおもちゃ作りたいです.

そしてM1にして初めてwebの世界に触れます. いままで人とデバイスをつなぐところばかりやっていたので,デバイス間をつなぐwebの技術を身につけたいと思ったのが始まりです. 幸いにして様々な企業でのインターンを行ってくださっている世の中なので,ノースキルで様々突撃してみました.

結果,本当にチャレンジしてよかったな,と思っています. VoyageGroupのTreasureにてphpとwebの基礎を,DeNAのTechStudigでnodejsでの開発を経験させていただきました. どちらもチームメンバに恵まれ,技術以外でも貴重な経験ができました. こうして今だらだらとblog書いているのもtreasure参加した縁なので,人生何があるかわからんですね.

そして今に至りまして,最近では音声信号処理をきちんと勉強しとこうかなと思う日々であります.

 まとめ

だいぶ書き散らしてしまいましたが,いかがでしたでしょうか. チラ裏といわれてしまえばその通りなのですが,もともと機械屋さんだった自分が何を思って今この場にいるのかを知ってもらうにはよい機会でした. 振り返ってみると,各年で新しい価値観を得ることができていて恵まれた学生生活を送っているなぁと思う次第です.こんな具合で.

  • B1:プログラミング興味ねぇ
  • B2:はじめてのC言語.プログラミングたのしい
  • B3:機情演習.へこたれなさがつく
  • B4:研究室.ITものづくりおもしろい
  • M1:インターン.webおもしろい

さて来年はどんなおもしろに出会えるのだろうか. 知的好奇心だけは誰にも負けずにいきたいと思います. では今回はこの辺で. おつきあいくださりありがとうございました.