台所裏の洞窟

考えたことのメモ
あるいはバーグ・デイブレイク

プログラムの設計

2005-10-10 18:49:17 | ソフトウェア関係
私は実は設計とやらをせずに書くいわゆるクイックハックのようなコーディングが出来ない。この身からすると、「〜〜なプログラムを書く」(例えば体重と体脂肪率のデータを取ってきてグラフ化するプログラムを書く)という単純なものでもデータ抽出、CGI等々の相互のインターフェースを定義してその規約をもとに書くということをやらずにはいられなくなる。ある一つのファイルにデータを抽出する部分とCGIとして出力する部分をごちゃまぜに書くということは強制されない限り出来ない。

要するに私は使い捨てプログラムを使い捨て風に書くという割り切りが出来ないということである。

それがどういうときに問題になるのか。一つは鈍重であると評価されるという可能性だ。例えば「チャットの発言回数を見たいなぁ」という会話がチャットの内部で起きたとする。ある人はおそらく非常に素早く目的の条件を達成できるであろう。それはperlによって数行で実現される。私はといえば、まずファイルをどう取り扱うか、ファイルハンドルをどう受け渡すか、返り値か引数か、等を考え、それをもとにインターフェースを定義して書きはじめる。同じ結果を出すのにpythonで100行かかるだろう。

あるいは、本当にプログラミング能力について疑いをもたれることもある。私は7行プログラミングやICPCといった、速度を重視される課題には全く立ち打ち出来ない。ICPCについて、仮に回答の方向性が見えたところで、次にでてくるのは入出力やらに関するインターフェースの善し悪しの選別段階で、プログラムを書く段階にはならない。締切前にやっつけ仕事でモノをあげる、と言うことも出来ない。

ちなみに勘違いなきように書いておく。ここでは「設計的段階がかならず重い形で挟まる」という私の癖を言っているだけで、私が設計に対して何か高い能力を持っているとは言っていない。私は設計を行なう上で取るべき仮定をかなりの頻度で間違える。

あと、ここで書かれた設計という言葉が世の設計という言葉と一致しているのかも疑わしい気がしてきた。考えてみれば設計について勉強したことはない。それが重要だと言うことだけ教えられていても、それをどう実現するかについての見通しを与えられたことはない。なんとものんきな23歳であることよ。
コメント (17) |  トラックバック (1) | 

suica問題

2005-09-26 14:19:22 | Weblog
東京の某駅から自転車を抱えた数名が地方に輪行(ここでは自転車を分解して電車に持ち込んで移動すること)した。始発であったため窓口は開いておらず、目的地への切符は買うことが出来なかった。

数回乗り換えをはさみつつ各駅停車でのんびりと移動。最後の乗換から目的地まではワンマン電車であった。駅に改札が存在しないため、地方バスのように後ろから(整理券を取って)乗り、前から(精算して)出るという都内とは極めて異なるスタイルを取った電車である。

自転車を抱えた数名はA駅で降りようとした。精算を一人ずつ済ませようとする。二人は都内のある駅から130円の切符でここまできた。1人は450円、1人はsuicaに乗ってやってきた。なお、同じJRだったが乗った地点はJR東日本で降りた地点はJR東海である。suicaは当然使えず、証明書を発行するなどの処理をして、JR東日本の管轄内で再度処理をすることになる。

車掌(?)が都内からその駅までの料金を調べるのに1分、最初の3人の料金を精算するのに2分、suicaの処理は通常想定できるものではなかっために大いに手間取り10分かかった。不幸にも背後には特急がいた。追い越すための線路はない。特急に乗っている乗客の足に遅れが出る。suicaを使ってここまできた乗客は悪気もなく「いやぁ面白かった。JRもてんで駄目だね」と言った。

suicaは通常JR東日本内部でのみ使うべきものであるが、一方でJR東日本とJR東海は線路の上では繋がっているし、途中に精算はない。上記のような事態を想定して何らかのマニュアルを用意してはいるだろうが、その事態に常に速やかに対処出来るようにするにはマニュアル程度ではまるで足りないだろう。suicaが問題なのであれば、JR東海もそれを導入すれば良いかもしれない。だが上記の事態のためだけにやれるものでもない。やったとすれば運賃は一時的にしろ値上がりするかもしれない。そもそもそんな決定誰がするのか。

と、電車を降りた時に考えていた。
ちなみにフィクション。
コメント (0) |  トラックバック (0) | 

問題とその対処

