2013年振り返り
去年1年を振り返ってみたいと思います。
2012年振り返りはこちら
1月
趣味でAndroidアプリをJavaで書きました。WebView主体のログイン機能があるだけの小さいアプリでしたがよい勉強になりました。
AndroidはSDKやAPIのバージョンが急激に進化しているので、2-3年前の参考書だともう情報が古くなっていたりして、お手本になるコードを探すのに苦労しました。
最終的に@gabuさんのサンプルコードを参考にしたら大変捗りました。ありがとうございました。
2月
CentOSでyumレポジトリを追加する方法を知り、このおかげでPHP5.4環境を手に入れることができました。CentOS6/PHP5.4のサーバ構築の自動化(ShellScript)に明け暮れていました。
3月
引き続きサーバ構築自動化に取り組みました。Node.jsとexpressをちょこっとさわりました。
低レイヤー技術に戯れたくなってC言語とシステムコールを触り始めました。
4月
「猫でもわかるC言語」をベースにC言語の基本をがっつり勉強しました。ポインタ、構造体あたりまではいったん使えるようになりました。(でもその後また間が空いたのでだいぶ忘れた・・)
PHPのソースコードを読んだりC言語レベルでの挙動を追ってみました。
5月
仕事で運用しているPHPアプリで、プロセスが発行しているシステムコールを調べて、require_onceがボトルネックであることを発見し高速化に成功しました。これはめちゃくちゃ楽しかった。
システムコールの知識が実務で役にたったというのが何よりもうれしかった。
とある会社がテレビ紹介されることになったので、サイト高速化のためにWordPressをいじったりNginxを導入したりしてがんばりました。 リバースプロキシとWordPressとSSLが複雑に絡み合って思うように動かず苦労しましたがなんとか解決できました。
結果的に数百倍速くなって無事テレビ放映当日を乗り切ることができました。
- [WordPress]Header CleanerがHTTPSページでJSエラーを吐く場合の対処法
- いい加減、<script src="http://.. と書くのはやめましょう
- script src='//...' って書けるの知ってましたか?
- reverse proxyをHTTP/HTTPS両対応のサイトに導入するときの落とし穴
- WordPressをHTTP/HTTPS両対応のreverse proxy経由で動かすときに気を付けること
6月
ChefSoloをはじめてさわりました。Gitの低レイヤな操作に習熟しました。
- [Git]git cat-fileで任意のブランチの任意のファイルを閲覧できるので便利
- git diffで、異なるブランチの異なるファイルを比較する方法
- Gitで、あるブランチ中のあるファイルをカレントブランチ(ワークツリー)に持ってくる方法
- git diff --word-diff が便利すぎて泣いた
- Gitで"fatal: Unable to find remote helper for 'https'"の対処法
- Gitのドキュメント(マニュアル,man,doc)を100%確実にインストールする方法
7月
当ブログをさくらVPSに移転しました。あるサイトのスマホ専用画面の開発をスタートしました。UI仕様決めを取りまとめるなど。
8月
VirtualBox + Vagrantを使い始めました。Amazon Product Advertising APIやISBNまわりでごにょごにょ遊んでました。
9月
Gitの内部構造について調べました。- Gitレポジトリはパッチの集積ではなくてスナップショットの集積である。
- Gitの驚愕の真実:1億行のファイルに1行追記するとレポジトリ容量が200MB増える[※補足あり]
- Gitオブジェクトの特徴とデータフォーマットの解説
- ツリーオブジェクトを見るときのgit ls-tree と git cat-file -p は等価
あこがれのYAPCトーク初体験でした。
このような機会をあたえていただいたYAPC関係者の皆様ありがとうございました!
10月 11月
gitをC言語で再実装しようとしてC言語でスクラッチからコードを書いてました。Chef,Vagrant,ImageMagic,Perlとたわむれていました。
PHPでComposer使い始めました。
12月
Machida.pmに参加していろいろなプログラマの人と知り合いになれて大変うれしかったです。Mongooseのソースコードをいじって、make, Makefileなどの仕組みがだいぶわかるようになりました。
Cygwin64bit版を導入し、plenv,rbenv,chef,knife solo, Berkshelfをがんばってインストールしました。
まとめ
- Ethnamリリースした
- システムコールがちょっとわかった
- C言語ちょっと書いた
- YAPC::Asiaトークデビュー
- Chef & Vagrant & VirtualBoxデビュー
カテゴリ: