Home

日記
復帰? (09:05)Edit

何度やっても起動しなかったサーバーが、なぜか正常起動したという連絡が来て(理由不明)、実際にアクセスしてみたら、特に問題なく動いているっぽかったんで、ひとまずディスク交換等もなく復旧作業中。

でもさすがに一度死にかけたディスクは信用できないんで、データはすべてセカンダリーディスク(ディスク2台構成なのよ)に移動して、そっちで動作するように変更。で、DNSを再び従来のサーバーに振っておいたんだけど、そろそろDNS情報が回り始めたかな。MRTGのloadaverageグラフをながめていると、だいぶ負荷は移動してきているみたいだけど。

Published At2005-08-06 00:00Updated At2005-08-06 00:00

日記
来週あたりには何とかしたいです(「安西先生、バスケがしたいです」のように←あまり関係ない) (17:36)Edit

いろいろ面倒くさいことになってるんですが、現在いる場所のネットワーク環境が貧弱、かつ、その他いろいろ派生した問題がありすぎて、復旧作業が進みません。来週あたりには何とかしたいと思いますが、それまではだましだまし使っておいてください。

Published At2005-08-09 00:00Updated At2005-08-09 00:00

日記
Re: 米国著作権法とsb : highbiscus -北国tv (18:07)Edit

テンプレート技術とテンプレート仕様とテンプレートデータとコンテンツ(エントリー)データの区別をつけてから出直してきなさい。

  • テンプレート技術はblogツール、Webアプリケーションに限らず、プログラミングで非常に一般的なテクニック。領収書の宛名を書く部分は「$NAME$様」としておいて、実際にコンテンツが決まった時に「highbiscus様」に差し替える、という技術。
  • テンプレート仕様は、テンプレート変数(名)とコンテンツの対応付け。上で言うところの「$NAME$」は「宛名」である、というような決まり*1
  • テンプレートデータは、テンプレート仕様に基づいて作成されたデザインデータ。「宛名: $NAME$様」みたいなデータ。
  • コンテンツデータは、テンプレートにはめ込まれるコンテンツの内容。「$customer = 'highbiscus';」とか。

sbがJUGEMと互換性をもっているのは、テンプレート仕様。ユーザーインターフェースなどの外見的な特徴を表現しているのは、テンプレートデータの方。テンプレートデータによってユーザーインターフェースが同じになったとしても、それはテンプレートデータの著作権の問題であって、それを読み込むツールの問題ではない。sbがtDiaryやMTのデータをインポートできるというのは、コンテンツデータのこと。sbとsb2で互換性がないというのも同じ。これは今回の件とは関係ない。

テンプレート技術、テンプレート仕様、テンプレートデータ、コンテンツデータの関係を簡単な式で表現すると、以下のようになる。

テンプレートデータ+コンテンツデータ=ブラウザに表示される画面

テンプレート技術とテンプレート仕様は、上記の式で言うところの「+」の部分になる。テンプレートデータとコンテンツデータを結合する処理を行うために利用される技術と仕様。

テンプレート展開の実装方法としては、

  • 正規表現を使ってテンプレート変数を置換
  • DOMツリーに展開して該当のオブジェクトのinnerTextに代入
  • いったんネイティブプログラムコードに変換してからeval

など、いろいろな書き方がある。というのが表現の違いの話。

JUGEMはソースが公開されていないので、sbはJUGEMの著作権に触れることなく、互換性のある実装を行っている。もし偶然JUGEMとsbのテンプレート展開の処理が似たようなコードで記述されていたとしても、sbの実装はJUGEMのソースを元にした(由来した)ものではないので、著作権的には問題ない。というのが著作権における由来性の例外事項(同じ表現でも由来していなければ著作権には触れない)の意味。

ところで結局、テンプレート仕様(タグ)の互換性以外には問題がない、ということでいいのかな?

*1 ブロック指定とか条件によって表示・非表示を切り替えるロジックとかを書ける場合もあるけど