2005-09-22 00:41:29 | Weblog
問題が起きた場合、人は大抵その原因を追求する。むしろ人はその原因、もしくは原因となった事象を引き起こした人物(加害者?)を探す。そしてそいつを叩いておしまいとする。これは「正しい」とみなされる。

一方で、問題が芽を吹くのには背後に何らかの土壌があることが多いが、その土壌に目を向けると言うことはあまりないし、その土壌汚染自体を指摘することが「正しい」と明確に認識されることも少ない。直接的解決手段と比較して1段は余分なジャンプが挟まっているので、人はその行為を「もっとも正しい」とみなさない。先に原因を叩け、それが先だと叫ぶ。そして先の次はない
(つまり、原因叩きのあとに土壌改善に向かわない)。

私は原因を追求して叩く行為そのものにあまり良い感情を抱かないようだ。叩く必要は感じるが、その必要性を最初に説く人間にうさん臭さを感じる体質になっているらしい。簡単に言えば「悪いから悪いんだ、死ね」というロジックに疑念を抱くようになったらしい。

このロジックを展開する人が土壌汚染をひきずっているのを目にすることがある。これは痛い。何故か。原因は常に他人である。だが原因の原因はそいつなのだ。ああおっそろしい。処罰すべき相手を減らすのではなく処罰する人を増やして処罰するのだ。ああおっそろしい。そしてその人はなんと常に「もっとも正しい」。一種のサイバーノーガード戦法と言えそうだ。
コメント (0) |  トラックバック (0) | 

人助けモデル

2005-09-17 02:43:56 | Weblog
ワインバーグの思想が非常に強力で、そしてなかなか達成できない一つの理由は、根底思想にある次のモデルがあるからのように思える。

どう見えようと、人は手を貸そうとしているものだ。

これは、実際にそうであるかどうかはともかくとしてそういう方向でものごとを考えよ、ということである。相手が辛辣なコメントをよこしてきた場合にも、ワインバーグ流の思考フィルタを通すと「自分に教訓を与えようとしてやっている」という良い部分だけが抽出され(というよりは拡大され)「自分を馬鹿にしようとしている」という面はスッパリ捨て去られる。実際そうする方が確かにうまくいくのだとワインバーグは主張する。私もそう思う。

しかしこれは通常、相当に苦難を要するものだ。自分を可能な限り罵倒し続ける人の言葉から、その言葉の感情的なトゲを抜き去れる人はそうはいないし、そもそも相手は抜きにくいようにトゲを混ぜているのだから、普通には抜き去れない。仮にトゲを抜き去れたとしても、そのあと、言葉の意味と相手の意図を汲んで良い方向に解釈出来る人となるともうほとんどいない。

人助けモデルにはもう一つの側面がある。ワインバーグは受け手がこのモデルを使うよう促しているが、実は送り手がこのモデルを使うことも出来る。

どう見えようと、私はあなたを助けようとしてやっているのだ。

このモデルを振り回せばどんな罵詈雑言も正当化出来るわけだ。いくらトゲを混ぜても、最後にこのモデルをぱっと振りかざせば、送り手は必ず正義に返り咲く。

受け手が人助けモデルを受け入れるのは難しく、送り手の中に人助けモデルを悪用する者がいる。
この二つの構図が混ざり合い、ワインバーグの期待する状況と正反対の荒野を生み出す。受け手は送り手が助けようとしていようがしていまいが、人助けモデルを悪用しようとしている「ふてぇ野郎」とみなし始める。正しかろうがなんだろうが、「ふてぇ野郎」であり、その時点で正しい間違っているの判断は「行われず」、排除される。最終的には、発言の誤りを訂正するような指摘レベルすら「ふてぇ野郎」の行動に解釈される。

つまり、外部から何かを指摘すれば、相当周到に準備されない限りその人は無条件で「人助けモデルを悪用しようとしているふてぇ野郎」と同列にみなされる。正しいことを言えば人が動くなどという希望はあっさり潰れる。正しいかどうかなど判断される前にその発言はシャットアウトだ。そもそも、普通の人は、発言が敵っぽかったら最初の4文字で弾く。中身の意味など見ない。

要するにレナ状態。

今の世の中、自分が正しいと思うことを人にやろうとするのなら、相当な準備が必要と言うことなのかもしれない。単に正しいからというだけでは駄目なのだろう。そして、周到な準備の末、努力は無駄になる。
コメント (0) |  トラックバック (0) | 

テスト

2005-09-09 01:22:18 | ソフトウェア関係
これはテスト
コメント (0) |  トラックバック (0) | 

これはテスト

