milter managerのスケーラビリティ向上計画
milter managerの開発を始めたのが2008年の9月なので、2年と少し前になります。この当時はPostfixでmilterを使うというのはそれほど一般的ではありませんでした。しかし、最近ではPostfixでmilterを使うというのが選択肢の1つになっています。これは、Postfixのmilter対応が強化されたことと、Web上にPostfixでmilterを利用した事例が増えてきたことが大きな要因でしょう。
るりまサーチで第3回フクオカRuby大賞の本審査
Rubyのリファレンスマニュアルを高速に全文検索するるりまサーチを 第3回フクオカRuby大賞に応募したら本審査に呼んでもらえたので、2/3に福岡に行ってるりまサーチを紹介することにしました。
milter manager 1.6.4リリース
先日、milter managerのスケーラビリティ向上計画を紹介しましたが、そこに書いた内容を実装したmilter manager 1.6.4をリリースしました。(メーリングリストでのアナウンス)
プログラミング言語のドキュメント検索をもっとリッチに
昔から「Rubyはドキュメントが弱い」と言われてきました。「PythonやPHPはあんなにドキュメントが揃っているのに、それに比べてRubyは。。。」というわけです。でも、待ってください。ドキュメントは記述が充実しているだけで十分ですか?簡単に目的のドキュメントにたどりつけますか?
もっと知られてもいい人たち
るりまサーチという最近の検索技術を使ってRubyのリファレンスマニュアルを検索するWebアプリケーションがあります。表向きの存在理由は「手早く簡単にドキュメントを検索できるシステムを提供することで、Rubyユーザが楽しくプログラミングすることを妨げないようにする」ですが、実はもう一つ理由があります。それは、「Rubyのリファレンスマニュアルをよいものにしている人たちがいることに気づいてもらう」というものです。
デバッグしやすいassert_equalの書き方
ソーシャルウィジェットtDiaryプラグイン
kdmsnrさんが設定していたFacebookコメントプラグインがうらやましかったので、ククログにもつけてみました。ククログはtDiaryを使っていますが、CGIやRackで動かすのではなく、オフラインで静的なHTMLに変換してからWebサーバーにアップロードしています。そのため、tDiaryが持っているツッコミ機能は使っていません1。
-
tDiaryなのに。 ↩
CPUの使用率とメモリの使用量を表示するFirefoxアドオン「システムモニター」をFirefox 4用に更新しました
ソフトウェア開発者を1名募集
クリアコードではMozilla・メール・検索関連を中心にソフトウェア開発を行っています。徐々に認知されてきたおかげで、声をかけてもらえることが増えてきました。しかし、大変残念なことにリソース不足ですべてのお話に応えることができないのが現状です。
Debian GNU/Linuxで一部のデータだけ簡単に暗号化する方法
Debian GNU/LinuxやUbuntuなど最近のLinuxディストリビューションではインストール時にディスクの内容を暗号化する設定をすることができます。インストーラのメニューで選択するだけなので、簡単に設定できます。
検索エンジンはなぜ見つけるのか
1ヶ月ほど前になりますが、検索エンジンについての本が出版されました。GoogleなどのWeb検索システムからAmazonなどのショッピングサイトまで、今では検索システムはなくてはならないものになりました。そんな検索システムのベースとなる考えや知識などを把握したい場合に向いているのがこの本です。検索システムを作ろうとしている人には読んで欲しい一冊です。
リファレンスマニュアルの記述方法
RDocとYARDの比較
リファレンスマニュアルの記述方法を検討し、埋め込み方式のドキュメントツールを採用したとします。Rubyで埋め込み方式のドキュメントツールを使うとしたらRDocかYARDになります1。
64bit版Windows用のRubyInstallerの作り方
WindowsにRubyをインストールする場合、どうやってインストールしますか?現在のところ、以下のようにいくつも選択肢があります。
Sphinxの国際化機能を使って複数言語用ドキュメントを用意する方法(概要)
日本Ruby会議2011でるりまとテスティングフレームワークについて話します
日本Ruby会議2011のスケジュールが発表されました。クリアコードのメンバーはるりまに関することとテスティングフレームワークに関することを話します。面白そうだなと思ったら聞きに来てください。
Sphinxの国際化機能を使って複数言語用ドキュメントを用意する方法(使い方)
Sphinxの国際化機能を使って複数言語用ドキュメントを用意する方法(概要)で示した複数言語用ドキュメントを用意する仕組みの使い方を紹介します。本当は仕組みについて説明するつもりだったのですが、使い方を書いていたら長くなったので分けることにしました。この仕組みは実際にgroongaで使っているもので、以下のような使い方になります。
RSpecとtest-unit 2での抽象化したテストの書き方の違い
日本Ruby会議2011の3日目の「テスティングフレームワークの作り方」の準備をしていますが、30分だと詰め込み過ぎになってしまうので、話さないことを事前に書いておきます。それは、テストを抽象化するためのAPIの違いです。
日本Ruby会議2011: テスティングフレームワークの作り方
日本Ruby会議2011で「テスティングフレームワークの作り方」について話してきました。前に人前で話したのが2月のフクオカRuby大賞だったので半年くらい人前に出ていなかったのですね。
Being Geek
tDiaryのRDスタイルにCodeRayを使ったシンタックスハイライト機能を追加
タイトルにキーワードを埋め込んでみました。ククログはtDiaryのRDスタイルで書いています。コードを貼り付けることも多々あるため、シンタックスハイライトもできるようにしてあります。今まではGNU Source-highlightでシンタックスハイライトをしていたのですが、CodeRayでシンタックスハイライトをするように変更しました。
おすすめzsh設定
他の人がzshを使っているのを見ていると、「もっと便利に使えるのに」と、もやっとしたり、「え、その便利な機能ってなに?」と、発見があったりします。だれかに「この設定をすると便利ですよ」と話しやすくするために、今のzshのおすすめ設定をここに記しておきます。
groongaで高速な位置情報検索
groongaのドキュメントにも位置情報検索について書かれているのですが、情報の更新が追いついていないため情報が不足しています。そこで、ここに現状に合わせたgroongaの位置情報検索についての情報をまとめておきます。なお、ここにまとめた内容もドキュメントに反映させる予定です。
全文検索エンジンgroongaを囲む昼下がりと夕べのお知らせ
今月も全文検索エンジンgroongaと、groongaをMySQLから使うためのモジュールであるgroongaストレージエンジンがリリースされました。
groongaにデータを登録してからインデックスが更新されるまでの流れ
全文検索エンジンgroongaを囲む昼下がり@札幌はたっぷり3時間もあるので、「groongaがどのように動いているか」、「より効率的に検索するためにはどうしたらよいか」などといった話ができるはずです。
groongaの全文検索処理の流れ
groongaにデータを登録して、インデックスを更新すると全文検索をすることができます。ここでは、groongaが内部でどのような処理をして全文検索をしているかを説明します。
どうして開発者がドキュメントを書くべきか
オフィス文書形式が要求されるようなドキュメントではなくて、自分が開発したライブラリのドキュメント(リファレンスマニュアルやチュートリアルなどライブラリのユーザーが読むためのドキュメント)の話です。以下の「ドキュメント」もそのような意味で使っています。
お知らせ: OSC2011.DBでgroongaストレージエンジンを紹介
今度の土曜日11/5に開催されるOSC2011.DBの10:35からのセッション「OSSDB MySQL」に少しおじゃましてgroongaストレージエンジンを紹介します。groongaストレージエンジンがイベントなどで紹介されるのは昨年の全文検索エンジンgroongaを囲む夕べ #1以来のはずなので約1年ぶりになります。その間に初のメジャーリリースである1.0.0がリリースされるなど、だいぶ成長しています。そのため、話題はたくさんあるのですが、その中から特に注目すべきところを選り抜いて紹介します。
Firefoxの技術書「Firefox Hacks Rebooted」
オライリーより、Firefoxの高度な使い方からアドオン開発のノウハウ、新しいWeb技術まで手広く解説・紹介する書籍「Firefox Hacks Rebooted」が、2011年10月26日に発売されました。弊社でMozillaサポート事業に従事している下田も執筆者の一人として名を連ねています。
すべてのMySQLユーザーに高速な全文検索機能を! - OSC2011.DB用資料
オープンソースカンファレンス2011 DBのOSSDB MySQLセッションでgroongaストレージエンジンについて紹介してきました。
ApacheとPhusion PassengerでデプロイしたWebアプリケーションが不調になる問題と解決
ApacheとPhusion PassengerでWebアプリケーションをデプロイしている際に、たまにシステムが不安定になることがありました。調査したところ、原因はレスポンスの取得が遅いクライアントであるということが分かりました。この問題を発見し、原因を特定し、Phusion Passengerを修正するまでについて、紹介します。
全文検索エンジンgroongaを囲む夕べ 2: 「groonga村」と「mroongaのベンチマーク」用資料
今年も11月29日に「全文検索エンジンgroongaを囲む夕べ」が開催されました。1年ぶりの開催です。会場は株式会社VOYAGE GROUP(10月に株式会社ECナビから社名変更)でした。会場提供ありがとうございます!とても助かりました。会場提供にあたりこしばさんにとてもお世話になりました。ありがとうございます。
デバッグ力: よく知らないプログラムの直し方
クリアコードではMozilla製品やRuby関連の開発だけではなく、広くフリーソフトウェアのサポートもしています。もちろん、サポート対象のソフトウェアの多くは私達が開発したものではありません。しかし、それらのソフトウェアに問題があった場合は調査し、必要であれば修正しています。
Ruby関連のコンテストっぽいものへの応募例
Netscape Communicator 4.5以降のプロファイル情報の解析
クリアコードではMozillaサポート事業を行っていますが、その一環としてNetscape Communicator 4からFirefoxやThunderbirdへの移行のお手伝いもしています。今回は、NC4.5からThunderbirdへの移行の際に特に問題となった、NC4.5のユーザプロファイル一覧の取得方法の調査の解説を通じて、クリアコードでのオープンソース製品のサポート業務の一例をご紹介したいと思います。