Published At2005-08-14 00:00Updated At2005-08-14 00:00

日記
経過と状況 (23:33)Edit

ざっとした経過と現在の状況を書いておく。

  • メインのサーバーのプライマリディスクが死んで起動しなくなった
  • 予備(DB&裏タスクメイン)サーバーにWebアプリ側も移動して暫定復活
  • サーバーのディスク交換を依頼。セカンダリーディスクもダメなら丸ごと交換するよう付記
  • メインのサーバーが復活したとの連絡。プライマリー、セカンダリー共にふつうにアクセスできた。
  • メインのサーバーのセカンダリディスクにすべてのアプリケーションデータを移動して通常復活(のつもりだった)。そのまま旅行に出かける。車でさいたまから北九州まで夜を徹して1000km一気に移動。その後ぐったり。
  • 数日後、ディスク交換完了の連絡(まだその依頼が生きていると思っていなかった)。しかし長期旅行先でネット環境がなく、連絡に気づかないままに半日以上放置。
  • 連絡に気づき、あわてて素のFedora Core 3にセットアップされたサーバーにログインしようとするが、連絡されたアカウントではログインできない。結局rootのパスワードとログイン用アカウントのパスワードが逆に通知されているのが原因だった。
  • ログインしてみたら、問題なさそうだったセカンダリーディスクまで交換されていて愕然とする。DBデータとかも全部別サーバーからコピーし直しかよ。セカンダリーディスクにコピーした段階で油断して、別サーバーへのバックアップを完全にしていなかったことに思い当たり、作業の手間にうんざりする。
  • 素の状態にセットアップされたサーバーに、京ポンPC接続経由で最低限のWeb環境をインストール。京ポンが128k接続非対応端末であることにそのとき気づく。遅い。
  • 1470.netのサーバーはいろいろなツールを組み合わせて動かしているんで、関連ツールのインストールが結構面倒。しかも今回のFC3は従来といろいろ変わっているらしく、RH系のTIPSを使っても素直にインストールされてくれないものが多い。
  • さらにちょうどそのタイミングでChasenの配布サーバーが落ちていたらしく(あるいはAirEdge経由での経路が死んでいただけかもしれない)、Chasen関連のデータもダウンロードできない。別サーバーにあったアーカイブを使ってインストールしようとしてもmakeでこける(これはgccの互換性の問題らしかったけど、ネット環境が遅すぎて探せなかった)
  • あまりにネットワークが遅くて作業がはかどらないんで、ある程度主要な機能が動き始めたところで、外出先での作業をあきらめる。
  • 金曜日の夕方に再び車で北九州からさいたままで1000km移動。今回は途中で力尽きて滋賀のSA(ホテル)で一泊。名古屋と都内で渋滞にはまり、家に帰り着いたときにはぐったり。
  • 日曜日の朝早めに目が覚めたんで、いろいろ残っていたセットアップを行う。さらにDBサーバーのプライマリーとレプリケーションの関係を変更したり。DBデータが3.5Gくらいあるんでネットワーク越しの移行作業はそれなりに時間がかかる。3時間ほどサーバーを止めて作業完了。
  • その他気がついたところをなおしながら現在に至る。ひとまずだいたいの機能は動かしたはずだけど、まだおかしいところがあるかもしれない。
  • あとどうも今回のFC3は、思ったように動かないところが多すぎる。前回FC3を素からセットアップしたときには、FC2までと大して変わっていなかったのに。今回のセットアップ(作業をした人?)に問題があったのか、それともFC3の標準状態が変化したのか、なんなんだろう? selinuxは外してあるんだけど。
  • というわけで表向きの機能はだいたい復活しているけど、裏側はまだかなりぐちゃぐちゃ。かなり根本的なところから手をかける必要がありそうだ。

Published At2005-08-14 00:00Updated At2005-08-14 00:00

日記
Re: はい、いしなおさんの負け。 : highbiscus -北国tv (12:35)Edit