2005-09-08 17:13:50 | Weblog
相変わらず自分用ブログ化の夢が捨てられないので、
また新しいブログツールを自宅サーバにインストール。

期待age のトラックバックだひゃっほーい
コメント (0) |  トラックバック (0) | 

冷蔵庫の中のチョコレート

2005-09-02 18:37:31 | Weblog
共用の冷蔵庫にチョコレート(ピースに分割されたもの)が置かれる。
「自由に食べて下さい」
と言われる。字義通り、自由にチョコレート全部を持っていった人が怒られる。
「なら『自由に』などと言うな」
という主張はしかし通る。チョコレートの食べ方について「全部は取ってはいけない」という規則が書かれた紙が、冷蔵庫のドアに貼られる。

今度は1つだけ残して他を持っていった人が現れ、チョコレートは1回につき1つと制限される。すると、体格でかい人がこう主張した。
「この小指大のチョコレートを1つだけというのは私としては納得いかない。せめて2つまでにしてほしいところだ」
また、体格の小さい人がこうも言った。
「このこぶし大のチョコレートを1つ持っていけと言うのか」
かくして、チョコレートを持っていく量について体重や身長に基づいた規則が冷蔵庫の扉に貼られる。この時点で社内会議が必要となり、健康コンサルタントが派遣される。

「隣の席の人にも持っていってあげたいのよ」
という主張が認められ、隣の席の人の分も持っていって良いという規則が追加される。隣の隣の人に持っていきたい人が現われ、今度はどの範囲までの人に持っていくことが許されるかについての規則が追加される。あるグループに持っていくという行動についての厳密な規則も追加される。この時点で弁護士がつく。

チョコレートを持っていって良いという話しか書いていなかったため、あるとき食べ切れずに残しておいたチョコレートを冷蔵庫に戻すと言う問題が発生した。冷蔵庫に戻すことが一度は禁止されるも、おすそわけによって余った分は戻しても良いのではないかと言う議論が始まる。食品安全性上何分であれば冷蔵庫に戻しても大丈夫かについての定性的な議論が行なわれ、冷蔵庫にはその結果の論文3辺(チョコレートの品質問題と、冷蔵庫の性能と、そのオフィスにいる細菌等の研究)が吊らされ、その論文を元にした「季節に応じたチョコレート差戻し基準」というマニュアルが冷蔵庫の扉に張り付けられる。この時点で上記3辺の論文に関係した研究家もつく。

ある日、標準的な人がチョコレートを3つ持っていこうとしたところをチョコレート監視委員会に捕まる。
「おいおまえ、チョコレート管理規則12390条には(以下略)」
その人は答えた
「チョコレートごときに何ドルの無駄を費やせば君らは気がすむのかね」

この社長の一言で冷蔵庫が撤去された。

この文章を書いている者曰く
「この文章を読むのに何分の無駄を費やしたのかな」

人々曰く
「いやいや、秒ですよ」

書いている者曰く
「幸せだな。コンサルタント料を支払わなくて良くなるだろうよ」

人々曰く
「こんな下らないものなど読むに値しません」

書いている人曰く
「幸せだな。とても良い仕事をしている気分になるだろうよ。少なくとも社長が来るまでは」
コメント (0) |  トラックバック (0) | 

感情面での力

2005-08-30 22:34:23 | Weblog
分野や場所場所によって比率は異なるが、人の意思決定に思考/感情(Thinking/Feeling)の二つの軸を見てとることが可能である。

2種類の真理がある。すなわち、道を照らす真理と心を暖かにする真理である。前者は科学であり、後者は芸術である。どちらも互いに独立ではなく、一方が他方より重要というわけでもない。芸術がなければ、科学は水道工事屋の手にある高級なピンセットのように役立たずであろう。科学がなければ、芸術は粗野な民衆の混乱と感情的ないんちき療法になってしまう。芸術の真理は科学が非人間的にならないようにし、科学の真理は芸術がいかさまにならないようにする。

『ワインバーグのシステム行動法』において(p103)、ワインバーグは上記のレイモンド・チャンドラーの表現を引用し、TとFの関係について考察した。TとFの二つは、両方とも必要でありながら、それらを単独で愛する思考家と感情家は、互いに互いの価値を低く見積もる。合州国における思考家と感情家の比率は初期には50:50だが、教育システムがTに偏っているため、必然的にTが多くなり、歪みが生じる。ワインバーグはこの現象から次のように説明する。

