naoyaのはてなダイアリー

はてなのこと、技術のこと、ウェブのこと、日々の出来事。

March 23, 2008

週刊リョーシカ!

ようこそ量子 量子コンピュータはなぜ注目されているのか (丸善ライブラリー) という新書を読みました。量子情報学研究の近頃(といっても日進月歩の分野で一年ちょっと前になってしまいますが) が分かって面白かったです。何より著者さんのお二方による「量子をもっと身近に感じて欲しい」という熱意が伝わる本でした。

書籍で紹介されていた URL から辿って、以下のコンテンツを見つけました。

f:id:naoya:20080323132110p:image

マトリョーシカ人形のリョーシカちゃん(量子化とマトリョーシカを掛けている...) と猫 (量子と言えばシュレ猫 ... ということでやっぱり猫) がのんびり量子について対話するコーナーです。これもやはり「量子を身近に感じて欲しい」ということを目的にしたコンテンツで、昨年末ぐらいから毎週更新されていて、第20回まで来ています。二人(?) の力の抜けたやりとりと硬派な物理の世界とのギャップがとても面白く、一気に全部読んでしまいました。常識では色々とイメージしにくい量子の世界ですが、イメージを喚起するための写真が良いですね。

個人的におすすめサイトです。次回の更新が楽しみです。

March 20, 2008

取締役を退任しました

3月7日を持って、はてなの取締役を退任し、執行役員となりました。正式な肩書きは「執行役員 最高技術責任者 (CTO)」となります。

京都に本社を移転するにあたり、数ヶ月前から今後の自分の役割について検討してきました。自分としてはやはり現場で開発の仕事を続けていきたい、また京都まで来たからにはよりそれに集中したいという思いが強くありました。会社全体の指揮を取りながら現場でサービスを作っていくというのを両立するのは、自分の能力では難しいと思い、取締役を退任することとしました。

経営の仕事というのは、自らの働きかけにより会社の中にある個々の力を結集させて、より大きな力へと増幅させることです。自分は、それが取締役に課せられる役割のうち最も重要なものだと思いました。会社全体を見渡しながら個々の力のベクトルがうまく同じ方向を向くように働きかけたり、各チームではカバーされていない隙間があったらそこを支えるという役割です。そのためには日々会社の隅々にまでに意識を傾けている必要があるんだというのが、よくわかりました。

その仕事ももちろんやり甲斐のある仕事だとは思いましたが、自分はやはり、プログラマとして自分で手を動かし物を作ることで会社を先導していきたいと思いました。

取締役は退任しましたが、会社の方針や主要技術の決定などについては、今後も執行役員という立場で関わっていきたいと思います。

京都に来てから、はてなブックマークを一から作り直しています。場所と体制、自分の肩書きを新たにし、毎日集中して開発に取り組むことができています。早ければ数ヶ月後には新しいシステムをみなさんにお届けできるのではないかと思います。

諸手続のためご報告が遅くなりましたことをお詫び申し上げます。今後ともよろしくお願いいたします。

March 13, 2008

夙川アトム

この間のめちゃいけを見て夙川アトムに惚れた人も多いと思いますが、なんか今日急にルー語ばりに日本語を夙川アトム風に変換するモジュールを書きたくなったので書いてみた。そして先ほど無謀にもCPANにリリースしてみた。

夙川アトム モジュール - D-6 [相変わらず根無し]

これは衝撃のモジュール。→ 夙川アトム 使ってみます。

#!/usr/bin/env/perl
use strict;
use warnings;

use Acme::Shukugawa::Atom;
use Term::Encoding qw/term_encoding/;
use URI;
use XML::Feed;

use autobox;
use autobox::Encode;
use autobox::Core;

my $url = shift or die "usage: $0 <url>";

my @feeds = XML::Feed->find_feeds($url) or die "Couldn't found any feed from $url";
my $feed = XML::Feed->parse( URI->new($feeds[0]) ) or die XML::Feed->errstr;

$_->title->shukugawafy->encode(term_encoding)->say for $feed->entries;

sub SCALAR::shukugawafy ($) {
    Acme::Shukugawa::Atom->translate(shift);
}

自分の日記を夙川アトム風にしてみます。

% perl shukugawafy.pl http://d.hatena.ne.jp/naoya/
IntroductiontoInformationRetrieval#2ハンコー、#3ハンゼンのシューフクョーシリ
アソフトウェュツギジーャシとしてのコリノーカンジー
ニコニコガードーーオータイストテー
トキョーです!
IntroductiontoInformationRetrieval#2(ハンゼン)のシューフクョーシリ

むむむw 惜しい感じ! たぶんタイトルをきっちり書いている人の日記がうまくはまるのではないかと思ったので...

% perl shukugawafy.pl http://d.hatena.ne.jp/umedamochio/
[ラムコー]「ウェブダイジー5つのイリテー」もンーヨーマーコーガマンに
[ラムコー]「ラクハタモチキーにヒをケルツー」(トーサイカシターョチ)のコブンセツカイをマシカキた
[ラムコー]ケイルイ70ンーマーブパートッーとノーモーキーガーサバティカル
[ラムコー]「バツセンムーチーー」というソーハツ
[SiliconValleyLife]ツクジャ、12イーサー。デトーオメ!
[ラムコー]ンサンケイシンブチーイーンーメーサイレンがケツカン、ブゼントメマーてウェブでマスヨメ。
[ラムコー]ナルサラテンハツシューガクのメーターに・・・「ウェブダイジー5つのイリテー」ゲンメイクリンーーシュー