結局JUGEMとsbの著作権の問題については、「JUGEM独自タグ一覧」にあるようなテンプレート変数名とそれが意味するコンテンツの内容の対応付け、という仕様に関しての問題であるってことでいいんですね。見た目がなんとなく似ているから合わせ技一本、とかいう言いがかりレベルの話は本論ではないんですよね。

確かに、{blog_name}は「ブログの名前」に置換される、みたいな変数名とコンテンツの対応仕様は、JUGEM独自の創造物ではあるでしょう。それが、著作権法によって守られるべき著作物であるという考え方もゼロでなくはありません。

highbiscusさんは上記のようなテンプレート仕様というものは、判例によって*1著作権で守られないという見解が一般的なデータフォーマット仕様の領域ではなく、「独占的な権利を与えられるべき著作物(思想又は感情を創作的に表現したものであつて、文芸、学術、美術又は音楽の範囲に属するもの、もしくは、電子計算機を機能させて一の結果を得ることができるようにこれに対する指令を組み合わせたものとして表現したもの)」であると確信しており、それについて簡単な許諾を得た上で作成されたsbは、JUGEMの著作権を侵していると考えているわけですね。

私の負けですか、それは良かったですね。highbiscusさんの主張を支持する人がほとんどいないようならば、highbiscusさんがそう主張しても全然問題ありません。

ちなみに

highbiscusさんのサイボウズ裁判の解釈(画面表示の設計に関する判例が、プログラムの(データ仕様等を含めた)設計一般に適用される)について、私はそれを認めていませんよ。

なんで

テンプレートデータをインポート(変換)して使うツールはOKで、直接使うツールはダメと切り分けているんだろう? 事前に解釈するか利用時に解釈するか(処理の実行タイミング)の違いだけなのに。インポート型ツールだって、元のツールのテンプレート仕様をそのまま利用していることには変わりないのになー。

そういや

実装という言葉の意味もよくわかっていないっぽいなー。「テンプレート仕様はツールの実装だ」ってわけわかんねー。

最大の問題点はここか

テンプレート使用 = JUGEMの独自タグを中心にした、スキン切り替え型ツールの実装

「使用」は「仕様」の誤字だとして、「仕様は実装である」なんてバカな文章は、「仕様」と「実装」という言葉の意味をきちんと理解していれば、絶対に書くはずがないよな(仕様が決まっていないのにコードを書かなきゃいけない状況を自虐的に言うのならともかく)。っつーか、自分でJUGEMテンプレート互換のツールを設計(仕様を作成)して、実装してみれば、その区別が明確になるから、やってみるといい。正規表現が使える言語なら(テンプレート互換部分だけなら)、1日もあれば書けるだろう。

*1 当てはまる判例を見つけられなかったんで外しておこう

Published At2005-08-15 00:00Updated At2005-08-15 00:00

日記
highbiscusさん以外向けに、私の解釈の全体像を解説 (18:33)Edit

highbiscusさんとのやりとりだと、私がどういう解釈を主張しているのか全体像がわかりにくいだろうから、ここで基本的な主張をまとめておく(highbiscusさんと、解釈をすりあわせるための文章ではない)。

著作権法が「プログラムの著作物」として認めているのは、「電子計算機を機能させて一の結果を得ることができるようにこれに対する指令を組み合わせたものとして表現したもの」つまりはソースコード(=表現)。

ただし、プログラムの実行時の画面表現などが「思想又は感情を創作的に表現したもの」という要件を満たしていれば、それは「美術」や「音楽」表現の著作物として著作権を持つ。

表現以外を模倣することは著作権法違反ではない。仕様(決めごと)は表現ではなくアイディア。仕様を構成する名前定義(テンプレート変数名)などは表現と言えるが、それが著作物として認められるには「思想又は感情を創作的に表現したもの」である(=著作物性がある)と認められる必要がある。

「変数にその内容に応じた名前を付ける」という表現が「思想又は感情を創作的に表現したもの」と認められる可能性は非常に低いと考えるので、私は仕様を構成する表現は、一般的に著作権による保護の対象外であると考える(もちろんその表現がとても創作的だったら、著作物性を認めるが)。

