掲示板の掛け替え顛末

 せんだっての12月1日に、予告なく掛け替えられたsnowdrop関連掲示板。いや、予告のないのは今回に始まったことじゃないじゃないかという向きもあるかと思います。けれど今回の掲示板掛け替えは、僕にとっても思いのほかの急ピッチで進められた事業なのでした。

なぜ掲示板を掛け替えようと思うに至ったのか?

 今となってみれば、kototone.jpを取得し、CGIの設置も可能となった以上、自サイト内に独自の掲示板を設置するのは至極当然のことと思えます。けれど当初は、以前より使ってきたGeocitiesのゲストブックを撤退するつもりはなかったのでした。特別な理由はありません。旧ゲストブックに満足していたわけでもなかったのですが、これも使ってきたものへの愛着ということで説明できるかと思います。いずれはこととね独自の掲示板を設置するかも知れないとは思いながらも、むしろその労力をはかると積極的になれない。持って生まれた消極性が原因したというのも、理由のひとつかも知れません。

 ですが、掲示板の掛け替えを決意し、動き出したのは突然でした。そして、すでに掲示板掛け替えを予想させるヒントは用意されていたのです。

 新掲示板の設置を決意した日は11月6日でした。しかし、掲示板書き換えの決意がなされたと取り立てていうには、あまりに半端な日付です。なにか事件があったわけでもない、なにかかわったことがあったわけでもない、ただ日常を刻むばかりの日。しかし、本当になにもなかったというのでありましょうか?

 その日のオーナーの言動をチェックしてみましょう。

 更新履歴を見てみても、その時期の中心的更新内容だったイタリアリポートがあるだけで、なにか手がかりになりそうな記事は見つかりません。サイト引っ越しに関する文章が公開されるのは11月11日と、まだ先の話。サイト引っ越しに関しても決着がついていないという、中途半端な時期にほかなりません。となれば、問題のGeocitiesの掲示板に手がかりがあるかも知れない――

 Geocitiesで公開されていた掲示板があやしい。そうにらんだわれわれが調査の末見つけ出したのは、次に引用する衝撃的な発言でした。

815.メガネしない生活、始めませんか?

投稿者:snowdrop - 2001年11月06日 17時40分28秒
ブラウザ:Mozilla/4.0 (compatible; MSIE 5.12; Mac_PowerPC)
投稿アドレス:202.252.197.120
メールアドレス:snowdrop@kototone.jp
ホームページ:http://www.kototone.jp/

 今出ている、geocitiesの広告……
 酷い、陰謀のような広告だ……

 うむ、確かに酷い。人間の所業とは思えないキャッチコピー。このような非人道的な言葉が存在していいだなんて、僕には到底考えることすら出来るものではありません。掲示板オーナーはこの文言にショックを受け、それがために掲示板掛け替えを決意したと推測することは出来ないでしょうか。いや、きっとそうに違いない。そうわれわれは確信するに至ったのです。

ちょっとまじめに

 自前でCGIをかまえようかどうかと悩んでいたところを後押ししたのがこの広告であったというのは、実際のところ事実です。なにごとにつけても、理由なんてのは些細なものと決まっています。snowdrop関連掲示板もその例にもれず、上記のような些細な理由から動き出したのでした。

 といっても、まじめな話、いずれは広告の出ない、より軽いBBSを設置したいという希望はありました。でも、それはずっと後のことになると思っていたのです。それが少し早まっただけ。とはいうものの、まさか急遽iCabが笑うようにスクリプトを書き換えるはめになるとは思いもよりませんでしたけど。

