毎年、年の最後にはその年の記事をまとめていたのですが、2012年分のまとめをし忘れたので、ここでまとめておきます。
2013年の記事に2012年のことだけが書かれているというのは違和感があるので、はじめに、2013年にやりたいことをまとめておきます。
2013年にやりたいこと
2012年に社外に向けて新しくやり始めたことがいくつかありました。ただ、クリアコードは「社外に向けて新しくやり始めること」に慣れていなかったので、始めるだけで大変でした。始めることはできたので、2013年は実際にやっていくことに力を注ぎます。具体的には以下のことに力を注いでいきます。
- パッチ採用
- コミットへのコメントサービス
詳細は後述します。
また、以下に挙げる既存の業務においては、ソフトウェアの発展やお客様のニーズの変化にあわせて、提供するサービスも多様化してきました。2013年もクリアコードならではの専門的な支援を提供していきます。
- Mozilla Firefox/Thunderbird
- 組み込みシステム
- groonga
- milter
これらの詳細は新しく始めたことの後に触れます。
パッチ採用
2012年の8月からパッチ採用をはじめました。パッチ採用とは、応募者とクリアコードがパッチをやりとりすることでお互いの適性を判断する採用方法です。私達はたくさんのフリーソフトウェアの開発に参加しています。それらの開発の中で行われている「開発仲間になろうとしている人が信頼できる人かどうかを判断する方法」を取り入れた採用方法です。
クリアなコードでフリーソフトウェアを書いて、自由に扱えるソフトウェアを増やしていきたいという方は、ぜひクリアコードに応募してください。ただいま、開発者を1名募集しています。
コミットへのコメントサービス
2012年の12月からコミットへのコメントサービスをはじめました。このサービスは開発チームが「よいコードを書くことが当たり前」になることを支援するサービスです。これもフリーソフトウェアの開発に参加する中で学んできたことをベースにしています。クリアコード外の開発者とやりとりしたときに、「よいコードを書くことが当たり前」ということがなかなか実現できていないことを知ったため、このサービスを提供することになりました。
自分たちの開発チームが、今は「よいコードを書くことが当たり前」ではないけれど、「よいコードを書くことが当たり前」にしたいという方はぜひお問い合わせください。
Mozilla Firefox/Thunderbird
クリアコード創業以来ずっと続けているのがMozilla Firefox/Thunderbird関連の業務です。これまでも業務の中で開発してきたソフトウェアをフリーソフトウェアとして公開してきましたが、2012年はFirefox、Thunderbirdの法人向け延長サポート版(ESR)のリリースを受けて、Fx Meta Installerをはじめ多くのアドオンを公開しました。今年は、Android端末へのMobile版Firefoxの導入支援や、Firefox OSの開発、サポートも手がけていく予定です。
Mozilla関連の業務の担当人数が少ないので、お断りしているお問い合わせもあるのが現状です。もし、Mozilla関連の業務に興味があるという方はパッチ採用で応募してください1。
組み込みシステム
ここ数年、組み込みシステムの開発に携わっています。今年は、組み込み機器用の既存の製品とは違った斬新なコンテンツ配信システムを開発する予定です。本システムはフリーソフトウェアではありませんが、ベースコンポーネントとして使用しているソフトウェアはフリーソフトウェアです。本システムで得た知見を、これらのフリーソフトウェアに還元していきます。
groonga
2012年もgroongaの開発に積極的に関わってきました。毎月のリリース作業だけではなく、nginxベースのHTTPインターフェイスの開発やfluentdを使ったレプリケーションの仕組みなどを実装しました。groongaベースのMySQL用ストレージエンジンであるmroongaの開発もしています。また、未来検索ブラジルさんらと連携して、groongaのサポートサービスを始めました。
2013年も、引き続き、groonga本体および周辺ソフトウェアの開発を継続し、より高速で柔軟で使いやすい検索エンジンとなるようにしていきます。もし、groonga関連の開発に興味があるという方はパッチ採用で応募してください2。
milter
milter関連の業務では、milter managerおよび各種milterの導入支援や独自のmilterを開発しています。2012年から、大規模なメールシステムでmilterやmilter managerの採用を検討されることが増えてきているようで、お問い合わせもいただいています。今年は体制を強化して、より多くのシステムへのmilter導入を支援していきます。
2012年のまとめ
ククログ上で公開した今年の活動を月毎にまとめます。記名していませんが、ククログの記事は記事によって書いている人が違います3。須藤が書いていることが多いですが、2012年から須藤以外が書くことが増えました。
1月
1月の技術的な記事はGitで不適切なコミットメッセージを削除した公開リポジトリを作るとデバッグしやすいHTMLのテストの書き方でした。Gitの方はGitHubのclear-code organizationにMozilla関連のリポジトリを公開するときに得た知見をまとめたものです。テストの方はこの頃に思いついたよい書き方をまとめたものです。昨年に引き続き、業務で得た知見を公開できてよかったです。
また、技術関連の記事だけではなく、会社運営関連の記事も書きはじめました。1月は均衡待遇・正社員化推進奨励金のうち、正社員転換制度と健康診断制度について紹介しました。小さな会社を運営している人たちの役に立つとうれしいです。
モーショノロジー2012 #1: rroongaによる検索サービスの実装という発表もしました。
2月
2月はクリアなコードの作り方: 縦長・横長なメソッドを短くするがありました。普段どうやってよいコードを書いているかを文書化したものの1つです。
また、logalimacsをリリースしました。Emacsで翻訳している人は試してみてください。
コミットメッセージの書き方は2012年一番の人気記事でした。
2012年は4年に1度のうるう肉の日もありましたね。この日のリリースはgroongaとmroongaのメジャーバージョンアップでした: groonga 2.0.0, mroonga 2.00リリース
3月
クリアなコードの作り方: 意図が伝わるコミットのしかたは2月のコミットメッセージの書き方の続きです。
Emacsの設定は継続的に改良しているのですが、この時点のものをEmacs実践入門 - おすすめEmacs設定2012でまとめました。
ifとreturnの使い方もよいコードをどうやって書いているかを文書化したものです。
4月
Emacs上でカラフルにdiffを表示するは今も便利に使っています。
中小企業倒産防止共済制度は会社運営シリーズです。
テストをすっきり書く方法はテストをグループ化しようという話です。test-unitを使っている人はぜひ実践してください。
5月
国際化サポート付きのYARD 0.8.0がリリースされました。長かったです。引き続き国際化サポートを強化する変更をpull requestしていて、徐々にですが進んでいます。
The dRuby Bookを紹介しました。
クリアなコードの作り方: 余計なことを書かないはコードを読むときにどのようなことを考えるかがわかります。
6月
ククログの記事のライセンスをCC BY-SA 3.0とGFDLのデュアルライセンスに設定したので、ライセンスの範囲内であれば、クリアコードに個別に許可を取る必要なく自由に利用できるようになりました。
リーダブルコードの解説を公開しました。この解説はCC BY-NC-SAなので、他のククログの記事とは違うライセンスです。
名前のつけ方はプログラミングではとても大事な「名前をつけること」について扱った記事です。どんな名前がよいかを説明しています。
7月
思い出せるチケットの書き方: 「動機」、「ゴール」、「実現案」は作業をチケットにメモしている人はぜひ試して欲しいことです。
クリアなコードの作り方: 同じことは同じように書くはどうやってよいコードを書いているかを文書化したものです。
Firefox/Thunderbird用アドオン開発者向けテスティングフレームワーク UxU 1.0.0をリリースしました。UxUの開発を始めたのが2007年なので、5年かけて初めてのメジャーリリースでした。
8月
金融機関からの運転資金借入は会社運営シリーズの記事です。会社運営に大事なお金の話です。
2012年8月リリースまとめにあるように、8月の肉の日は15個リリースしました。
9月
2012年9月1日付けで取締役に就任した足永の取締役就任挨拶です。クリアコードが大事にしていることがわかる挨拶なので、クリアコードに興味のある人はぜひ読んでみてください。
短期前払費用による節税は会社運営シリーズの記事です。記事にも書いてありますが、クリアコードがここに書いてある方法をしているわけではありません。調べたことをまとめたものです。
札幌Ruby会議2012: 「バグの直し方」、「クリアなコードの作り方」 #sprk2012という発表しました。いろいろ思うところがあったRuby会議でした。
クリアコードは札幌Ruby会議2012のスポンサーをしたのでスポンサーチケットをもらったのですが、社内では必要なかったので希望者にプレゼントしました。実際にスポンサーチケットで参加したみなさんが札幌Ruby会議2012のレポートをしてくれたので、それをまとめました: 「札幌Ruby会議2012のチケットを譲るキャンペーン」当選者のレポート紹介
10月
Rubyの拡張ライブラリにYARD用のドキュメントを書く方法はYARDの使い方シリーズです。これからも増えていく予定です。
シェルスクリプトで「ビルドスクリプト」を作る時に便利なテクニックは実際に自分たちが使っている方法を紹介したものです。シェルスクリプトとMakefileの使い分けは補足です。
11月
クリアなコードの作り方: オーバースペックな機能を使わないはどうやってよいコードを書いているかを文書化したものです。
Fx Meta Installerをリリースし、Fx Meta Installerを使った、カスタマイズ済みのFirefoxのインストーラーの作り方を紹介しました。カスタマイズしたMozilla Firefox/Thunderbirdを社内に配布したい、という場合は試してみてください。
退職金共済制度を活用した退職金制度は会社運営シリーズの記事です。クリアコードでも利用している制度です。
久しぶりにるびまに寄稿したので、その紹介をしました: るびま0040号の「Rubyコードの感想戦」とDevLOVE Conference 2012の「リーダブルコードを読んだ後」のお知らせ
12月
いいアドバイスをもらうための相談の仕方は技術的な話ではなく、人とのやりとりに関する話です。プログラミングは1人でもくもくと進める作業と思っている人もいるかもしれませんが、実際は他の人に相談しながら進めることの方が多いものです。そのため、この記事の内容はプログラマーにとって大事なことなのです。
CutterをWindowsでgrowlnotifyと一緒に使う方法は2012年唯一のCutterの紹介記事です。2012年にCutterに劇的な変更はなかったですが、コツコツと開発は継続しています。
DevLOVE 2012: 「リーダブルコードを読んだ後」 #devlove2012というセッションをしたおかげで「コミットへのコメントサービス」の内容をまとめることができました。その2週間後のクリスマスに「コミットへのコメントサービス」の販売を開始しました。
まとめ
2013年にやりたいことと2012年の記事をまとめました。2012年は去年よりも内容が充実していましたね。また、話題も増えました。充実した年だったといえます。
2013年もよろしくおねがいします。