ククログ(86)

株式会社クリアコード > ククログ > ククログ(86)

Rubyで自然なDSLを作るコツ:値を設定するときはグループ化して代入

最近、fluent-plugin-droongaという分散データストリームエンジンを書いています。その中で、RubyでDSLを実現するときに工夫していることに気づきました。それは、値を設定するときは代入する字面にするということです。代入する字面にするために、グループ化用のオブジェクトを作っていました。

もっと読む

わかりやすい設定ファイルの項目名:否定形で修飾しない

数週間ほど前、コミットをみていたら「ひっかかる」APIがありました。それについてコメントし、わかりやすいAPIについてやりとりしました。そのやりとりの中で、設定ファイルの項目名をわかりやすくするために、いままであまり意識せず工夫していたことに気付きました。それは「設定ファイルの項目名を否定形で修飾しない」というものです。「否定形」という言い回しではなく、「ネガティブな単語を使う」というような言い回しの方が近いような気がしますが、あまりしっくりくる言い回しを思いつかないので、ここでは「否定形」ということにします。

もっと読む

監視統合ビューアHatoholのセットアップ方法

はじめに

最近、クリアコードではHatoholというソフトウェアの開発に参加しています。Hatoholは複数の統合監視システムの情報を一括して表示することを可能とするソフトウェアです。現在対応している統合監視システムはZabbixおよびNagiosです。他の監視システムに対応することも検討しています。

もっと読む

消費税率引上げへの対応 契約時の対応編

はじめに

10月に消費税率引上げへの対応を書いたところ多くのアクセスをいただきありがとうございます。前回の記事の時点では、2014年4月1日の消費税率引上げの日をまたいだ契約はそれほどありませんでした。しかし、この3ヶ月間で締結した契約のほとんどが2014年4月1日をまたぐもので、取引先ごとの消費税率引き上げへの対応がまちまちで調整に時間がかかりました。例えばまだ社内システムが消費税率8%に対応していないので、8%での支払いはできないケースや、2014年3月31日までの支払い分はすべて5%とするケースなどがありました。そこで今回はこのような取引先の事情にあわせて、クリアコードがとった対応を紹介します。

もっと読む

メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか

毎日他の人のコミットをながめる文化で生活していると、理由は浮かばないけど「ん?このコミットはなんか気になる」と感じるようになります。それは、新しいことを知ることができたコミットだったり、真似したくなるようなコードが入っているコミットだったり、なんかまずそうな気がするコミットだったり、様々です。

もっと読む

2014年にやりたいことと2013年のまとめ

年の初めなので、2014年にやりたいことと2013年のまとめを書きます。

もっと読む

Mac OS X版GTK+の日本語入力対応 その後

これまでの記事で、数回に渡ってMac OS X版GTK+の日本語入力対応状況について紹介してきました。

もっと読む

GObject Introspection対応ライブラリーの作り方

GNOME Advent Calendar 2013 16日目の記事です。

もっと読む

パーフェクトRubyのおかげでYARDがよくなってGroongaイベントも開催できた話

パーフェクトRuby Advent Calendar 2013の10日目の記事です。

もっと読む

スクリプト言語の拡張機能の作り方とGObject Introspectionの紹介

GNOME Advent Calendar 2013 9日目の記事です。

もっと読む