Blogaomu

WEBアプリケーション開発とその周辺のメモをゆるふわに書いていきます。

2013年個人的振り返り

去年の暮れにこんなエントリーを書いていました。

2012年プログラミング 個人的振り返り - Blogaomu

これを踏まえて今年を技術面で振り返ろうと思います。

環境が大きく変わった

すでにご存知の方もいらっしゃると思いますが、2013年3月に転職をしました。前会社での主にPHPを使った受託開発から、主にRubyを使った自社サービス開発・運用というガラッと仕事内容が変わりました。今の職場ではRuby on Railsを使ったバックエンドの開発に加えてAngularJSを使ったフロントエンド周り、AWSを利用しての環境構築や整備など広い範囲を見るようになりました。以前もLAMP環境を構築して開発して納品、というプロセスは行っていたのですが、運用というフェーズにはあまり関わったことがなかったのでなかなか新鮮でした。

Ruby

specコードを書きながら開発を進めるスタイルを始めてみた、というのが今年の変化だと思います。去年のエントリーにもちらっと書いていましたが、The RSpec Book を読んでテストコードへの意識というのは高めていました。でも読むだけではだめで実践しないと、ということで業務で率先してテスト書いてました。春ごろは一人でテスト書いていたのですが、だんたんとテストやRspecに興味を持ってくれる同僚が増えてきて、あー書いててよかったなあ、と感じているところです。

テストコードというので印象に残っているのは、先日pull requestを送ったのですが、修正したコードはいい感じだけどテストを書いてほしい、と言われてしまいました。たしかに、変更に伴ってバグも出てきてしまう、というのは良くある話ですよね。後日、テストコードを追加して無事にマージされました。これがgemへの始めてのpull requestだったので本当に嬉しかったです。

来年はpull requestキメたいです。 (http://www.blogaomu.com/2012/12/27/2012-programming/)

見事に達成しましたw

あと変わったことと言えば、gemやライブラリのコードをちゃんと見るようになったことです。rubydoc.infoというAPIドキュメントが見られるサイトがありますし、そこでも分からなければGitHub見たりbundlerでインストールしたコードを直接見たりしてどういう処理をやっているのか、というのをしつこく追っていました。とはいえまだまだ理解が追いつかない部分もありますが…。それに付随した感じで自分もYARD形式でコメントを残すようにし始めました。

Rubyを勉強するにあたって以下の本が非常に参考になりました。メタプログラミングRubyはリファレンスとしてもよく使っています。

JavaScript

先述しましたがAngularJSを日々触っております。11月くらいからにわかに盛り上がりを見せていますが春ごろから実は触ってました。とは言っても、データバインディングはある程度使えてるかなあという気がしているのですが、DirectiveとかDependency Injectionとかの概念はまだ理解できていません。なので来年は理解を深めたいですね。Rspecと合わせてJS側のテストも書きたいなあと思ってJasmineを触ったりもしました。http://www.blogaomu.com/entry/study-jasmine ですがまだまだ使い切れてない感じです。Node.jsは社内用ツールで使ってみていますが片手間で触っているのでちょっとずつ頭に入れてる感じですね。むむむ。

個人的にChrome extensionを作っていたのですがどれも中途半端に終わってしまった…。でもそこで学んだことは生かされているはず。

勉強会など

今年は以下の勉強会およびカンファレンスに参加してきました。

これとは別に@hokkai7go氏と蒲田のルノアールでpacker触ったりラーメン食ったりしました。 ああ、あとエントリー書いてないですがAWS Summit Tokyo 2013にも参加しました。

来年もちょこちょこ勉強会に参加していきたいです。

やりたいことたくさん

好奇心が旺盛になって気になったものはやってみたい、と今年は思うことが多かったです。Haskell、インフラや構成管理周りの自動化、リファクタリング、Node.jsといったところが来年特にやりたいかなあ。それと引き続きRubyの理解を深めて生きたいです。Procと複数プロセスでの処理について詳しく知りたい。そして、アルゴリズムは結局ほぼ勉強できずだったのでこれも引き続き勉強したい。

それでは良いお年を & Happy coding!!