「ソフトウェア特許研究会」に参加するために京都に移動。
朝7時の「スーパーやくも」で岡山、「のぞみ」に乗り換えて京都まで。 京都駅で地下鉄に乗り換え、さらに今出川で市バス。京都大学へ。 ここで12時すぎ。
京大の中でさんざん迷ったあげく会場のVBL(ベンチャービジネスラボラトリ)に。 いやあ、遠い。
で、やや遅れて研究会が始まる。プログラムは以下の通り。
ソフトウェア特許についての知識あれこれ。実務に携わっている人からの話は知らない世界のようで刺激を受ける。 うーむ、そういうものなのね。
途中、HTML2.0をカバーしそうな特許について紹介された(2945753号、2982752号、2982753号)。 僕にはクレームを読み取る能力はないのだけど、彼の言うことを信じるなら、 この特許を行使するとHTML2.0以降を差し止めできるわけで、 Eolas特許なんか問題じゃないくらいインターネットに大混乱を起こせることになるなあ。
で、全体を通しての私の印象。
お店を早めにおいとまして、来た道を逆にたどって帰る。
ちえの和WEBページというサイトに 「コンピュータ偉人伝」というコーナーがあるのだが、 どういうわけだか「まつもと ゆきひろ」というエントリが登場した。
「らしい」とか「だろう」とか「ようだ」とか、 「伝記」っぽくない表現が多用されているものの、 よく調べたな、というのが正直な印象。
恥ずかしい限りだ。
DRYとはDon't Repeat Yourselfの略で「繰り返しを避ける」というソフトウェア設計上の原則のことである。Dave ThomasとAndy Huntの『Pragmatic Programmers』で紹介され、Railsが強調したことで知られるこの原則は、ソフトウェアの生産性・保守性の向上に有効な原則として知られている。
一方のOCPとはOpen-Closed Principleの略で「開放・閉鎖原則」とか「オープン・クローズ原則」とか訳される。先日も述べたが、この原則の定義は
モジュールは拡張に対して開いて (Open) おり,修正に対して閉じて (Closed) いなければならない
というものである。 詳しくは、 まさーるさんの記事を参照されたい。
さて、日経Linuxの原稿で今月はOCPについて語ろうとしているわけだが、 えらい苦労しながら、改めて気がついたのは、 この全然違うようにみえるふたつの原則は実は密接な関連があることだ。
すなわち、DRY原則にしたがっていないソフトウェアは自動的にOCPに反することになる。 逆に、DRY原則に従おうとクラス設計すると結果的にOCPに従うことになる(ことが多い)。
で、原稿ではそのことを説明しようとしているのだが、あまり上手に書けてないような気がする。 別にスランプというわけではなくて、いつものことなのだが。
まずは韓国からのニュース。
マイクロソフトのOfficeが韓国で販売停止の危機──特許訴訟敗訴で
クレームを読んでいないが(きっと韓国語なので読めないが)、 記事を読むかぎりは、 単にインプット先に合わせてIMEのオン・オフを制御するだけの特許にみえる。 こんな特許で販売停止が言い渡されるというのも迷惑な話ではないか。
で、さすがにこういうことはまずいと思うのか、 アメリカでは動きが出てきている(のかな?)。
要するに「あんまり自明な特許はやめようよ」ということらしい。 その通りだ。
ほんとうは特許審査のレベルではねることができればそれに越したことはないのだが。