2008年7月8日

日本で英語嫌いが許されない理由

以下,知っている人には当然のことを繰り返しているだけに過ぎないのだけど,「英語嫌い」といっている若い人達のために,書いておくね.

英語嫌いの背後には,私には排外主義が見える.誰だって,自分がどのように行動するかを決める権利を,他人に奪われたくはない.この恐怖が社会的なものになると,それは排外主義に変化する.しかし,排外主義の先に,幸せな未来はない.これは世界の歴史が証明している.

基本的に日本社会には「攘夷」つまり「外人お断り」という抜きがたい圧力がある.明治時代以前はそれで済んできたわけだけど,この21世紀に未だにそんなことをやっているのは,個人的にはお笑い以外の何物でもない.日本社会は他の国や地域の人達に支えられて,どうにか現状を維持できているのであって,そのことを無視すれば,大変なことになる.

残念ながら,排外主義をやっていられるほどの国力の余裕は,日本社会にはない.そもそも日本にはモノの資源はないのだ.だから鎖国すれば,皆飢えて死ぬのである.鎖国の結果がどうなるかは,国連から経済制裁を食っている地域の惨状を見てみたらいい.満足に医療器具や医薬品も買えなければ,もちろん最新の技術に付いていくこともできなくなる.

そして日本は,戦後はひたすら通商と加工貿易で稼いできた.つまり,ヒトの力で,泥のように働いて信用を築き,その信用の上で日本にないモノを手に入れて,今の社会を築いてきたのである.黙っていて他人がモノを売ってくれるわけではない.相手を説得できなければ,モノの売り買いはできない.

そして信頼関係はモノだけでは築けない.言葉のやり取りが最低限必要なのだ.日本語なんて,世界の勢力からしたら,辺境の特殊言語でしかない.これを不公平と言ったところで,現実に国連の公用語は,英語,フランス語,スペイン語,ロシア語,アラビア語,そして中国語の6つしかない.なぜドイツ語や日本語がないのかは,国際連合成立の歴史を調べてみたらわかるだろう.

自分の言葉が辺境の特殊言語,つまり自分の国や地域以外で通じない言語であることを知っている人達は,いち早くより通用度の高い言語を学んで,自分の社会を出なければならない時の危機に備えている.たまたまその1つが英語に過ぎない.たとえばフィンランドの人達の多くは英語を話すし,シンガポールでは植民地の歴史を引きずっていてもあえてどの民族の言葉でもない英語を共通語にしたという歴史がある.彼等は日本同様,資源のない国々であり,自らの言葉にこだわっていたらいつ経済的に窮地に追い込まれるかをよく知っている.

言い換えれば,日本はたまたま今満足に食べることのできる社会であるがために,日本語以外を満足に学ぶ機会が奪われているのかもしれない.そして,たまたま翻訳で勉強するという癖がついてしまっている人達が多いがために,知識の伝播にどうしても無視できない時間差が発生してしまっている.今はそれでいいかもしれないが,10年後,20年後にそれで済むかどうかはわからないのだ.

この閉塞した状況の中で,日本社会の中で抜きんでた存在になりたいのであれば,何らかの他の言葉は学んでおいて損はないだろう.そして,多くの技術情報は,すべからく英語で交換されているという事実も受け入れるべきだろうと思う.そして,自分の体は日本にあっても,日本国外からカネを取って来なければならない事態が個人レベルでも発生するだろう.その時に,国外に出ないで閉じ込もっていられるとは,思わないほうがいい.

(初出: はてなダイヤリーのハチロクグループより)

2003年9月13日

Javaが生まれる前の話


1988年12月14日に行われた東京大学大型電算機センター会議室でのBill Joyの講演のメモ
Edited 13-SEP-2003 by Kenji Rikitake 力武 健次
(1988年12月14日に紙に書いた私的メモを編集したもの)

From V7 to Phase-3 (メモ原文ではΦ-3)
   The evolution of UNIX
   7 from AT&T (Sys V rel 3)
   7 from BSD (4.3)
