2012年の(主に技術的な面ので)まとめ

# 概要 2012年は、個人的にいろいろ変化があった年だったなあと、あらためて振り返ってみると思います。まずは、前職からいまの会社へ転職し、それにともなって、京都から東京へ転居しました。また、仕事内容の変化によって、これまでにプラスして、違う観点から物事を考えることができるようになったというのも、大きな変化でした。.

概要

2012年は、個人的にいろいろ変化があった年だったなあと、あらためて振り返ってみると思います。まずは、前職からいまの会社へ転職し、それにともなって、京都から東京へ転居しました。また、仕事内容の変化によって、これまでにプラスして、違う観点から物事を考えることができるようになったというのも、大きな変化でした。

各月ふりかえり

  • 1月〜4月: 前職時代
  • 5月: 東京へ転居、ペパボに転職
  • 6月〜7月: リーンスタートアップ布教
  • 8月〜9月: 出張やあちこちでのトークに追われててんてこまい
  • 10月: Triglav開発開始
  • 11月〜12月: Rubyist活動

1月

  • Data::Mapper 0.01 Released!
  • elispはウェブアプリケーション記述言語やったんやー

Data Mapper Patternにとても興味があって(いまでもあります)、簡単な実装を書いていたりした頃。なんかいまいちキマらないなーという感じで微妙なものではあるけれども、悪くはないものなんじゃないかなーと思うけど、もう自分では使うことがなさそうなので、なんとも……。

2月

  • ぼくがかんがえたさいきょうのAmon2のつかいかた - delirious thoughts
  • シンプルなデプロイツールを書いているという話

新規サービスを作るのにAmon2がいいんじゃないかなーと思っていろいろやってみたり、Cinnamonというデプロイツールを書いてみたり。

3月

  • Reading nginx's Code with GNU gdb in Mac OSX Lion
  • Kyoto.pm Launched and My Slides about Data::Mapper

社内勉強会でnginxのソースコードリーディングをやろうということになって、!id:suzakにGDBで追いながらのコードリーディングの方法を教わったりして、とても勉強になったりしていました。あと、Kyoto.pmの第1回目ということで、Data::Mapperの話をしたり。今年はたくさんスライドを書きましたが、これがまず最初。

4月

  • My Father Died
  • Announcements on PrePAN
  • 株式会社はてなを退職しました

4月頭に父危篤ということで呼び出しを受け、最後を看取ったりしたのですが、この頃にはもう退職のスケジュールも決まっていたのに部屋探しもまだ終わっていなくて、とても大変だったように思います。チームメンバーにも、最後の最後でとても迷惑をかけて申し分けない感じ。PrePANをKyoto.pmに移管したり、退職エントリを書いたり。

あんまりバタバタするのが嫌なのでわがままをいって早めに最終出社日を設定していただいたものの、転居のスケジューリングをまちがって、寝る暇もないほど忙しく引っ越し準備をしたりしていて、本当に地獄っぽかった……。引っ越しとか、二度としたくないと思います……。

5月

  • 株式会社paperboy&co.に入社しました
  • PHPことはじめ
  • capistrano + chef-soloで構成管理する
  • 第1回Ruby開発環境勉強会
  • Deploying Railsは、Ruby/Rails関係なく、広く楽しめる本

ペパボに転職。いままでずっとPerl一辺倒だったのですが、今度はPHPとRubyの会社というわけで、勉強を始めたり。また、これまで自分ではやってなかったような構成管理ツールなどにも興味を覚えて使い始めたりして、やべーおもしれーと感動したりしました。

「なんでペパボに転職したの?」と内外でよくきかれたのですが、理由はもちろんちゃんとあって、

  1. 技術職のキャリアプランについて考えをめぐらせている時に、ちょうど同じようなことをmizzyさんが実際に導入したというエントリを書いていた(paperboy is hiring - Gosuke Miyashita)。
  2. 自分の資質的に、小さくて急進的な会社よりもむしろ、より大きい組織を改善するというミッションの方が向いている。
  3. もちろん規模が大きいだけではなく、技術指向である必要はあるし、また、特定のサービス、というよりは、多種多様なウェブサービスを展開する企業がよい。
  4. 長く働くためには、財務状況が安定している企業がよい。

というわけで、いろいろな条件を満たしているからなのでした。

また、Ruby初心者として社内でRubyの開発環境について発表したりもした。

6月

  • JenkinsからIkachanに通知を飛ばすIRCプラグインを書いた
  • JSXを、RailsのAsset Pipelineを使って動かしてみた
  • (CANCELLED) IRCへの投稿文字列を色付けするライブラリを書いた
  • Webistranoをruby1.9.3-p194 + Rails 3.2.5で動くようにした
  • app serverがリクエストの処理にかかった時間をログに記録する

5月のバタバタも落ち着いてきて、Rubyist活動を始めたあたりの記録。Ruby自体は『初めてのRuby』『メタプログラミングRuby』あたりを読んで勉強しました。それらの本は、だいぶ前に読んでいて、Rubyのコードを書くこと自体はほぼなかったけれども、Rubyという言語自体はとても好きだったので、すんなり入ることができた感じです。

レスポンスタイムの取得のあたりは、今年の後半に時間をかけて取り組んだパフォーマンス改善の仕事の端緒となる記録。そのあたりで取り組んだことはまだ外にはちゃんと出せていないので、近いうちにまとめて出していきたいなーと思っているところ。以下のスライドは、社内用に方針を述べるために用いたもの。