「ウエブダイジー 5つのイリテー」www わー、ごめんなさいごめんなさい!

ウェブ時代 5つの定理 この言葉が未来を切り開く!

ウェブ時代 5つの定理 この言葉が未来を切り開く!

  • 作者: 梅田望夫
  • 出版社/メーカー: 文藝春秋
  • 発売日: 2008/02/28
  • メディア: 単行本(ソフトカバー)

March 08, 2008

Introduction to Information Retrieval #2後半、#3前半 の復習資料

Introduction to Information Retrieval 2章後半と3章前半の復習資料を以下にアップロードしました。

今回は

  • 2 章の後半
    • postings list のマージの効率的な実装方法
    • フレーズインデックスと positional インデックスによるフレーズ検索の実現方法
  • 3 章前半
    • 辞書検索のためのデータ構造
    • ワイルドカードクエリの実現方法

という内容です。次回はスペルミス補正 (もしかして機能) についてになります。次回の輪読会は少し間が空いて 4/12 予定ですので復習資料のアップロードも 4 月になるかと思います。

過去の章のアーカイブは同 URL のディレクトリ (http://bloghackers.net/~naoya/iir/ppt/) から一覧できます。

March 06, 2008

ソフトウェア技術者としての残り時間

年始の NHK でのイチロー特集番組を見ていて一番印象に残ったのは、他の人の道具を絶対に触らないというイチローのこだわりでした。曰く、人の道具を触るとその道具の感覚が体に残ってしまい、自分の道具を利用するときの感覚の妨げになるから、ということでした。全体を通して、イチローは他のプレイヤーとの相対的な競争の中に身を置いているのではなく、絶えず自分を改良し続けるという過程の中にいるのだというのがよくわかる内容でした。良い番組だったと思います。

気づけば自分も 30 歳になりました。まだ若いとは思っていますが、さすがに 20 代の頃に比べると、病気や怪我の治りが少し遅くなったと感じることもあり、少しずつ自分の人生、「死」ということを考えるようにもなりました。時間は有限ということが少しずつ実感できるようになってきました。あるいは実感できるようになってしまった、と言った方が良いかもしれません。

ここ数年は「継続は力なり」という諺がとても本質的な言葉だと実感する日々でした。はてなのサービスは、継続して開発/改善を続けているサービスは盛り上がりを見せますが、途中で息切れしてしまったサービスなどは、不思議なことにその瞬間から下降線を辿ります。ソフトウェアの世界で継続が実を結んだ例というのをいくつも見てきました。昨今の代表例は、やはり 10 年間開発を続けて来た結果である Ruby でしょうか。

継続が力となることが分かったところで時間が有限であることもまた分かり、では限られた時間の中で何かを成し遂げるには、その何かを継続しなければならない、つまりそれは、何かを捨てて何かを選択することなんだということも思うようになりました。頭では分かっていましたが、それを肌で実感するようになったのはやはり、年齢的なものが大きいのかもしれません。

インターネットは情報の伝達速度をどんどん速めます。ブログに始まり、フィードリーダーやソーシャルブックマークやミニブログなど、個人をエンパワーメントするツールの進化は止まることを知りません。しかし、情報は自らを成長させるエネルギーであるとともに、自らを躊躇させる罠でもあります。イチローがほかのプレイヤーの道具に触れないのと同様に、どこかで割り切ってそれら罠にかからないよう、距離を置く必要があるのだろうと思います。

自分は残った時間で何を選択して継続すべきか、そういう岐路に立っているのだと思います。京都に来て一週間が経とうとしています。何を選択するかを考え続けたり、ライフワークとして何か継続するための土地としては悪くはないな、と感じています。何が自分にそう思わせるかについては、まだ自覚的ではありません。

最近感銘を受けた文章を二つほど引用して、お茶を濁すとしましょう。

刺激を受け過ぎない

大型書店に足を運ぶと,大量の書籍に圧倒されます。また,高度な内容のブログを読むと,著者の知識や技術への理解に圧倒されることもあります。こういった刺激はプラスにもなりますが,あまり刺激が多過ぎると,焦りを感じて自信を失ったり,ほかの人がやっていることや流行に振り回され過ぎる危険性もあります。自分のペースで地道にやるには,刺激を受け過ぎないことも大切なようです。

プログラミングの光景:第3回 日常的な学習について|gihyo.jp … 技術評論社

ソフトウェア技術者の世界は脅迫に満ちている。「xxを読んでいないと駄目だ」「yyを経験していないやつは使えない」「zzは教養だ」など。ただ、こういう事を言っている本人はxxを読んでいるし、yyを経験しているし、zzを知っている。つまりこの手の脅迫は単に話し手の自己肯定の為に発せられることが多い。

こうした理由から、真に学ぶ価値がある技術は自分で見つけなければならない。それを誰かに教えてもらうことは不可能である。ただ言えることは、”誰かが知っているから学ばないといけないような気がする技術”を学ぶことに翻弄してはいけないということだ。

”技術者”の解放 - ひら