2年生になった
なんだかんだで1年働いて、エンジニアとしては2年生になった。
ので、今までのこととか、今後についてちょっと考えてみる。
ピカピカの1年生の参考になったらいいな。
1年前の自分
- とにかく技術力が足りてないからいっぱい勉強しよう
- やらなくていい理由を考える前にやろう
- 家に帰ったらとりあえずなんか動くもの作ろう
1年経った今の自分
- とりあえず知識は増えたから、わからないことでも知ってる知識でなんとかしよう
- いろんなことがめんどくさい
- 23時くらいに帰って、すぐ寝るようになった
というわけで、精神面では見事にクズ野郎に進化してしまった!
でもここで諦めないで、いわばマスクっちから究極進化しておやじっちへの道をがんばって歩みたい。
1年でできるようになったこと
- Emacsの基本的なキーバインドを使えるようになってタイピングが爆速に進化した
- RailsでAPIが書けるようになった
- Railsのテストコードが(怪しいながらなんとか)書けるようになった
- 実際のサービスをデプロイしたりバッチ書いて動かしたりできるようになった
- Flashで、FlexとPureMVCのフレームワークを使って処理をいろいろ書けるようになった
- Gitでコミットから始まってリポジトリとかブランチ作ったりマージとかリバートとかいろいろ覚えた
- fayeを使ったリアルタイムチャットを実装できるようになった
- さくらのレンタルサーバでサーバ借りて若干だけどCentOSいじれるようになった
- PythonでSkypeのbot作れるようになった
- Google Apps Script で Google Spread Sheet をいじり倒せるようになった
- Railsでファイルをサーバにアップロードする仕組みを作れるようになった <- NEW!!
挙げてみたらけっこうあった。いろんなことができるようになったんだなぁ、自分。
思えば、できることが多くなってからはスコープが狭くなったというか、前にも増してアンテナが低くなった気がする。
「納期」とか「コスト」とかいう単語が頭から離れなくなってからは、「今はちょっと時間かかるけど、今後のために最大効率のやり方を探す」っていうことができなくなってしまった。「とにかく今知ってる知識をつなぎ合わせてやったほうが時間かからなくね?」となって、結局もっといい方法を調べる前に思いついた方法で実装するようになってしまった。
今はちょっと前の忙しかった頃よりは時間ができてきてるから、また意識的に新しいことを学ぼうとしてるところ。
1年働いてみて、「時間はどうにかして作るもの」だと悟った。
つい最近だと、Railsでファイルアップロードする仕組み作るのに1日かかったし、RubyとかRailsとかの根本的なところの理解があんまりできてないことに気づいた。Rubyでファイル作ったり読んだりするコード書いてないんだよなぁ。
あと、エディタにEmacsを選んだのは本当に正解だった。
こいつのキーバインドのおかげで文字を打つ速度は爆速になった。KeySnail入れてFirefoxもEmacsになったし、Mac付属のテキストエディタも簡易Emacsみたいなもんだ。
Emacsが最強だと言うつもりはないけど、やっぱりC-hでバックスペース打てるのとそうでないのとでは今後のコーディングに費やす時間は相当違うと思う。その時間の分だけ設計とかアルゴリズム考えられるわけだし。
Emacsを何かに例えるなら、「MP消費の少なくて済むいい杖」って感じだ。
できるようになりたい、ならなきゃいけないこと
- 複数のAPサーバが絡むことを想定したコード(データの不整合が起こらないようなコード)を書く
- DBに対するアクセスが最小で済むようなコード(メモリを意識して高速に実行されるコード)を書く
- MXMLじゃなくて生ASでUIを作って画面をコントロールする
- 基本情報の資格を取る
- DBの理解を深める
- gem作る
- Webサービス作る
- iPhoneアプリ作る
とりあえず、目の前の目標としては一番近いところで4,1,2で、自分で時間を作って家でアプリとか作るって感じかぁー。
複数のAPサーバが絡む場合のRailsコードの書き方でいい書籍があったら知りたいな。
いろいろ精神的に堕落しつつあるけど、今日からもっかい立て直していきたい。
これからっしょ!!