一極集中から新しいパラダイムが生まれて分散へ流れ、それから、また集中に動く。 これをITにおける輪廻という。 (by IBM 中島DE)YahooやGoogleといった巨大なポータルサイトもあるが、インターネットは、原理的にはIPによる個々のコンピュータによるネットワークである。すなわち、基本的に分散型であり、インターネットの特長を最大限に生かすには、P2Pのような分散型が最適であると考えられる。 今、WEB2.0という新しいパラダイムが生まれて、CGMという個人の情報が重要だと認識された。 CGMを最も効率よく流通させるのは、インターネットの特長を生かしたP2Pであることは、疑いようがない。 また、今後膨大なCGMが発信するようになると、1極集中型が破綻すると私は予想している。ムーアの法則がサチッてきている以上、横に広がる以外ないのだ。 なので、私は新たな流通基盤が必要となる時代は必ず来ると信じている。これがReflexを開発している動機である。 今は、WEB2,0は「あちら側」という言葉に代表されるように、巨大プレーヤーによる演出に目を奪われがちであるが、なんのことはない、Googleだって個々の情報で商売しているだけではないか。たしかに、すばらしい検索能力をもっているので、Googleがまるで情報を生み出しているような錯覚を覚えることはある。しかし「情報発電所」は勘違いであり、「発電」しているのは個々の情報発信者である。 P2Pは「あちら側」でもなく「こちら側」でもない。単に個々が連携しあって成り立つネットワークである。繰り返しになるが、これがインターネットの本質であると私は思う。P2Pの検索システムは、インターネットが存在する限り、破綻することのない無限の可能性をもったシステムである。Skypeは無限のユーザ数に耐えうるそうだが、要するに、そんなようなものだ。 インターネットに問い合わせるだけで、得たい情報を得ることができるようになった。しかし、現在は、Googleにしか問い合わせることができないのが問題だ。私たちの情報を無断で利用し、他に検索手段がないことにつけこんで、いろいろ商売を行っている。私はこのような「あちら側」を撲滅したい。Google八分という言葉をご存知だろうか。インターネットはもっと公平であるべきだし、自由であるべきだ。P2Pであれば誰からもコントロールされず、また、「あちら側」の撲滅が可能だと思う。 Reflexで「あちら側」の撲滅が可能とは到底思えないが、まずは、ここに述べたような分散型の理想のネットワークを実現させたいとは思っている。私はそのためにIBMをやめたのだった。 特定プレーヤーによる1極集中ではない、バーチャルで分散型のネットワークの実現。それがバーチャルテクノロジーという会社の目的だ。バーチャルには「本来の、本質的な」という意味がある。「バーチャル=仮」ではなく、「本来」のものを得るための技術という意味で、バーチャルテクノロジーという名前にした。 私は著作権破壊とか、ほう助とか、決して望んでいない。しかし、Reflexを開発し、公開することで、結果的にそうなってしまうかもしれない。一時は開発を断念しようかとも思ったが、今はそれで有罪になってしまうのであれば、やむをえないかなと思っている。 技術の進化は誰にもとめられない。
土曜日, 12月 23, 2006
[winny] 結論
IBM時代のころをいろいろ思い出すと、自分の原点を見つめなおすことができる。私は待遇に不満があるわけではなかった。むしろ高く評価していただいたと思う。IBMに育ててもらったし、嫌いなわけではない。やめた今でもお付き合いをさせていただいている。というか、一番大きな取引先である。
それなのに・・・・なぜやめたか。
それは、Reflexを作りたかったからだ。
Reflexは、「P2Pで安全に商取引ができるインフラの提供」を目的としたミドルウェアであるが、なぜP2Pにこだわるかをここでちょっと説明したい。
金曜日, 12月 22, 2006
[news] Donald F. Fergusonがマイクロソフトに?
あの、Don FergusonがIBMを退社してマイクロソフトに入ったという噂(※)がある。WebSphereを作り、今でもSOAのキーパーソンである彼がなぜIBMをやめなければならなかったか。詳しくはよく分からないが、本当にこの業界はこの手の話が多い。(※事実かどうかはまだ分かりません)
私がIBMにいたころは、戦略を考える際には、常に彼のことを念頭に置いていた。彼が今何を考えてどうしたいのか。皆で議論しても埒が明かないときは、彼の言葉を信じてそれに従った。まるで神のような絶対的な存在であった。私がIBMの事例を誰よりもはやく作れたのは、彼のおかげかもしれないと思っている。自慢話ここから==>
ちなみに、WebSphereを日本で最初に導入した実績を作ったのは私である。1997年であったがFirst Referenceにすることができた。それから、同年クロネコヤマト様の荷物追跡システムを設計し、2002年、Webサービスを使って連携するシステムを作った。1999年には東京海上様の代理店検索システム、2001年にはKDDI様のPayCounterシステムではSOAP認証を作った。2000年には岡村製作所様でIBM初のEJBによるWebEDIシステムを作った。また、RTS様で業界初のUDDIシステムmabotを設計した。
東京海上様の代理店検索システムは、全国の代理店情報を地図上にプロットして紹介する、いわゆるマッシュアップのはしりのようなシステムだ。MapFan様の地図を利用させていただいたのだが、最初の企業ユーザだとおっしゃっていたので、私が一番最初であることは間違いない。そのアイデアを転用して、2004年、XMLコンソーシアムでiPlatを設計した。これが出来上がるころに、googleマップがUSでオープンになって話題になったが、私たちはそれに刺激されながら作業していたのを覚えている。このときはまだAJAXもWeb2.0も騒がれていなかった。
<== ここまでが自慢話 このように、業界初のものを多く手がけることができたのは、恩師であるIBMの中島DE、それから、Fergusonの慧眼のおかげであった。本当に感謝しているが、こんなに簡単にやめられるなんて、寂しいかぎりである。(よく考えたら人のことは言えなかったりする) IBMは最近、あまり評判よくないようだから、特に、日本IBMについてこの先心配である。
追記:
Google AJAX Search APIを担当するテクニカルディレクターは、かつてMicrosoftの一流エンジニア だったMark Lucovsky氏だ。
こちらはこちらで大変なのね。
もういちど、Fergusonの本を紹介しておこう。
日曜日, 12月 17, 2006
[Winny] 開発者がなぜ萎縮するか
まず、白田氏のこちらを読んでもらいたい。Winny事件判決の問題点 開発者が負う「責任」とは
極めて簡単に言えば、「Winnyが違法コピーに広く使われているってこと、知ってたでしょ。それにもかかわらず、Winnyの改良をしたでしょ。だから幇助」ということになる。この判決骨子の論理では、「画期的なソフトウェアを開発したプログラマが、実験的にリリースしたら、利用者に思いもよらない使い方をされてしまった」というだけでは幇助にならない。また仮に「思いもよらない使い方で反社会的な効果が生じてしまった」と認識した後に、とくにその反社会的な効果の拡大につながる積極的行為をしなければ幇助にならない。だから、「ヤバい」と思ったら配布公表を停止すればよいことになる。それ以上の責任、たとえばソフトウェアの回収とか削除までしなければならない等は、どこにも述べられていない。
だから、この事件が一般的に「プログラマや技術者に無理解な不当な判決であり、今後新しい技術を開発するにあたって萎縮効果をもたらす」というのはやや誇張された主張で、金子氏や弁護団のみなさんがこの点を声高に言い過ぎると、かえって金子氏の立場の正当な要素を損ないかねないと危ぐする。もちろん、このくらい簡単に誇張して言わないとマスコミの人たちや一般の人たちに分かってもらえない、という気持ちも良くわかるんだけど。あくまでも「幇助概念」に関する法律論が主戦場である本件判決を、無理して別の価値に関する議論の文脈におくと、たぶん、なにかがゆがみはじめる。
私たち開発者にとって関心があるのは、開発したソフトを公開したときに、有罪になることがあるかどうかの1点だけだ。
この記事を読む限り、自由に開発して公開しても有罪にはなりえないが、著作権侵害に利用されていることを知りながら、著作権侵害を助長するソフトを開発し続けると有罪となる。
判決が出た後である現在では、Winnyを開発することは当然有罪になり、また、「それと同等の機能」をもったソフトを開発して公開することも有罪になると思われる。そうでなければ、名前を変えてWinnyを開発し続けられることになる。
一番の問題は、「それと同等の機能」を開発して公開すると有罪に問われる危険があるということ。「それ」とは、P2Pにおける匿名性をもったファイル交換技術だ。なぜなら、「それ」を実装したソフトは、Winnyでなくても、全く同じことが可能になるからである。
Reflexは、ここにも書いたが、 WinnyはITの核兵器なのか「それ」を実装している。そして、Winnyが著作権侵害に利用されていることを知りつつ開発したことになるので、使われ方によっては、金子氏と同罪になる危険性がある。なので、私は開発をストップせざるを得ないかなと考えている。
このように、判決が出たあとでは、明らかに対応が異なるのであって、これは萎縮ということになるだろう。白田氏の意見は、実際の現場をよくご存知ないのかなと思うしだいである。繰り返しになるが、私のように萎縮してしまう開発者は大勢いると思われる。
司法は、開発者が萎縮してしまわないような、判決をすべきであると思う。今のままでは、何をしたら大丈夫なのか、まるでわからない。少なくとも、Reflexを公開して有罪にならない補償はない。やはり、遠山の金さんに聞くしかないのかなあ。
金曜日, 12月 15, 2006
[winny] 司法ではなく立法の仕事?
いやあ、すばらしい記事だ。有罪の根拠を納得できた。
Winny裁判、罰金刑は重いか?軽いか?--自己矛盾を抱えた判決
いや、そんな倫理性の話でなくても、あちこちで「著作権を崩壊させる」と発言して国家権力に挑戦し、結果的に著作権侵害ファイルを蔓延させている以上、これを無罪とするというのは国家権力の側の判断としてはあり得ないように思われる。
司法としてはやむなしということか。ということは、あとは立法の仕事ということ?新しい時代の著作権法を作る動きを期待したいところだが・・・・。
この判決には、大いなる自己矛盾もある。氷室裁判長は、情状酌量の理由として「著作権侵害を目的にしたのではなく、新しいビジネスモデルを生み出すためだった」と述べた。しかし金子被告の意図が著作権侵害ではなかったのだとしたら、その行為がなぜ「著作権侵害の幇助」に問われなければならなかったのか? 意図はしていないが、結果的に侵害に利用されれば、それは「幇助」となってしまうのか? このあたりの問題は堂々めぐりの迷宮に入ってしまいそうになる気もするが、こうした自己矛盾がひそかに内在しているあたりにも、今回の判決の何とも言えない微妙さが浮き彫りになっているようであり、そしてこの事件の判断の難しさを体現しているようにも思えるのである。
よし、この本買おう。
[prototype.js] 連想配列からXMLに変換するJavaScript
Prototype.jsを使うと連想配列からXMLに変換するコードを、こんなにシンプルに書ける。
DEMO
prototype.jsを使わないバージョン=>extractive.jsの中に含まれる
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>JSON2XML</title>
<script type="text/javascript" src="scripts/prototype.js"></script>
<script type="text/javascript">
var extension = {
toXMLString: function() {
return this.map(function(pair) {
return "<"+pair.key+">"+ (
typeof pair.value == 'string' ? pair.value : $X(pair.value).toXMLString()
) +"</"+pair.key+">";
}).join('');
}
}
function $X(object) {
var hash = $H(object);
Object.extend(hash, extension);
return hash;
}
function test() {
var aa = $H();
aa.b = "ta </a>} : ke";
var h0 = { root : { a : aa,
b : "2",
c : { d :"3", e:"4" },
f : ["5","6"]
}
}
var h = $X(h0);
alert(h.toXMLString());
// alert(h0.c.d);
}
</script>
</head>
<body onload="test();"></body>
</html>
木曜日, 12月 14, 2006
[prototype.js] Event.observe()
いつも忘れるのでメモ
Event.observe(element, name, observer, useCapture)で登録したイベント処理を受けるときは、Event.element(e)を使う。
Event.observe(but1, 'click', showMessage, false);
function showMessage(e) {
alert('clicked: '+ Event.element(e).id) ); // but1
}
どうしたらほう助とならないのか・・遠山の金さんに聞くしかない
Winnyは、違法コピーを防止するような改善がなされなかったので、ほう助と認定された。氷室裁判長は、「無限定なほうじょの成立拡大も妥当ではない」といっている。ここでのポイントは、1.その技術の社会的での利用状況、2.提供する側の主観的な態度。
1、については利用者側がどう使うかは、開発の段階では未知である。結果的に違法コピーの道具にされることもありうる。そうなったときに防ぐ手段をとれるかどうか。少なくとも、Winnyに関してはなかった。
2、については、金子氏自身、「著作権のあり方への挑戦」といわれていたこともあったらしいので、ほう助と認定されたのかもしれないが、一方で「積極的な企図があったとは認められない」のがよく分からない。
では、どうしたらほう助とならないのか、つまるところ、開発者の態度をみて、裁判長が有罪か無罪かを判断するということなのか。ああ、遠山の金さんみたいな話だ。
1、については利用者側がどう使うかは、開発の段階では未知である。結果的に違法コピーの道具にされることもありうる。そうなったときに防ぐ手段をとれるかどうか。少なくとも、Winnyに関してはなかった。
2、については、金子氏自身、「著作権のあり方への挑戦」といわれていたこともあったらしいので、ほう助と認定されたのかもしれないが、一方で「積極的な企図があったとは認められない」のがよく分からない。
では、どうしたらほう助とならないのか、つまるところ、開発者の態度をみて、裁判長が有罪か無罪かを判断するということなのか。ああ、遠山の金さんみたいな話だ。
[winny] 有罪の本当の理由
判決では有罪となったわけだが、一方で、現在でもWinnyネットワークは厳然として存在している。ということは、Winnyを規制してすべての人が使用しない限り、法による情報のコントロールはできない状態になっている。有罪とされた本当の理由は、このへんじゃないかなと思う。その証拠に、量刑の理由は、Winnyを検索キャッシュに置き換えただけなのだが、全く当てはまることがわかる。検索エンジンとWinnyは、著作権侵害幇助というより、コントロールできるかどうかだけの違いだと私は思う。
情報規制は、お上によって正しく情報の峻別がなされることが前提で成り立つ話である。しかし、「コントロール≒権力」でもあるので、権力を利用して、私利私欲に走る輩が出てくることも心配だ。同じように心配している方もいる=>なにかNHKで..インターネットの匿名性について議論やってますが
言論の自由は、憲法というより、実質的にはインターネットの匿名性で保障されてると考えているのは私だけだろうか。
情報規制は、お上によって正しく情報の峻別がなされることが前提で成り立つ話である。しかし、「コントロール≒権力」でもあるので、権力を利用して、私利私欲に走る輩が出てくることも心配だ。同じように心配している方もいる=>なにかNHKで..インターネットの匿名性について議論やってますが
言論の自由は、憲法というより、実質的にはインターネットの匿名性で保障されてると考えているのは私だけだろうか。
[winny] WinnyはITの核兵器なのか
Winny判決で驚いたのは、有罪となったということより、その刑の理由だ。「金子氏の著作権侵害幇助の企図は認められないが、著作権侵害のために利用されることを知りながら何も対策を講じなかったから有罪」だという。要するに、大変有害なソフトであるが改善されないから有罪だという。いくら作者だからといっても、それは無理というもの。P2Pネットワーク上のファイルを消すのは、技術的に不可能に近い。判決が逆ならまだよかった。ソフトが悪用されて侵害されたのは他者によるものであり、それを防ぐには技術的な理由があって対策を講じられなかった。なので、そのことについては罪には問えないが、著作権侵害幇助の企図があったので有罪。ソフトはあくまで人が利用するものであり、どのように使ったかを問題とする、いわゆる「包丁」の例えを適用するとわかりやすい。このままだと、銃刀法違反のような法律がITにも適用されるんじゃないかと不安を感じてしまう。
特定のソフトであればまだいい、実は、弊社で開発しようとしているReflexにも適用されてしまうんじゃないかと心配している。Reflexは、Overviewの「何が嬉しいか」を見てもわかるように、P2PをベースにしたCGMの管理ミドルウェアを目指したものだ。CGM(コンテンツ)があらゆるノードでキャッシュされているが、IDで特定できて、誰がいつ作成したかを確認できる。特定のノードにいなくても、どっかにキャッシュされていれば、自動的に検索されてダウンロードできる。暗号化とPKIを使うことで、オープンな環境で安心して商取引ができることを目指したものだ。しかし、適当な署名を作って公開することも、やろうと思えばできる。当然、証明書が偽造されていることが分かるので、信用できないことはすぐに分かるのだが、それがたとえ信用できないものであっても、リスクを承知で入手することはできる。すなわち、匿名のファイル交換が実質的にできてしまうのだ。このソフトを公開したらどうなるのだろう。私は著作権幇助を企図していないけれども、利用者はどう使うか分からない。判決を知った今であれば、もちろん、匿名のファイル交換ができない仕組みにするとは思うが、もし知らないで公開してしまったら、金子氏のように有罪となってしまうのだろうか。私は、こんなリスクをしょってまでReflexを開発するつもりはない。設計の大幅な見直しか、あきらめざるを得ないだろう。私のように感じている者は日本中に大勢いるはずだ。司法は、著作権を主張する者の利益もそうだが、日本のIT業界全体の利益も考えて判断すべきだと思う。今回の判決は、イノベーションに取り組んでいるIT技術者のモチベーションに大きく影響を与えることだろう。
原爆を発明したアインシュタインは有罪か、使った者が有罪か、それとも両方なのか。
アインシュタインを有罪とする法律が当時はなかったから無罪だという人がいたが、どうなんだろう。
Winnyは原爆のような存在で、昨日、それを発明した人に罪が言い渡された。
著作権侵害幇助の企図は認められないが、大変有害なものであり、改善されないので有罪だそうだ。
特定のソフトであればまだいい、実は、弊社で開発しようとしているReflexにも適用されてしまうんじゃないかと心配している。Reflexは、Overviewの「何が嬉しいか」を見てもわかるように、P2PをベースにしたCGMの管理ミドルウェアを目指したものだ。CGM(コンテンツ)があらゆるノードでキャッシュされているが、IDで特定できて、誰がいつ作成したかを確認できる。特定のノードにいなくても、どっかにキャッシュされていれば、自動的に検索されてダウンロードできる。暗号化とPKIを使うことで、オープンな環境で安心して商取引ができることを目指したものだ。しかし、適当な署名を作って公開することも、やろうと思えばできる。当然、証明書が偽造されていることが分かるので、信用できないことはすぐに分かるのだが、それがたとえ信用できないものであっても、リスクを承知で入手することはできる。すなわち、匿名のファイル交換が実質的にできてしまうのだ。このソフトを公開したらどうなるのだろう。私は著作権幇助を企図していないけれども、利用者はどう使うか分からない。判決を知った今であれば、もちろん、匿名のファイル交換ができない仕組みにするとは思うが、もし知らないで公開してしまったら、金子氏のように有罪となってしまうのだろうか。私は、こんなリスクをしょってまでReflexを開発するつもりはない。設計の大幅な見直しか、あきらめざるを得ないだろう。私のように感じている者は日本中に大勢いるはずだ。司法は、著作権を主張する者の利益もそうだが、日本のIT業界全体の利益も考えて判断すべきだと思う。今回の判決は、イノベーションに取り組んでいるIT技術者のモチベーションに大きく影響を与えることだろう。
原爆を発明したアインシュタインは有罪か、使った者が有罪か、それとも両方なのか。
アインシュタインを有罪とする法律が当時はなかったから無罪だという人がいたが、どうなんだろう。
Winnyは原爆のような存在で、昨日、それを発明した人に罪が言い渡された。
著作権侵害幇助の企図は認められないが、大変有害なものであり、改善されないので有罪だそうだ。
水曜日, 12月 13, 2006
[winny] Winny 量刑の理由
私のBlogにはちゃんとCopyrightが付いているにもかかわらず、勝手に検索キャッシュにコピーして、私の意図とは異なる利用のされかたをされ、利益を得ている輩がいる。その輩には以下を言い渡す。まあ、罰金刑が相当だろう。
量刑の理由
被告は、検索キャッシュを開発、公開することで、これを利用する者の多くが著作権者の承諾を得ないで著作物ファイルのやりとりをし、著作権者の有する利益を侵害するであろうことを明確に認識、認容していたにもかかわらず、検索キャッシュの公開、提供を継続していた。
このような被告の行為は、自己の行為によって社会に生じる弊害を十分知りつつも、その弊害を顧みることなく、あえて自己の欲するまま行為に及んだもので、独善的かつ無責任な態度といえ、非難は免れない。
また、正犯者らが著作権法違反の本件各実行行為に及ぶ際、検索キャッシュが、重要かつ不可欠な役割を果たした▽インターネットにデータが流出すれば回収なども著しく困難▽インターネットの利用者が相当多数いること、などからすれば、被告の検索キャッシュの公開、提供という行為が、本件の各著作権者が有する公衆送信権に与えた影響の程度も相当大きく、正犯者らの行為によって生じた結果に対する被告の寄与の程度も決して少ないものではない。
月曜日, 12月 11, 2006
[Google Calendar][JSON] Google CalendarでBlogのエントリー
Google Calendarのコメント情報をJSONで読み、Blogのように時系列で表示するJavaScriptを作ってみた。ここを参照=>(デモと説明)
カレンダーに自由に書き込んでもらって結構なのでぜひ使ってみてほしい。こういう使い方はカレンダーの想定外かもしれないけど、ちょっとした情報共有にはこれで十分事足りると思う。
技術的なポイントは、
カレンダーに自由に書き込んでもらって結構なのでぜひ使ってみてほしい。こういう使い方はカレンダーの想定外かもしれないけど、ちょっとした情報共有にはこれで十分事足りると思う。
技術的なポイントは、
- エントリーをソートする( feed.entry.sort() で、sort中に更新順となるような条件を指定した)
- ISO8601からDateへの変換(d.replace(/^(\d{4})-(\d{2})-(\d{2})T([0-9:]*)([.0-9]*)(.)(.*)$/,'$2/$3/$1 $4'))・・9時間足してねえ
- エントリーのlinkを元にコメントのリストをJSONPを使って作成する(document.write()だとIEで動かないのでdocument.createElement()を使ってscriptタグを作成した)
- 4行目のIFRAMEは埋め込みカレンダーを横に出すため
- 30秒おきにリロード(この動きがかっこ悪い)
登録:
投稿 (Atom)