スクリプトの書き換え

 掲示板CGIは、KENT WEBで提供されているLight Boardをベースとすることに決定しました。KENT WEB製に決めた理由は、プロバイダで紹介されていたCGIがこれだったからというだけ。深い理由なんてありませんでした。なかでもLight Boardに決めたのは、機能が多すぎず少なすぎず、手ごろ感があったためです。しかし、このCGIスクリプトが書き出すHTMLに、僕は満足できませんでした。

 iCabが笑わないからだけではありません。もうこの頃ともなると、ネストされたタグや、不思議マークアップと揶揄される、HTMLのHTMLたる根本的意義を見失ったとしかいえない正しく書かれていないHTML。それらに自分自身が嫌悪するまでになってしまっていたからです。

 こうなれば仕方がありません。スクリプトを一から組むのは無理としても、せめて自分が納得出来る程度にまともなHTMLを書き出すように改造する。こうなってはもう後に引くことは出来ない、そういう決意でみなぎっていました。

最初は見た目から

 スクリプト改変にあたって、最初に気にしたのは見た目でした。テーブルによるレイアウトを排除、font要素、b要素などの物理マークアップを除去し、適切な見出し要素が設定されるように手を加えていきました。html要素にはlang属性を入れ、その前には文書型宣言が書き出されるようにしました。この時点で使われていたHTMLバージョンは、4.01 Transitionalでした。a要素にtarget属性が書き出される必要があったからです。過去ログ参照でフレームセットが使われていたため、target属性が必要だったのです。

 掲示板の使い方やワード検索へのリンクをリストにしました。このときはまだ他に、過去ログ検索へのリンクも用意されていました。

 フォームに手を加えはじめました。この時点でのフォーム要素はめろめろだったので、とにかくきちんとしたものが書き出されるように気を配りました。この際に、input要素やtextarea要素と、それらに対するラベルを、定義リストとしてマークアップし直しました。これによって、ラベル(説明)と入力フィールドが明示的に関係付けられるようになったと思っていました。

 こうして書き出されるようになったHTMLは、非常にシンプルなものになっていました。body要素から見た目に関する属性も取り除いたのは、いずれCSSで見た目を設定しようというための布石でした。ほぼ素のままのHTMLが表示される、いわば何年も前のスタイル。それがこととねのスタイルならば、こうして書き出されるようになったBBSはやはりこととねでした。

 そしてこの時点で、iCabは笑うようになっていたのです。

必要な要素を追加

 こととねの全ページにつけられているパン屑リストを設置しました。これによって、ようやく素のHTMLからこととねらしいものになったと思います。次いで、link要素も追加。CSSへのリンクも追加しましたが、まだCSS自体を書いていなかったので、この時点ではなにもスタイルが指定されていませんでした。

 ページ末尾につけられている、公開日や修正日、コピーライトを示す数行は設置しませんでした。BBSでの発言内容はあくまで発言者の著作物であって、こととねによって管理されるべきものではないと考えたからです。それに動的に生成されるものである以上、最終更新日が出たところで意味もないでしょうし。かわりに、ページ末尾に書き出される、KENT WEBの著作権表示を、より分かりよいものに書き換えました。フリーでこのように有用なCGIスクリプトを提供していただいている以上、当然の礼儀といえるでしょう。

 この時点で、BBSの基本的なかたちはすべて出来上がっていたのです。後は試用してみて、より使いやすいものに変え、不要なものを削るばかりでした。

不要なものを削除

 では、不要なものとはなんだったのでしょうか。

  1. タグ解釈機能
  2. レス番号付け機能
  3. 記事削除機能
  4. 過去ログ参照機能

 これらは、最終的にsnowdrop関連掲示板から削除された機能の一覧です。これらは、僕にとっては特に必要のないものと思われたのでした。

タグ解釈機能

 発言内に書き込まれたHTMLのタグを有効にすると、発言者が自由に自分の発言を自由に装飾することも可能になります。この機能は、使えると結構楽しいものではあるのですが、その反面うるわしくない結果をもたらすこともあるので、僕自身は今なお懐疑的なのです。

 望ましくないfont要素の氾濫。終了タグの書き忘れがあると、掲示板全体が影響されてしまいかねません。img要素を使って他サイトから(無断で)画像を引っ張ることも出来れば、Aドライブへのアクセスも可能になってしまいます。

 現実的にいって、ここまで懐疑的になる必要もないでしょう。自由な表現を保証してもいいではないかと思うこともあります。ですが、見た目を装飾することで言葉というものの本質を失うこともある、そう僕は思っているので、せめて自分のサイト内の掲示板だけでも制限を課したいと思ったのでした。あるいは、装飾もなにもできなかった、古いパソコン通信への思慕がこれをさせているのかも知れません。

