カビパン男と私

HOME/横書き縦書き

文房具としてのコンピュータ

コンピュータが文房具の範疇に入れることのできる機能を有することは、さして異論がないと思う。

ただし、コンピュータが定規であり、マーカであり、原稿用紙であり、ペンであると言うときには、コンピュータが文房具に取って代わるものという視点があるだろう。つまり、従来文房具が果たしていた役割を、コンピュータとその周辺機器を使って実現するという見方だ。

「何々をしたいけれど、ワードでどうやったらいいの?」なんて聞く人は、まず一般の文房具で自分がそれを実現することをイメージし、ついでそれをコンピュータによって代替させるということを考えているように思う。そしてこうした質問にうんざりしている人は、質問者が文書構造の抽象化やインターフェースとデータ構造について理解していないし理解するつもりもないと歎くのがお約束だ。そして、繰り返される似たような質問に飽き飽きして「コンピュータは文房具ではないんだ」と言うかもしれない。

私はといえば、文房具というものの大ファンである。子どもの頃、文房具屋に入るとわくわくしたし、今だって結構わくわくする(おかしなことに、わくわくを売ろうとして設計された文房具にはちっともわくわくしないんだけどね)。そして、コンピュータにも文房具に対するときと似たようなわくわくを感じることがある。

ただし、コンピュータにかかわる諸々の事柄に対して、文房具に対したときのようなわくわくを感じる仕組みは、そう単純ではない。少なくとも、文房具屋で売っているような道具の代替ができるからわくわくするわけではない。

あまりもったいぶらずに言ってしまうなら、コンピュータに向かって作業をしていて、いちばん文房具的なものを感じる瞬間は、正規表現を書くときと、CSS セレクタを書くときである。さらに細かく言うならば、正規表現や CSS セレクタを実装したアプリケーションに対してそう感じるのではない。正規表現という考え、CSS セレクタというアイディアに文房具的な魅力を感じるのである。考えやアイディアというのがちょっと抽象的だというのなら、仕様と言ってもかまわない(ただ、実装のない仕様に対しては、仕様が公表されていない実装同様あまり魅力を感じない)。

コンピュータ言語が一般に自分にとっての文具なのかどうかということになると、気持ちは複雑だ。ソースコードの中にある = が、その言語で何を示しているのかとか、その言語で関数がオブジェクトであるかとか、そういった話題には、文房具的な魅力を感じる。しかし、依存関係が複雑を極めたライブラリを利用して、見栄えのよい GUI を実現することとか、ディストリビューションをアップグレードするごとに置き場所が変わってしまう設定ファイルを追跡すること、一般的な仕様に則らないユーザーエージェントのために生じる作業には、ほとんど喜びが感じられない。そして、喜びが感じられいない以上、その部分は文房具ではない(喜びとは文房具の定義の一部である)。

LaTeX が文房具かどうかというのは、難しいラインである。TeX もしくは、Plain TeX はかなり文房具くさい。troff も、結構文房具だ。だが、LaTeX となると、気持ちは微妙なものになる。いろいろな人がいろいろなライブラリを書くというところが、その理由だ。文房具たるからには、文房具屋で買ってきたそのままが使い物にならないといけない。あっちこっち回って有名ライブラリを集めて使うのが標準的な使い方になってしまっているものは、そのぶん文具性が薄れる。

印刷ということについて言うならば、Postscript は好きな文具だ。スタックを使うときに生じる喜びが手放せない。ちょっとした図を書くときに Postscript をエディタで手書きすると、この喜びを感じることができる。(もっとも、良いことばかりではなくて、フォントには振り回されるし、Postscript をレンダリングする段になると、ときとして闇の中に放り込まれる)。

PDF となると、これが存在することは私の喜びとするところではあるが、これは文具ではない。手書きする気がとうてい起こらないからだ。PDF は私にとってはまったくのブラックボックスであり、文房具はブラックボックスであってはいけない(その一部がブラックボックスであることはべつに構わないが)。

タブレット端末や HTML については、またそのうち。

@kabipanotoko