環境「依存」か環境「構築」か?

 最近はとんと新言語というものが登場しなくなった。いや,草の根レベルでは色々考案されているのだろうけど,ある程度のマスを惹きつける流行現象を伴うパワーを持ったものは早々現れなくなってきているな~と感じる。良くも悪くもITが巷にはびこり,そこここで既存のプログラム資産が増えてきて身動きが取りづらくなっているという事情も大きいと思われる。かつては「この言語を使えば生産性が△△アップ!」なんて胡散臭いあおり文句もそれなりに効力を発揮していたモンだが,ワシみたいなヘッポコプログラマだって,自分が書いた数MBものコードをオジャンにしてまで新しい言語に乗り換える気にはならない。大体,それを極力しなくていいようにANSI Cの範疇でコードをシコシコ書くようにしているので,Cとリンクできないような新言語というものは今時皆無であろうから,まあ完全にコード資産がパーになることは当分ないのである。さすがに近頃はCの偏狭さにいらだってきているので,少しC++にシフトしているが,完全に移行するにはあと数年はかかりそうである。
 それでも今後,大流行する新言語が登場しないとも限らない。さてその時にワシはどうするか?C資産とのジョイントを計りつつ,どの程度そこに自分の欲する環境を「構築」できるかどうか,慎重に見極めることになるであろう。
 そう,結局は,自分がやりたいことが出来る環境がそこに「ある」のか,もしくは「作れる」のか,それにかかっているのだ。
 先日,TAをお願いしているシャチョーT君と喋っていて思ったのだが,今のIT状況ってのは複雑なものがありすぎて,一つに集約できなくなっているのである。いや,もちろん1990年代後半のInternetブームでプロトコルはTCP/IP一辺倒になってきたし,ハードウェアアーキテクチャはPC/AT compatibleの発展形に落ち着きつつあるし,コンパイラ言語はC/C++, COBOL, (Visual) BASIC, Java, C#, Fortran,スクリプト言語はPerl, PHP, Ruby, Python,特殊用途としてLISP等に集約されてきたし,OSはUNIX陣営(Linux, *BSD, Solaris, HP-UXなど)とWindows(TM)に2分されてきたし,WebサーバはApacheとIISに,データベースはMySQL, PostgreSQL, Oracle, SQL Serverぐらい,仮想化技術はVMwareに幾つかのベンダーが戦いを挑んでいる・・・というように,技術競争を勝ち残ってきたものはそんなに沢山ある訳ではない・・・訳ではないが,これはカテゴリー毎に見ればそうなのであって,問題はこれらを組み合わせないとITにならない,というところにある。つまり,それぞれのカテゴリーにおける選択肢は少数であっても,それらの組み合わせを取ると一気に増えてしまうのである。
 例えばWebプログラミングを行おうとすると,OSはWindowsかLinuxか,言語はJavaかPerlかPHPかC#かHTML+JavaScriptだけか,WebサーバはApacheかIISか・・・となって,この時点で選択肢が2×5×2=20になってしまっている。これにデータベースも組み合わせると一気に選択肢が4倍になり・・・際限がないのである。しかも,これらの選択肢にそれぞれコード資産を蓄えたユーザがぶら下がっているのだから事情は更に面倒だ。資本主義の論理で少数派を踏みつぶしたくとも,有力サイトを運営するサイトがバックに付いていたりするとそれも不可能になる。・・・こうしてIT環境は雁字搦めになり,保守的になり,ドラスティックな動きが封じられるようになるのである。
 してみれば,人は天から与えられた環境より,自らの手で構築してきた環境を尊ぶモノなのである。寄らば大樹,というのも一つの考え方だが,そればっかりではフラストレーションが溜まる。大樹自ら動いてしまうという危険が常につきまとい,寄っているつもりがある日肩すかしを食ってひっくり返ってしまうことだってあり得るのだ。それがイヤさに,小さなダムを造るビーバーのように,人は自分の手で環境,つまり小さな縄張りを作り上げるのである。齢四十路を迎えつつあるワシは老化が進んでいるので,このような縄張りは大変居心地がいい。というより,縄張りがないと仕事に勤しむこともできやしないのである。
 もちろんこれも,勝ち残ってきたITパーツという大樹の土台の上に成り立っている縄張りであるから,全面的に自分が作り上げたモノではない。ではないが,ちょっとばかりの大樹の移動程度は耐えられるであろう・・・というのは楽観的すぎるかなぁ?
 大樹的な環境に「依存」しつつ,そこに小さな自分の環境を「構築」するという営みの中で我々のITは成立している。ここしばらくは,各ITカテゴリのパーツの緩やかな変化に目配せしつつ,作り上げた縄張りの中で精一杯遊んでいればいいようである。楽と言えば楽だけど,なーんかこー,つまんないよーな気がしないでもない。しかしこれも1990年代から2000年代初頭の大変革を見てきたオッサンの愚痴に過ぎないんだろうなぁ。