Phase-3: restructured UNIX
   20年前とは基本的構造は変わっていない
MULTICSから3つのideaしか使っていない
  Processes : "GENIE" / Ken Thompson
  File System : KT (Ken Thompsonのことと思われる)
  Pipes: McIlroy
Shell以上がけっこう複雑になっている

その後の改造
   VAX-11/780
      virtual memory
      keep PDP-11 model
      paging is invisible
        → 3BSD 1979
   Local Area Networks
      Ethernet
      TCP/IP
      model of sockets
        → 4BSD 1981
Problems
   No "tenex" pmap functionality → mmap() ← 載らず
   Communications is asynchronous → select() ← まだ不十分

New technologies -> New system facilities -> Larger O/S

Trends

   1. Minis -> WSes & Servers ⇒ NFS
   2. Library Complexity      ⇒ Dynamic Linkage
      -> back to MULTICS

Graphics and Windowing -> complicated
   5 kinds of graphics
      X11 PHIGS PostScript Renderman & what? (image processing)

Current UNIX:
   Applications: Communication が不足
   Unix Kernel:  networking 1M lines
                 original 200K lines
   Graphics: 1M lines

4 Application Styles
   main(): App.
   sleep(): Traditional Kernel
   Networking
   Graphics
   ⇒ The single paradigm:
         No Concurrency/Parallel Programming
         Too Complex

New Central Concepts
   Mach -> ports & RPC -> first bigger -> next smaller
     --> HUGE DEFICITS ("first cut taxes" ではだめ)
   ⇒ UK(英国)みたいに <first cut spending>

Sun's Approach:
   Focus on applications: one programming environment
     Concurrency / C++ / Shared memory / Fiber optics
   ⇒ Making UNIX be an application

Status of the nre project:
   Nucleus (wnj: assembler (Microcode)) ... 1 sys call
   Language (mitchell, powell... ) ... C++++-=
   Services (gingell, ...) ... UNIX, networks...

Key will be success of language

C++ ++ -= ⇒ implemented in ANSI C ⇒ SPARC (microcode)
    ++:      concurrency / parameterized types / garbage collection
       -=:   general complexity (unsafe function ⇒ ANSI C で書け)

Summary:
   Phase 3 is RISC for OS
   RISC relative to Applications
   Not a OS kernel; applications platform!
   This is first public talk -> do work, not promote.

-----

Cross examination or Q&A session

UNIXとのコンパチビリティはどうか?
→上位OSで確保する

C++とObjective-Cは?
→どっちも生産性向上のためのツールである
  C++を使っている

フォールト・トレラント性はどうするつもりか?
→オブジェクト指向ならば各オブジェクトのコピーは楽である.
  これを利用してシャドウ・ディスクを作れる.

多言語での可能性は?
→ほとんどの言語はinterpreterである.
  良いinterpreterはむつかしい.

SPARCの命令は今後拡張されるか?
→固定している.整数乗算や64bit長についてでさえ議論が行われているが,
  これからどうなるかはもっと若い人にまかせたい.
  5000ゲート+レジスタ・ファイルでしかないから,改造は楽である.
  いずれにせよ,386みたいにやればインテルに告訴されるだろうが,
  SPARCではそんなことはせず広めていきたい.
  ハードウェア記述言語が米国の大学では開発されており,
  それをつかってSPARCを作れる.それにはスーパーコンピュータが
  必要であろう.(逐次探索でやるしかない)

SPARCのコンテキストスイッチングはおそい.
→全部レジスタを変える必要があるかどうかは,統計的な問題である.
  言語の複雑さにもよるであろう.

OSと言語との関係は?
→UNIXではCのmain()の世界で生きる.しかしこれだけではgraphicsなどには
  対応できる環境がない. C++++-= ではこれらに対応できる環境を提供する.
  さらに一つでやりたい.

