2014年の振り返り

2014年ももう最終日だ。
今年もやはりいろんな変化があり、いろんなチャレンジもできたのでその振り返りをしておこうと思う。
ざっと振り返った印象的な出来事は以下かな。

  • Angular.jsでサービス開発
  • イベントへの参加
  • フィジカルコンピューティングWG
  • AWAに異動
  • 本格的なAndroid開発

Angular.jsでサービス開発

新しい技術

今まで開発してきたアメーバ大喜利の一部メンバーで新しいキュレーションメディアの開発を始めるタイミングでAndgular.jsをいじることになる。
この3ヶ月前くらいに大喜利にフレームワークを導入しようとしたとき、Angularも検討して少し実装してみたがディレクティブ周りでうまくいかずに諦めた経緯があっただけにちょっと不安だったが、同じキュレーションメディアの先輩がボイラーテンプレート的なものを作っていたので、それを参考にしながらつくることができた。
Angularはまわりでちらほら言われているように最初の学習コストは結構高くて、それを超えると一気に速度がアップするものだ。
そして、その後にまた壁が現れて、それ超えるとスピードアップして…とアップダウンが激しいフレームワークだ。
短い期間であったがそれをかるーく体感することができた。
大抵の物事はなんでもそうだが、かなり根気が必要なのものだと思った。

英語

同時にこのへんからAngularについて調べ物をするときに英語のリソースを積極的に見るようになった。
今までのjQueryをメインにしたJavascript開発では日本語リソースだけで全然事足りていたのでわざわざ英語のサイトをみる必要がなかったが、Angularのような新しい技術についてはまだまだ日本語のリソースは少ないので必然的に英語のサイトをみる必要が出てきた。
これまで英語サイトには結構抵抗があったが、この経験のおかげで今では英語のリソースを優先的にチェックするほどまでにそのありがたみを感じるようになった。
やはり、話せるとまではいかずとも読めるスキルはエンジニアには確実に必要だと思う。
このプロジェクトの後にVue.js + Component + Gulp.jsという構成でまた新規サービスの開発をスタートさせるが、これはのちに立ち上がる新会社AWAに僕が異動することになるので途中で離れている。
これらの技術も当時はかなり情報が少なかったのでベースが出来上がるまでになかなか苦労した。。。

イベントへの参加

これまでイベントと呼ばれるものに参加したことがなかったわけではないが、社内だけでなく外部との関わりの必要性を感じ始めたことから積極的に参加するようになったが今年。
Study Mailとかに登録してイベント情報を積極的にキャッチするようにし、技術の勉強会からテック系やセミナーっぽいものまでいろんなイベントに参加した。
まぁ、勉強会自体は意味のあるものからそうでないものまでいろいろあるが、そこに来ている人たちと交流をしていろんな世界を知るという意味では良い機会の方が多かった気がする。
実際、それがきっかけで会社に呼んで頂いたこともあった。
来年からは登壇する側としても参加してみたいと思った。

フィジカルコンピューティングWG

業務とは関係なくあるテーマに沿って制作を行うワーキンググループなるものがあり、僕はフィジカルコンピューティングをテーマとしたチームに入った。
このチームでは、個人で自由にフィジカルコンピューティングに関連した作品をつくるということだったので僕は「植物とインタラクションできる作品」を作った。
電子工作要素は少なかったが、普段の業務ではできないことなので新鮮だったし楽しかった。
今後もこういう活動は続けていこうと思う。

AWAに異動

新会社AWA

avexと共同出資の新会社に異動になった。
このプロジェクトは、社内の首席エンジニアと若手の勢いあるエンジニアからなる少数精鋭のチームということでかなりモチベーションあがった。
しかも、デザインとかインタラクション面で「カッコイイもの」を作れる弊社では希少な環境ということもあり、息巻いていた記憶がある。
自分はこのチームでAndroidを担当することになる。

まさにベンチャーな進め方

最初はデザイナーも不在だったので、とりあえずデザイン込みのモックをひたすらつくるということをしていた。
僕以外のメンバーも皆新しい技術に挑戦するということだったので勉強も兼ねてこのようなスタイルで進めていた。
しかし、さすが大企業2社によるジョイントベンチャー。話が全然進まず、仕様変更、デザイン変更、3ヶ月経っても未だダミーデータという不安だらけのまま時間が過ぎることになる。
「暗闇でジャンプ」とはまさに今の自分たちに最適なスローガンだなと思った。

本格的なAndroid開発

Androidエンジニアに転向

前述のAWAに異動になったタイイングでこれまでずっと続けてきたフロントエンドの開発からAndroid開発に移った
ネイティブに移った理由としては、ブラウザでの表現に限界を感じたのが大きい。(弊社サービスの特性+ブラウザの描画性能が理由でコミュニティサービスでリッチなインタラクションが求められるケースは少なかった。)
ネイティブに関してはiOSという選択肢もあったが、その中でもAndroidにした理由は、ちょうどGoogleからWearとかAutoが発表された時期だし、オープンソースで自由に面白いものが作れそうということからだ。

Javaを勉強し始める

これまでJavascriptを用いたフロントエンド開発をしてきたので、Javaみたいなしっかりしたクラスベースの言語の開発に慣れるまでにちょっと時間がかかった。
でもまぁ、慣れれば心地よく感じるもので、コンパイルエラーを吐いてくれるところや、IDEの充実した補完機能は今や手放せないものになっている。

初めてDB(ローカル)を設計する

フロントをやっていた頃はDBなんてサーバの人に任せていたが、ネイティブではネット未接続環境対応&表示の高速化のために端末自体にローカルDBを構築しておき、データをキャッシュしておく必要がある。
そのためにDBに関する知識が必要だったので、RDB、ORM、SQL等の用語を覚えた。
webのフロントもそうだが、ネイティブもカバー領域が広くて大変だなと思った。

振り返り

特に大きな変化は、Androidを始めたことだろう。
これまでのフロント的な実装とは大きく異なるJavaのクラスベースの手法にはかなり苦しんだが、勉強になることが多く、非常に良かったと思っている。
あと、Android開発のきっかけになったAWAではとにかく「カッコイイもの」を目指しているという点が開発のモチベーションとしてかなり大きい。
最近では技術にもかなり興味があるが、やはり自分は技術を用いて作られたサービスや作品にこそ興味があるのだと改めて思った。

2015年の目標

来年は仕事に加えてプライベートワークをもっと充実させていこうと思う。
今考えているものも形にしていけたらと思う。
あとは、英語かな。
ざっと挙げると以下。

  • AWAのヒット
  • 今考えているアイデアのプロトタイプをつくる
  • 月1で何かしらの作品をこのブログに載せる
  • 外人と英語で日常会話できるようになる

以上、来年も宜しくお願いします。