レス番号付け機能

 この機能については、説明しておかないと意味不明でしょうね。

 レス番号付け機能とは、投稿者や投稿日時の記載された行に設置された「返信」ボタンを押すことで、自動的にタイトルに「Re」をつけ、さらに引用符をつけた全文引用を自動で作成してくれるという優れ機能です。

 ですが、僕は引用が好きではないのです。

 ありませんか? 結構力を入れて書いた文章。それがほぼそのままに引用され、「そうなんだ」とかのひとことで済まされてしまうという経験。いや、いいんですよそれでも。でもこちらが一生懸命書けば書くだけ、大量引用ひとことコメントのダメージは大きい。正直、かなりへこんでしまいます。

 なので、僕は出来るだけ引用をしないよう心がけています。引用はあくまで効果的に。ひとことコメントも、むしろひとことで済ませるからこそ面白みが出るという場合を除いては、決して書こうと思いません。

 この自分に課している決まりごとを人にも押し付けようとは思いませんし、ばんばん引用してくれてももちろんかまわないのですが、あえてこの大量引用を促すがような機能はうちの掲示板にはいらない。との理由から、引用作成機能は削除してしまいました。引用をよくされるかたがたにつきましては、ごめんなさい。でも、「Re[発言番号]: 元タイトル」がh2要素で表示されると、結構鬱陶しかったの。これも、この機能を削らせた理由のひとつでありました。

記事削除機能

 投稿時に削除キーを設定しておくと、自発言を削除できるという機能。まずいことを書いてしまったときなどには、実に便利な機能です。ですが、僕はあえてこれを削りたいと思ったのでした。

 なぜか? それはすべてのことごとはわれわれにとって一度きりの機会、一期一会であると考えるからです。人と人の出会いも一期一会なら、人がなにかをなそうというその機会も、すべてただ一度きりのものなのです。

 コンピュータは、そのただ一度きりの機会を、アンドゥ、リドゥという機能でもって克服しました。機械技術がもたらした編集という機会も、旧来の一期一会を乗り越える機会をうみだしました。

 ですが、われわれが相手するのはあくまでもネットやコンピュータの向こうにいる人間なのです。その瞬間瞬間に相手のことをおもんぱかって、配慮することを忘れてはならないのですが、その最も重要な相手のことに心を砕くということを、人はとかく――自分も含めて――忘れがちであるとは思いませんか。

 そのため、あえてやり直しを可能とする削除機能は削りました。すべてはたった一度きり、いいかげんな気持ちで臨むものではない。これはこととねの基本的な姿勢でもあります。

過去ログ参照機能

 過去ログを残すかどうかに関しては、最後の最後まで悩みました。どう考えても自分は過去ログを参照しないだろうけれども、もしかしたら過去ログを読みたいと思う人もいるのかも知れない(いや、いないだろうけどさ)。埋もれていくその場その場の情報を引き上げたいと考えるならば、過去ログは残すべきかと思われました。

 ですが、ひとつのテーマで話し合っているような掲示板ならともかく、その場その場に臨んで変わる、テーマを持たない掲示板に、過去ログを参照する価値が見出されるとは到底思えません。かりに価値のある発言があるとすれば、その時その時にすくい上げてやればいい。これが過去ログ作成をやめた一つ目の理由でした。

 二つ目の理由。理由としては、むしろこちらの方が重要でしょう。過去ログを残さないと決めたのは、上記の記事削除機能削除と関わっているのです。

 一発言一発言を大切にしたいという思いから削除された記事削除機能です。ですが、発言の度に心を砕き、細心の注意を払ったとしても、発言内からあやまりや失敗がなくなるはずもありません。人間とは誤るものであるという考え方からすれば、それはむしろ当然なのです。

 ですが、僕はそのあやまり、失敗を取り消す手段をなくしてしまいました。では、自分の過去の失敗をそそぐ機会は与えられないというのでしょうか。

 過去ログの生成を止めることによって、失敗をそそぐことが出来ると考えたのです。時期が来れば、発言は流れて消えていきます。もし失敗やあやまりがあったとしても、時が解決してくれるといえるでしょう。わたしたちの生活している世界においても有用なあり方を、掲示板にもあてはめたいと思いました。

 基本的にこととねのドキュメントは削除しないものと決めていますが、このルールがすべてに適用されることもないでしょう。なかには流れて消えていくばかりの言葉もあっていいはずです。いずれ消えるとわかっているからこそいえることもまたあるのですから。

