アプリ開発現場に飛び込んで1ヶ月、新米ハンター(プログラマ)がいま思うことーー前半戦
一ヶ月、と言いながらもう12月も半ばなので一月半くらい経ってしまったことになる。
東京修行は3ヶ月だけなのでもう半分が過ぎてしまったのだ。
じわじわ成長できている実感はあるので、そんなに焦ってはいないが、少し焦っている。
その辺も含めて今回は、ぼくのプログラマとしての現状をありのままに話すぜ!
(とりあえずいまハマっているバンドの動画紹介から始めて、それを聴きながら読んでいただくことで、最後までチョコたっぷりなブログにしようと目論む)
最近は sonic youth が熱いです。
Sonic Youth - Dirty (full album)
そもそもの話
それでは本題といきましょう
いまぼくは、何をしているのだろう
京都でリモートで教えていただいている時には、「Ruby on Rails でアプリを作っている」という話だけを聞いていて、Googleさんも「Ruby on Rails はMVC全部入のフレームワークだから」とおっしゃっていたので、僕はてっきり「それだけできたら大体なんでもできるのか、やったぜ!」と思っていた。
が、もちろんそんなわけはなかった。
いま開発に参加させていただいているアプリの構成は、
・サーバーサイドはRailsで
・sessionやらいろいろredisにつめている
・view側はReactで
・ajaxでいろいろ取ってくる感じ
・なのでcoffeeとjadeで書いてgulpでポン
・websocket使ってリアルタイムで更新されるchatもある
みたいな感じ(と思っている)。
11月に初めて中身を見た時の衝撃はすごかった。
「えーっと、viewだから、appの中のviewsの中の(ドットインストール風に)、あ、あったこれこれ!ん??????」
ってなった。
すでに大枠はできているはずのerbファイルの中身が一行だけだったのであるから、それはそれは驚いた。
「どうなっているんだ?新手のイリュージョンか!?」
でも結局イリュージョンではなかった。今話題の、新手のReact.jsだった。
facebookが開発したview側に特化した準フレームワーク的な、まあ要するにajaxとかvirtualDOMとかいろいろ上手いことやってくれて、全体を再読み込みすることなくページ内の一部分を更新するような記述を比較的簡単に、わかりやすくシンプルに実装できるものらしい(と思っている)。facebookのコメント機能をイメージしてくれたらいいらしい(そう聞いた)。
最初からいままで、成長の軌跡
そういうわけで、9月からの2ヶ月、Railsを習得するのに必死だった(それも実はPhantomでスクレイピングしたりいろいろだったのですが)ぼくは、ザッカーバーグのイリュージョンに出鼻を挫かれたのであった。
「(何これ全然わかんない。どれが何してどうやってデータの受け渡ししてんだろう)すみませんわかりませーん」
と、師匠にすがりつくことを繰り返していた。
(あ、師匠というのはこの方です。)
ただ、最初の方は簡単なcss(あ、それもそういえばscssだった)の修正なんかの入門クエスト(チケット)を振っていただいたおかげでなんとなくクエストのフローとかはわりとすぐ身につけられた。が、そんな矢先に、ほとんど初めてのviewまわりのクエストのボスがなかなか強いドラゴンで、そのドラゴンを倒すのに要した2週間は本当に混沌としていた(MHP2の「忍びよる気配」で、無謀にも、ほとんど全裸装備で骨刀とかで2週間、ティガレックスに立ち向かい続けたイメージ)。
しかしまあ、そんな鬼畜クエストのおかげもあってか、先輩ハンター(師匠)の助け(それも全面的な!)を借りながらなんとかそのドラゴンを倒してからは、それなりにクエストをこなせるようになっていた気がする。
最初は「これ全然わからないんですけど…」みたいな質問が多かったが「一応できたっぽいですが、これでいいですかね?」という感じで訊けることが増えてきたのは成長だと思う。
最初は「こうやってもどうせ動かないだろうな…ああ、やっぱり怒られた。。」だったのが「これでどうだ!?やったぞ!通ったぞ!」が多くなってきたのはとてもうれしい。
早く、いろいろ何でも思い通りにスラスラ書いていけるようになりたい、そうしたらきっともっと楽しいだろうなぁ、と夢想する12月であった。
後半戦の予告について
修行の日々も折り返し地点付近まできて、これから先のことについてもいろいろと思うところはあるが、どうせネタに困っているので、それは次回にまわして記事数を稼ごうと思う。
明日?来週?わからないがそのうち書きます。
乞う、それなりのご期待。
それでは