(合州国の)教育システムにおいては低学年では(多くの教師が感情家である)Fの価値観にずれ、高学年になるほどTの価値観に移行する。大学レベルでは大部分の教師は思考家である。組織においてはこの歪みは、感情家にかえって思わぬ優位性を与える。彼らはTの意思決定によって訓練されてきているので、思考家よりも平衡感覚をもっているからである。逆に思考家は、Fの意思決定によってそれほど訓練されていない。

日本でもあらかた同じ傾向であろうと思う。

理論一本で攻めてきた人間と、もともとアーティスティックな方向性で色々活動をして、その後(もしくはそれとともに)学業に従事する人を見比べると、バランス感覚や総合的な問題解決能力は確かに後者の方が上のように見える。また、これは話が違うかも知れないが、もともと頭でっかちな理論/マニュアルチックな事象ばかり詰めているような人間と、回りの人と馬鹿騒ぎをしたりした経験ののちに多少は管理について考えるようになった人間では、やはり後者の方が全体を良く見ている気がする。

上記の話は、私の中では真理というより命題として存在する。つまり確信をもって信じれるモデルではない。Tは理解する瀬もあるのだが、Fは私には理解できない部分が多いのだ。今日、デザイン関係の本をなんとなく立ち読みしていたのだが、Fの力と呼べるものを感じつつも、それがどう働いているのかについては、自分のどういう感性をもってしても理解できなかった。Fは存在しても認識出来ない。ゆえに存在しないと同一に見なす人が多い、ということだろうか。

それにそもそも、人の価値観はバランスを希求しているとも限らない。例えば純粋理論「だけ」を目指すのなら、感情の力に割くエネルギーの必要性を認識しつつも放棄することは可能だろうし、時には全く妥当であるだろう。もちろん、プレゼンテーションの何割かが感情の力であるということを考えれば、社会に生きる科学者は、大抵の場合は感情の力を幾分かは必要とするのだが。そういえば大学1年のころ、ある科学者出の先生が「真の研究者は多かれ少なかれ芸術を愛でるものだ」と言っていた。これと先ほどの話との関連も多少あるように思える……。

まぁ、学問系がTにシフトしているため、Tで全てと思う人が多いのは事実だ。Fが全てと言う人は単位取れないし、大学で見たことがない。
コメント (0) |  トラックバック (0) | 

わたしが管理とかワインバーグとかそういうのを学ぶ理由

2005-08-29 16:05:42 | Weblog
わたし自身が誰かに使われることを想定したときに、自分自身をもっとも効果的で、創造的で、安定した場所に置くその指針を学ぶ、これが一点。社会に出ているとはまだ言えないわたしから見てすら、他人を消耗させ、勝手気ままにヘボをやって企業や社会を落としめている人間は数多くいるように見えるし、その一部は、将来自分の上司になる可能性もある。ヘボの脅威に晒され得るときに、そういった人間によって自分が「運悪く」使い潰されるとか不利益こうむるとかいったケースだけはないように回避行動を取る。そんなこと(使い潰されること等)は実際にはあまりないという見積りもありつつ、わたしは高校時代からの自分観察から、他人に良いように利用される罠に非常にかかりやすい特性を自分がもっていることを十分に承知しているから、それに対する防御の対策である。

ヘボをやらかす人間の下で動くにしても、自分を効果的に生かし、少なくとも同じヘボに陥らないようにする、これが一点。影響を受けやすい人間が中途半端な恐怖政治に感化されるほど恐いものはないが、わたしにはその気配がある。これは自分のためとも言えるし、万が一にもわたしに関係することになる未来の知合いに対する防御策でもある。

最悪、自分の求めている文化が社会にないとすれば、それを作るだけのことだ、これが一点。ワインバーグの方法論は極めて困難で、ほとんど絵空事なのだけれども、方法論がうまく働いたときに何が起こるかについてのビジョンは十分に現実的なもののように思える。人に使われると言う方向に希望がなければ自分が考えるもっとも適切な方法で人を使う方がましだ、ということだ。

単純に、生活において自分の行動力を高める、が一点。これは成功とも失敗とも言え、単に行動指針が変わっただけなのではないかという危惧もある。あるいは本質的には全く変わっていない、という意見もある。

単に気分の問題も、もちろんある。その背後には感情的な理由が隠れているのも否定できないだろう。おそらくそれは別の機会に述べる、あるいは述べたいくつかの体験やそれに対する感想に伴う部分であるが、そちらまでは今回は考慮していない。
コメント (0) |  トラックバック (0) | 

負け犬戦法

2005-08-29 11:31:22 | Weblog
まず最初に負けを認める。すると、世の中の一般原理によって、その人は弱者の側に立つことを許される。というよりも少なくとも弱者として語ることを許される。