グラフィクス以外の音声などのメディアは?
→リアルタイムOSに近くしたいと思う.
  (レスポンスの時間が予測できるようにしたい)
  そのためには非常に速いマシンが必要である.
  小手先の対応では対処できない.

DVIは見たか?
→あまり好きではない. orphan technology だと思う.
  絵が汚い.ISDN用に絵画を圧縮したいんだと思うが,Appleの方が良く
  やっていると思う.みんなやっているから,すぐにできるだろう.
  机の中にTVが入るだろう(HDTV)

Securityはどう実現するつもりか?
→ simple .vs. diverse
   common .vs. complex
   単純なものは弱い.
   common ⇒暗号を使う必要がある.
   モジュール化して,違う組み合わせで違うシステムでやる必要がある.
   Cは堅いが,もろい←強固に書く必要がある.
   建物と違い,動かす前にテストできない.

暗号はどうするつもりか?
→ DESはどうしようもない.政治の問題だ.
   公開鍵暗号は研究されているが,これを広めようとすれば政治問題になる.
   その証拠にまだ第3世界はエニグマ暗号を使っている.
   トロイの木馬みたいだけど,銀行のシステムを攻撃してやれば
   みんなわかるんじゃないだろうか.

Phase-3 では「きれいな」プログラミングを強要されるだろう.
ガベコレなんかがあると, malloc()なんかは使いにくくなる.
→ 古いプログラマの10%が理解してくれればいいと思う.

プログラムは C++++-= ではエレガントになるのか?
→ 今マニュアルがないので例を示すことはできない.
   できるだけ変えずにエレガントにするのは,むつかしいだろう.
   コンパイラが答えられないような例があるのは情けない限りである.

SunのHardware仕様書がない.
→ 手には入れられるようにしてある.
   Sunのソースコードも提供している.
   いくつかのドライバはしょうもないだろうが.

680x0 が× SPARC が○となったのはなぜか
→ 自分でデザインするしかなかった.
   半導体業界は協調してくれないので大変だった.
   SPARCは hybrid chip の核として使われることを予想している.
   わずか20000ゲートでしかない(2μmテクノロジ)
   そのうち家具同士で通信することもできるようになるだろう.
   Nano Technology
      Drexler "Engines of Creation"

大容量記憶装置はどうなるか?
→ Audioを見よ.CDプレーヤーは安い容量はでかい.
   いわゆるdiskはRAMになり,CDが主流になる.
   そのうち原子構造を利用したものになる.

[以下雑談となり終了]

編者注:

  • C++++--= (Cプラスプラスプラスプラスマイナスマイナスイコール) はその後 Java となり実用化された言語の祖先であったと考えて良いだろう.
  • 1988年末当時,まだSun-4が登場したばかりであり,UNIXあるいはSunOSもソースコードを見るにはAT&Tのライセンスが必要だった.また,当時は米国国務省の認めない暗号技術の輸出は厳に禁じられていた.


[end of memorandum]

2001年3月21日

情報技術者の定義