仕様は規則と読み替えたら、非プログラマにもわかりやすいかも

仕様ってのは、結局のところ規則の集合なんで。

「{BLOG_NAME}はブログの名前を表す」みたいな規則は、その内容自体は単なるアイディアであって表現ではないので、著作権法で守られる対象ではない。アイディアを独占したければ特許権等を取得する必要がある。

ただし「{BLOG_NAME}はブログの名前を表す」という文章自体は表現なので、それが「思想又は感情を創作的に表現したもの」と認められれば、その著作権を認められる。

文章表現の著作権は認められやすいけど、名前(ここでいう{BLOG_NAME})とかにはふつう著作権は認められないので、名前を独占したければ、商標権とかを取得する必要がある。

あと、アイディアの表現(仕様書とか)は著作権を持つけれども、それはあくまでも文章の著作権であって、アイディアの内容の著作権ではない。仕様書は著作権で守ることができるけど、仕様を著作権で守ることは難しい。

ちなみに権利が実際にあろうがなかろうが、当事者ならば主張するだけならばできる。無断リンク禁止議論とかと一緒だね。

Published At2005-08-15 00:00Updated At2005-08-15 00:00

日記
今日のスポクラ (13:05)Edit

一週間以上間をあけてしまったなー。というわけで、今日から復帰。マシンで今まで肩を中心に(ピッチング用)やっていたんだけど、腕関係もちょっとだけ増やしてみた。バイクは軽めに20分コース。

Published At2005-08-16 00:00Updated At2005-08-16 00:00

日記
で、地震 (13:05)Edit

で、いったん家に戻ってから会社に行こうとしたら地震があった。震度4で1分くらい横揺れが続いていた。実家の方は震度5弱か。まあ地震慣れしているから大丈夫だと思うけど、後で電話してみるか。

Published At2005-08-16 00:00Updated At2005-08-16 00:00

日記
モヒカンの血とウォッチャーの血 (14:49)Edit

俺の中ではどちらが濃いのだろう。ウォッチャーの血が騒いでしまい、余計なことを書きたくなってしまう。釣り上げた獲物は、師匠以来の大物だった。

Published At2005-08-16 00:00Updated At2005-08-16 00:00

日記
はてなの投げ銭関連の話って (16:14)Edit

全然追っていないんだけど、やっぱり投げ銭ってシステムはいまいちだよなー。人と人が直接的に小銭をやりとりするってのは、どうも気色が悪い。っつーか、いい大人が小銭のやりとりに気を回さなければならない状態ってのは、なんかあほらしい(コストパフォーマンスが悪い)よね。

投げ銭ってのは人に対してではなく、コンテンツに対して行う方がスマートだと思う。で、コンテンツに対して行われた投げ銭は、そのまま作者にポイントとして渡されるのではなく、コンテンツに対する評価+はてなシステムで管理する投げ銭貯金箱に収まる。で、いったんシステムでプールした投げ銭を、何らかの形でコンテンツ作者に還元する、みたいな方がよくないかな。

単にコンテンツ評価の割合で分配してもいいし、ポイント受け取りがいやな人にはサービスとかで還元したり、あるいは希望者分をまとめて何らかの義捐金とかに回してもいいし。

あと投げ銭を投げる方も、いちいちnポイント投げ銭するとか決めるのではなく、「今月は500ポイント投げ銭する」とか設定しておいて、それぞれの投げ銭を行うタイミングでは「★〜★★★」程度の評価として簡単に投げられるようにした方が楽。で、月末にその月評価したコンテンツに対して、設定した500ポイントを(評価の重み付きで)配分したりとか。

ともかくそんな感じで、いちいち人と人の小銭のやりとりであることを意識しないで済むような仕組みになると、ずいぶん使い勝手が向上するんじゃないでしょうか。と思いつきを書いておく。

Published At2005-08-16 00:00Updated At2005-08-16 00:00