弱者は「我々は利用者なのだから〜〜を使う権利がある『べき』だ」と主張する。ここで重要なのは、「べき」という部分だ。そんなことが規約上ありえないとしても、人々は「べき」という言葉を使う。そして、その主張が誤っていることをこちらがきっちり説明しようとすると次はこう来る。「いやいや我々負け犬がそんなことを言ったって理解できるわけないでしょ。いいからやれ」

不思議なことに、「負け犬ですよ」と言った人間がときとしてもっとも強い格付けを得るのだ。例えば、掲示板上で「初心者」と言えば誰でも何でも教えてくれると思っている人はいまだに少なくない。特に管理者が個人規模でやっている小〜中規模の掲示板ではこういう問題はいつでも起き得る。色々と説明して「ここで聞くのは間違いですよ」と諭そうとすれば上の負け犬戦法が炸裂する。「初心者にそんなことを言っても意味ないですよ。いいから教えなさい」

上のようなトラブルに見舞われた人は「連中、そもそもこちらの話を聞いていない」と嘆くことが多い。確かに聞いていないのだが、彼らからするとそれは極めて正しい行動なのだ。説明は「負け犬だから」で通る。すでに負けた奴を攻撃してどうするよ、ということだ。試合終了後はそっとしておいてやれ。

これは理由としては全く論理的ではないが、日本の慣習上極めて強力な説明にはなる。何せ大方の人は論理的であることより感情的な別の何かを選ぶのだ。論理的である必要がどこにあるのか?多くの人が正しいと思ってしまえば大方の人はそれに流れる。民主主義とでも言うのか。

上の話だけなら「負け犬ならごちゃごちゃ言わずにとっとと家に帰って寝ろ」という主張が通りそうなものだが、ここでもうひとつ余計なものがある。特に日本の文化は「弱い者には弱い者相応の権利しかない」という考えを受け入れない傾向が強い。つまり、弱かろうが強かろうがおなじ権利を持つという妙な価値観があるように思えるのだ。特に提供者から見た場合の弱者側の利用者にその意識が強い。社会主義的というのだろうか。

さきほどの話と総合すれば、負け犬は負けているので攻撃を食らわず、
しかもなんでもかんでも主張する権利は持っていることになる。
負け犬戦法とは、負けたことを主張することで後はなんでもありという
戦い方のことを言う。

上記の話の反対側の極端には「金を払わなければ何もさせない」といった方向性がある。これはこれでまずいこともある。金のある人間は金のない人間をコントロールできるようになるから、一度天秤が傾けば戻ってくることがなくなる。だから、上の方向性を全く否定して逆方向に走るのも危険であることは間違いがない。しかし、正反対が最悪だからこちらがよいということにはまるでならないのも事実だ。今の状況だって見方によれば最悪だし、しかも論理的に負けているのはこちら側の極端である。一応理系の私がそんな状態を望むわきゃない。

と、そこら中でやられていそうな話を書いてみた。「負け犬戦法」なんて名前じゃなくて、もっと一般的な名称がありそうなもんだけどな。

「負け犬戦法」の回避方法として、私は極めて限定的だが次の方法を使うことが多い。まず勝ち負けに類する格付けを一切排除する環境を作る。これは例えばこんな感じだ:「ここにいる人はよく訓練された負け犬です。訓練されていない負け犬さんはさよならです」。意味不明と思うかも知れないが、これは理屈としては強い。相手が「負け犬」戦法を使うのだから「そのレイヤーでは我々も負け犬ですよ」とまず主張する。すると、相手の優位性を潰せる。そして「我々はあなたより(別の方向性では)強い負け犬なのです」と言う。論理的にはおかしくて、正しく解釈すればこれは意味のない言明なのだが、負け犬戦法を使う人がそれに気づけたとすると、そもそも自分の主張がおかしいことにも気づけるくらいの頭があると言うことになる。つまり意図的に悪意をもって負け犬戦法を使っている人のみ、上の謎な言明の正体に気づくのだ。そこを相手がついてきたとすれば、こちらはこう返せばよい。「おお、そこまで分かってるのなら弱い僕らをいじめるのはやめてとっとと帰りなさい」。「逆負け犬戦法」とでも呼ぼうか。

「ボランティアとして組織された集団には『負け犬戦法』が効きにくい」という法則を私は信じている。「逆負け犬戦法」はそれを抽出しようとした試みのひとつである。

と言いつつ、多分「逆負け犬戦法」にも別の名前がある気がするのだよな。
コメント (1) |  トラックバック (0) |