おせっかいなサーチエンジン

 私は大学で数学とコンピュータを教えて日々の糧を得ている者であるが,趣味と実益を兼ねて,自分のWebサイトを借り物のサーバマシン上で運営している。アクセス数でいうと一日1500〜2000程度の小規模なものであるが,しかしその内容を分析してみると,直接人間が読んでいるな,と思われるものより,Webロボット,つまり自動的にWeb情報を収集するプログラムによるものが過半を占めていることが分かる。今や,Webページは人間が直接アクセスするものではなく,Webロボットのようなプログラムが集めたデータを仲介役としてアクセスするものになっているのである。
 Webという仕組みが発明され公開されたのは1990年であるが,普通のパソコンでWebにアクセスできるようなソフトウェアが提供されるようになったのは1995年である。いわゆる1990年代後半のインターネットブームはここから始まった訳であるが,まだ20世紀が終了するまではWebページの数も少なく,せいぜい個々のWebページに作られたリンク集というものを通じて情報収集をする程度で済んでいた。1996年にサービスが始まった商用サーチエンジンYahoo! Japanでも,検索機能よりは,人手によってカテゴリに分類されたリンク集の方が利用率が高かったようで,その頃に始めた私の個人ページも,Yahoo! Japanに登録された途端にアクセス数が千単位で上がって驚いた記憶がある。
 しかし,21世紀に入っても全世界的にはWebページの数は増えるばかりで,しかもblogサービスのように,Webページを自力で作成する知識がなくても手軽に記事が書け,更新や削除もたやすい仕組みが整ってくると,Webが提供する情報はうなぎ上りに増えていく。こうなってくると,のどかにリンク集を辿っているだけでは,知りたい情報を探すことが困難になる。そこでプログラムによるWeb情報の自動収集が導入されることになるのだが,人手と違って,信頼性のチェックの機構も作り込まなければならない。
 ここでGoogleが登場する。もともと研究者の世界では,論文引用数による業績評価という尺度があり,彼らはこれを膨大なWeb情報が張り巡らせているリンクの網の目に適用したのである。この評価方式はいろいろあるが,彼らが最初に導入したのは,「社会的に高い評価を得ている論文からの引用を高く評価する」というものである。逆にいえば,低い評価しかされていない論文から引用されても評価値は低く抑えられる,というシビアな,しかし現実的な方式である。Googleはこの評価方式,即ちPageRank(TM)によって,全てWebページを10段階にランク付けし,このランク順に検索結果を表示するようにしたのである。
 これによって,例えば私が書いたblog記事より,大手マスコミの掲示した記事の方が上位に表示されるようになった訳である。「社会的に評価の高い」人(企業)が書いたWebページが見つけやすくなった結果,Googleは利用者の高い評価を得ることになったのである。そのせいもあってか,Google本社のWebページ(http://www.google.com/)は最高のランク10を取得している(2007年10月23日現在,以下同様)。ちなみに,ホワイトハウス(http://www.whitehouse.gov/)も10, 日本の首相官邸(http://www.kantei.go.jp/)は8,私のWebサイトのトップページはランク5である。精進する必要がありますねぇ。
 最近はGoogleとau(KDDI)が提携して,ケータイからもWeb情報を検索できるようになっており,この検索結果の順位によって商品の売上が劇的に作用するといった現象も現れているようだ。私もたまにWebページのランクアップ手法(Search Engine Optimization, SEO)等を聞かれることがあるが,このPageRankの仕組みから考えれば,やるべきことは一つしかない筈である。つまり,他の企業,ニュース媒体,blog等で取り上げられる機会を増やすこと,そのためにはその人の本職,その企業の本業において,どれだけ他人の信頼度を上げることができるか,ということに尽きるのである。Webページは費用対効果の高い本業の宣伝としか考えていない方には逆説的な言い方に聞こえるかも知れないが,ランクアップの「王道」はこれしかないのである。
 ただ,サーチエンジンを通じてのWebページへのアクセスをきちんと把握する手段があれば(ログ解析等),SEM(Search Engine Marketing)の一環として,その結果からある程度,アクセス数を向上させることはできるだろう。そのささやかな実践例として,私のWebサイトで実際に行ったことをお話ししたい。
 最初に述べたように,私のWebページはあまり人気のないものであるが,その理由としては,blogを除いては私の専門に関する記事や論文ばかりで,一般受けしない内容である,ということがあげられる。逆にいえば,その専門分野に絞ってみれば,ランク5というそれなりの評価は得ている訳で,そうなるとそのなかで意外なものが支持されたりすることもある。それが,あるフリーソフトの使い方に関する,たった一ページの短い紹介記事であった。特に深い内容を書いた訳でもないし,他に類似のページがないわけでもない。しかし,私のWebサイト内では常にアクセス数の上位に位置している。なぜここにアクセスが多いのかな,とGoogleでそのフリーソフトの略称で検索してみたら,驚くなかれ,第一ページのトップに私の記事が表示されていたのである。確かに,Google経由で検索されたキーワードにはこの略称が多かったのだ。
 そこで,数年ほったらかしていたこのページのテコ入れを図ることにした。目次をつけ,使い方のサンプルも増やし,古かった情報を最新のものに入れ替えた。そうすると,早速効果が表われた。まあランクアップという程ではないが,昨年比で1.5倍のアクセス数になったのである。おかげで,現状で支持されている内容は大事にメンテナンスすべきである,という教訓を得たのは収穫であった。これだけ即効的に効果が出たのも,定期的に巡回してくるWebロボットのおかげであろう。
 現在のWebの世界は,良くも悪くもプログラムによって高度に自動化されたサーチエンジンがなくては存在し得ないものとなっている。しかし,その背後には,その仕組みを支持する人間がいて,サーチエンジンを殺すも生かすも,最終決定権はあくまで人間の側にある。コンピュータ技術というと,どうしても非人間的なものと捉えられがちだが,内容を知れば,そこには人間の意思が見えてくるはずである。私にはどうにも近年のGoogleのようなサーチエンジンは,近年絶滅してしまった近所のお節介おばさんのように思えて仕方がない。先に述べた,フリーソフト紹介ページのテコ入れ策も,「ほらほらみんな期待しているんだから,さっさとテコ入れしなさいよ」とケツを叩かれてやらされたような気がしてならないのだ。
 小うるさいが,恐ろしく物知りのインターネット界のご近所さん,としてサーチエンジンを付き合っていくのはそんなに悪いことではない,と私は考えている。

インターネット老人

 私はコンピュータを使っての計算を専門に研究している37歳の男性大学教員である。37歳と言えば,人間ドックに補助金が出る年であるので,肉体的には中高年の仲間入りをする年齢ということになるらしい。バカにするんじゃねぇ,私はもっと若いんだ,と主張したいのは山々であるが,ズボンのウェストサイズは年々増えているし,目が霞んでディスプレイの文字が判別しづらくなってきているし,何よりプログラミングに没頭して徹夜なんぞしようもんなら,その後数日は疲労が抜けず,かえってその後の仕事の能率が落ちてしまうのだ。やっぱり老けたなぁ,ということを痛感させられる主観的事実が増えていることは残念ながら否定できない。くそ。
 「老け」を感じるのは,それだけではなく,客観的な事実によることもある。
 例えば携帯電話。既に「ケータイ」という正しいイントネーションを伴うカタカナ単語を操れない時点でジジイなのであるが,私はあれを正しく使えている自信が全くないのだ。
 職業柄,18歳から22歳までの若者とお付き合いをすることが多いのだが,彼らのケータイの使い方を見ていると,恐らく財布の次に重要なアイテムになっていると思えて仕方がない。暇が出来ればメールを打っているか,漫画や小説をケータイのあの狭い画面で読んでいたりするし,ゼミで飲み会の日程を決めたりすると,すかさずケータイのスケジューラを取り出してメモを取るのである。たまにでかい声で通話している迷惑な人がいるなぁ,と思ったら同僚の教員だったりする。つまり,ケータイを電話として多用するのは年寄りの証拠で,若い世代は私にとっての(通話機能付き)パソコンのような存在になっているのである。で,私はと言えば,最近やっとメールの文章を片手で打てるようになった,というレベルであって,とてもスピードでは学生達には敵わないのである。
 インターネット白書2005(インプレス)によれば,日本のインターネット利用者数は,2005年2月時点で約7007万人であり,そのうち携帯電話・PHSからのみ利用している数は約943万人,パソコンと併用してしているのは約4669万人にも上るらしい。つまり,インターネット利用者の約13%がケータイからのみインターネットを使っており,約66%はケータイからも利用している,ということになる。私個人としては,この約13%のうちどれほどの層が,「インターネット」を意識して使っているのか,かなり怪しいと思っている。パソコン上で見ることのできる「ホームページ」と,ケータイ画面で見ることのできる各種の情報検索サービスが,同じ技術で出来上がっているものだ,ということを大学の情報リテラシ教育では必ず教員が解説していると思うが,どれほどその知識が浸透しているのか,となるとかなり怪しい。
 科学技術を,お仕着せのマニュアルに沿って「使う」ことはそれほど難しいことではないし,ましてやIT(情報技術)の世界では,普通の人がたやすく使えることが重要視されているので,ソフトウェアも「さあ使ってください,簡単ですよ」というメッセージを発する外見を纏っていることが多い。もちろんデザインは重要であるし,それがソフトウェアの目的の本質に敵うものであれば,使いやすさを第一に考えることは当然であるが,そうでなければ,まずはどのような仕事をさせたかったのか,それがどのような「原理」でなされているのかを知る必要がある。そしてそれは多くの場合,とても簡単な言葉と常識的な体験から説明できるものであり,英単語のカタカナ発音をそのまま使っているIT用語の羅列が必要なものではないのだ。
 例えば,インターネットがこれだけ多くの利用者を抱え,しかも大規模な破綻も起こさずに運用が継続できている「原理」は単純明快で,使用されているパソコンの多くが,通信回線の速度を調節する機構を内蔵しているからである。もちろん,悪意のある利用者が増えればその影響は受けるが,多数の利用者が回線を共有しつつ,遅くても途切れない通信を可能にしているのはこの機構のおかげであり,それ故に,インターネット全体では大規模な破綻を起こさずに済んでいるのである。
 だから,単なる利用方法の習得ではなく,原理原則も併せて知ることで,難しげなITの世界も感覚的に理解できるようになり,よりIT技術の利用に対しての認識も深まるんだ・・・と学生諸子の前で力説するのだが,いかんせん「ケータイ」の使いこなしに難儀している自分を振り返ると,「使えない」ことの言い訳めいて解釈されそうであり,そのような意識が全く働いていないとは断言できない部分もあるのだ。こうなると,原理原則論は単なる「インターネット老人の繰言」であって,つまりはこれも老けたという客観的証拠の一つでしかないことになる。あ〜あ,年は取りたくないもんだなぁと嘆息しつつ,ケータイの使いこなしにも精を出す諦めの悪い私なのであった。