掲示板の仕上げ

 掲示板の細部の調整を終えて、後は仕上げだけになりました。掲示板用のCSSを書き、掲示板の使い方の文言を書き直しました。過去ログ参照をやめたのでフレームセットを用いる必要がなくなり、ともないtarget属性をなくし、HTMLバージョンも4.01 Strictに変更しました。そして最後にaccesskeyとtabindex属性、label要素を設定しました。

accesskey属性

 accesskeyというのは、キーボードショートカットによるナビゲーションを可能にする属性で、a要素やフォーム内要素に設置することが出来ます。これは、ワード検索のand/orのラジオボタンのみに、ひっそりと設定してあります。というのは、投稿ボタンやリセットボタンにaccesskeyを設定することで、誤動作する可能性を増やしたくなかったからです。

 余談ですが、僕はよく間違えてescを押してしまい、せっかく書き込んだ文章を反故にしてしまうことがあるのです。これはへこみます。ええ、へこみますともさ。

 こういう理由から、投稿/リセットボタンにaccesskeyを設定するのは控えたのです。

 ワード検索にジャンプして、a/oを押せば、ラジオボタンが切り替わるはずです。WindowsIEならaltを押しながら、MacintoshIEならcontrolを押しながら。iCabなら、該当キーを押すだけで大丈夫です。一度お試しください。

tabindex属性

 tabindex属性は、a要素やフォーム内要素に対してのタブ順を設定する属性で、snowdrop関連掲示板では主にフォーム内要素にこれを設定しています。

 フォーム入力を促すページでは、おそらく一番最初にフォーム内要素がフォーカスされることが望ましいと考えたのです。でないと、パン屑リストを順にたどることになってしまいます。

 ですが、ここでもリセットボタンにtabindexは設定しませんでした。理由は、もういわずもがなですね。

label要素

 そして、label要素を設定しました。label要素というのは、フォーム内要素とその説明となるラベルを、明示的に結びつけるための要素です。このinput要素は発言者名である、こっちのはe-mailアドレスであるということを、name属性でもって結びつけています。

 正直、上にあげた二属性一要素は、自己満足の部分が強いといえる要素です。ですが、せっかくなので出来ることは全部やっておきたいと考えたのでした。いつ、どこでなにが役に立つかわからないということもありますので、その時にやっていなかったことで後悔したくないと思ったのです。

そして掲示板公開

 そして、掲示板が公開されました。一ヶ月弱という短い時間のなかで駆け足で改造、設置し、慌ただしくテストをした、もしかしたらまだ不備の残る掲示板です。ですが、それなりに頑張ったおかげで愛着のあるものとなりました。

 公開したあとは、掲示板は参加者との共同作業によって動いていきます。決して自分一人でどうこうできるものではない、ひとつの社会のかたはしともいえる場。

 どうぞ、よろしければ一緒に育てていってください。そして、これからもかわらぬ御愛顧をよろしくお願いいたします。


わたしの愛した機械へ トップページに戻る

公開日:2001.12.04
最終更新日:2001.12.05
webmaster@kototone.jp
Creative Commons License
こととねは、クリエイティブ・コモンズ・ライセンス(表示 - 継承 2.1 日本)の下でライセンスされています。