7月

  • fluent-plugin-rewriteというプラグインを作成した #fluentd
  • 「開発者のためのリーン・スタートアップ」「リーン・キャンバス入門」の資料を公開します
  • 社内SNSをハックするのが流行ってる話
  • アイディア出しワークショップをした話

パフォーマンス改善という仕事とともに、リーンスタートアップ布教活動を始めたりした頃。東京本社・福岡支社あわせて4回ほど勉強会を行った。「書評『Running Lean 実践リーンスタートアップ』」というエントリにまとめた通り、今年の僕の仕事に対する考えかたや実践を変えてくれた本なので、その内容を是非共有して、よりよいものを作っていきたいと思って、自分としては真剣にがんばったつもり。社内の、既存・新規を問わず、いろんなサービスのリーンキャンバスを、多くの事業部に乗り込んで作っていくおてつだいをしたりしました。

というようなことをやってると、だんだんコードを書きたくなってきたので、社内SNSをハックするようなサービスを作ったりと、いろいろ新しいことに取り組んだ時期。

8月

  • Emacs勉強会で発表してきた + 資料公開しました #Agile渋谷
  • iOS SDK Developmentを読み始めた

8月は、引き続きリーンスタートアップの実践をやったり、Emacs勉強会といいながらSublime Text2の話をするだけのトークを行ったり、iOS開発をもう一度ちゃんと始めてしたりと、いろいろやってみた月。

9月

  • Business Trip to Fukuoka, Again
  • 「非Rubyな会社で仕事にRubyを持ち込むための5つの方法」資料 #sprk2012
  • Sapporo RubyKaigi 2012 #sprk2012
  • Class::Extendable As One of Prerequisites for DCI
  • #yapcasia 2012で「Rubyの国のPerl使い」というタイトルでトークした

2回目の福岡出張に行き、社内開発環境をだーっと改善するということをやったりしつつ、札幌Ruby会議やYAPCの準備に追われて、ひたすら忙しい、というか、マジでつらかったなあ。その中でも、角谷さんのトークを見てDCIをもうちょっと深めてみようと思ってLean Architecture: for Agile Software Developmentという本を読んでみたら面白くて、YAPCのトークに盛り込んだりして、さらに無駄に死にそうになったりしました……。

10月

  • SQLインジェクションについてのスライドを作成した
  • Idea: PSpec (WIP)
  • 『はじめてのフレームワークとしてのFuelPHP』を読んだ
  • サーバ管理の仕組みを作り始めた話
  • Clean Ruby
  • RSpec::Formatter::Beep
  • 社内LT大会が行われた + 発表資料
  • 日報スクリプトをGitHubで管理するようにした

9月のカンファレンスで意識が高まって、いろいろなことに手を出しまくった日々。社内でのセキュリティ勉強会、PHPをいよいよちゃんと書かなければということになって『パーフェクトPHP (PERFECT SERIES 3)』を読んでPHPも悪くないじゃんと思ってあれこれやってみたり、riywoさん主催の勉強会から派生してサーバ管理ツール(Triglav)を作り始めたり、DCIを深めたり、社内LTやろうぜといいだして新卒氏(@kurotaky)に企画してもらって、なんか話したり。

もうこれ以上無理と思っても、そこからさらに何段かのせていくという、サイヤ人的なノリであれこれ手を広げまくる手法で、まあ、それはそれでやりきってみれば自分のためになるので、よかったかなあと思います。

11月

  • 最近のHyperionあらためTriglav
  • #isucon2 にチーム「つねさま with 刺身あんちぽ」で参加してきました
  • TriglavのAPIクライアントをRubyとPerl版リリースした
  • 第2回社内LT大会で日本酒の話をしました
  • Yay! I'm now one of the Rails contributors!
  • Using Redis for Real Time Application
  • Chrome buffers text/plain stream (mistakenly?)
  • Rails4 in Action
  • fluent-plugin-flatten 0.0.1 Released

引き続き、いろいろやっていた月。isuconに参加して、全然だめだなーと落ち込んだり、Triglavの開発をあれこれやっていたり、その過程で得た知見をセミナーで発表したり、パフォーマンス改善もそろそろちゃんとやらねば……というわけでfluentdプラグインを作ってすすめたり、などなど。

12月

  • Upgrading to Rails 4
  • My Talk at #rubyconftw2012
  • 書評『Running Lean 実践リーンスタートアップ』

12月は、なんといっても初海外にして初めての英語での発表(LTではありますが)をしたということで、自分的にまったくもって新しい取り組みをさせてもらえて、とてもよかったと思います。台湾最高。仕事面では、ひたすらPHPを書いてパフォーマンス改善に取り組んでいました。前述の通り、その辺のことは全然外に出せていない(内部資料としてはまとめている)ので、来年はそのあたりの話をちゃんとしたいなあと思っているところです。

まとめ

最初に書いた通り、転職というのが一番大きな転機だったわけですが、それにともない、仕事内容も幅広く、また、自由にいろいろやらせてもらって、自分自身、技術的にも仕事をする人間としても視野も能力も広がったと思います。ありがたいことです。それができたのも、mizzyさんや隣席のるびりすと氏ことhsbtさんのおかげ。特に、hsbtさんと同じ日に入社していっしょにあれこれできたのは大きかったなーとあらためて思います。ありがとうございます。

来年は、引き続き手広くやりつつ、もっと直接的なバリュー(儲かるとか)も出していきたいなあと思っているところですので、よろしくお願いいたします。