(初出: Kenji Rikitake's Cyberscope: 21-MAR-2001)
  • 情報技術者が技術者たる所以は、ソフトウェアやハードウェアを、必要に応じてチューンアップできる能力を持っているからだ。この能力のない人達は、技術者と呼ぶには値しない。
  • プロは言語やOSは選べない。好き嫌いはあっても、与えられた環境で文句を言わず仕事をするのがプロである。Windowsは嫌いだ、メインフレームは嫌いだ、と言っているような人達はプロではない。
  • WYSIWYGは誤謬を招く。完全なWYSIWYGは存在しないからだ。だからWYSIWYGのプログラムによる成果を盲目的に信用してはならない。
  • WYSIWYG以前の問題: 常に演算結果と、その理論的整合性には注意を払うべきである。誤差解析のできない技術者はプロではない。
  • コンピュータの起源は、アングロサクソン文化にある。(ラテン文化ではない。ましてや、アジアやアラブ、アフリカの文化ではない。) 世界最初に計算量理論と自動機械の理論を打ち立てたのは John von Neumann と Alan Turing である。 von Neumann はハンガリーの出身だが、彼はアメリカ合衆国に尽し、その世界戦略に大きな影響を与えた。故に彼は(過去ドイツなどにいたことは無視できないが)アメリカ人として評価すべきである。 Alan Turing は英国人である。この両者の業績に比べれば、他の人々の業績は取るに足らない。
  • インターネットもコンピュータと同様アングロサクソン文化の産物であり、その文物である。社会のインターネット化を支持することは、本質的にアングロサクソン文化の一側面を支持していることに他ならない。フランスやイスラム諸国が現在の情報技術の主流に対して異議を示していることは当然の帰結である。しかし、彼等は本流にはなり得ない。
  • コンピュータ技術は本質的にアングロサクソン文化の継承物であるため、基本的にその中心言語は英語となる。故に国際化(internationalization)は、問題解決の上での最優先事項にはならない。国際化は、各国の技術者の紛争と権力闘争の結果として、最終的に実現されるものである。始めに国際化ありき、では、現実の技術者同士での意見交換は不可能である。
  • 技術者の集団は元々閉鎖的なものである。開発者の仲間に入らずして、外部から批判だけしていても、願望は実現されない。故に、英語中心の開発者の集団で意見を通すためには、その意見は英語で話されるべきである。
  • コンピュータが世界各国の言語を処理できるようになるべきだという主張が、現在のコンピュータで仕事をしなくても良い理由にはならない。これを理解していない人は、情報技術のプロにはなれない。
  • 英語のできない人は情報技術者の資格はない。言い換えれば、情報技術のプロの中に、英語を正しく解釈できない人はいない。発音は酷いかもしれないが。
  • 思考を言語化できない人は、技術者としての適性に欠ける。
  • 技術者として独立したいなら、言語表現の能力も技術の一つであると悟り、修練を積む必要がある。
  • 2000年問題を過去のプログラマの狭量さのせいだと決めつけるだけの人に、情報技術の本質を論じる資格はない。(意味: 1970年代のコンピュータの主記憶容量と、それで行っていた仕事に最低限必要な情報量を考えてみよ。)
  • 技術力の行使は、それ自身武力の行使と同様の意味を持つ。故にその無制限な利用は厳しく戒められなければならない。言い換えれば、それだけの倫理的な規準を持たない人物は、情報技術のプロと呼ぶに値しない。
  • 技術を持たない者は、技術を持つ者に対し、本質的に劣位に立っていることを自覚すべきである。他の運動能力や問題解決能力、あるいは芸術的表現能力同様、技術力は特殊能力であり、人類全部に自然に備わっているものではない。
  • 技術者は技術力を持ってその思想を証明しなければならない。思想なき技術は存在しない。技術力の裏づけなくして、技術者としての思想は証明できない。
  • 技術者としての問題解決能力の高さと、人柄の良さは、全く相互に無関係な問題である。前者で後者を評価してはならない。また、後者で前者を評価することもしてはならない。
  • 基礎技術の開発は片手間でできるようなものではない。末端の応用技術の開発ができたからといって、その技術者に基礎技術の開発への適性があるわけではない。
  • プロは自分で道具を揃える。道具を自費で賄うのは当然のことであり、他のスポンサーに頼ることは極力慎まねばならない。
  • 自分が発明したと思えることの大部分は、すでに発明されているか、無意識のうちにコピーしたものである。既存の技術を使い問題解決を行うことと、既存の技術をあたかも自分が発明したかのごとく偽装することは厳密に区別されなければならない。
[End of Memorandum]

1996年12月6日

128KTTHプロジェクト: その計画と現実

(注: 以下は1996年に開催されたInternet 1996 World Expositionに合わせて日本で行われた128KTTHという家庭向け専用回線に関する実験プロジェクトの参加報告である.その時の文書をほぼそのままの形で残している.文中のリンクは現在は存在していない.)

128kbps-To-The-Home: The Project and The Reality
6-DEC-1996 力武 健次 / Kenji Rikitake

総括 / Summary:
成功50%、失敗50% / 50% Succeeded, 50% failed

計画 / The Project
  • 300世帯へ128kbps専用回線とPCを提供
    Providing 128kbps leased lines and PCs to 300 households
  • 基本的インターネットサービスの支援 (NTT/KDD)
    Basic Internet access support provided by NTT/KDD
  • 個人や小組織の情報発信を支援
    Providing opportunities of information publishing by individuals and small organizations
  • 常時インターネット接続による生活スタイルの変化を調べる
    Research of how the lifestyles being changed by 24hours-available Internet access
私達の場合 / In Our Case
  • すでに家庭内IPネットワークが機能していたので接続はすぐできた
    We had already been running an inhouse IP network so we got immediately connected
  • 私は専ら趣味のテクノ音楽作品の配布とインターネット研究に利用
    I mainly used the line for distributing audio files of a techno-music project (Neuro Net Recordings) and for various Internet research projects
  • 妻は大阪大学への勤務と仕事のドイツ語教育情報収集や交換に利用
    My wife used the line for telecommuting to Osaka University (her workplace) and for retrieving/exchanging information about German language education (her profession)
  • NTT/KDD側の問題以外に大きな接続性に関する障害はなかった
    No major connectivity disruption occurred except for the failures caused by NTT/KDD
成功した事例 / Succeesful Cases
  • かなりのプロジェクト参加者はWWWで情報発信に成功
    Quite a few members of the project got successful results on publishing their own information over WWW servers
  • プロジェクト参加者の間で独自にメーリングリストが立ち上がり、自主的に各自の活動に関する情報交換を開始
    Various mailing lists eventually started among the project members and used for exchanging information about their projects (tth-tech@nttvdb.dq.isl.ntt.co.jp, etc.)
  • 実際に芸術活動をしている人達の活動が印象的だった
    Some intriguing activities found among the project members who involves in artistic activities (DJ Q'HEY, etc.)
  • NTT/KDDの回線が動いている間はそこそこ快適に使えた
    The performance of the network itself was pretty good if no failure occurred in the NTT/KDD networks
失敗の原因 / Reasons of Failure
  • 自力でサーバを上げられた参加者は非常に少なかった
    Very few members of the project could run their own servers
  • 最初の半年はNTT/KDD側のネットワークが安定せず、その後も接続性に関する問題が残っている
    NTT/KDD took the first half year to run the network stably, and some connectivity problems within the network s till exist
  • IWE'96日本事務局およびNTT/KDD側の支援体制は信頼性のあるネットワークを提供するという点では全く不十分だった
    The IWE'96 Japan Organizing Committee and the NTT/KDD support division did not provide enough human support for running a reliable network
考察 / Some Thoughts
  • ネットワーク線とハードウェアだけではおもしろい作品は出て来ない
    Giving only network links and hardware devices does not necessarily guarantee the creation of intriguing contents
  • WWWの情報発信なら他のプロバイダでもできた(他にやることはなかったのか?)
    WWW publishing might have been done better by subscribing other Internet service providers (isn't there anything else to do?)
  • プロジェクト参加者はインターネットを可能な限り十分に堪能したということだけは確かだ
    One thing is for sure; the project members fully enjoyed the Internet
  • 日本のIWE'96は有名人参加のイベントが多かったが、本来は128KTTHのようなプロジェクトを支援することこそが、普通の人 達の生活を見せるというIWE本来の意義に近かったのではないだろうか?
    IWE'96 in Japan had a lot of events with the celebrities, but one of the real goals of IWE was to show the lifestyles of the ordinary people, so supporting the grassroot projects such as 128KTTH was obviously much closer to the IWE goals than having the celebrities online, wasn't it?