Sunday, September 27, 2015

兎のエゴンと私: 避難民について

I: ここのところ戦争による避難民がやってきている.

Egon: また人間は度し難いという話かな.君達はうさぎのように生きるべきだ.または賢いイルカのように生きればいい.

I: もちろん原因を考えると度し難い.もともとの原因を作った人間達は遠くで知らんぷりだ.今日はしかし私とのかかわりを考えた.

Egon: 君が避難民に何かできるのか.

I: この国にとって避難民は大きなチャンスであり,また大きな危険でもある.この国は高齢化が進み,人口は減少している.80 万人の避難民がもしこの国の力となるのなら,これほどのチャンスはない.彼らが産業界の労働力となり,知識の拡大に貢献し,税金,年金,医療保険を払うことができたらどれほどの利益となるか.しかし一方,負担になれば大変だ.

Egon: 人間は愚かだから必ずへまをする.へまをするとわかっていてもへまをする.

I: 私は思ったんだ.これは子どもの教育に似ている.子どもの教育はとてつもない可能性だ.しかし,それを愛を持って行なわなければひどいことになる.私は子ども達に週に2時間算数を教えて,実は癒やされている.友達の子どもの世話をするのも実は楽しい.まあ,それは月に何日かだけだからかもしれないが.

Egon: そして,うさぎと会話をするようになった.大丈夫かね.君に算数を教わっているという子ども達が心配だ.

I: 実は私はこの国の人達が好きなんだ.もしかしたら国はどうでもよくて,多分人間一般が.

Egon: それはなかなか人間としては変わっているようだね.

I: 私は避難民の子ども達に算数を教えてみたい.もし需要があるのなら,私のドイツ語や英語でよければ教えてみたい.彼らの考えを学んでみたい.

Egon: それが君のアイデアか.どれだけのことができそうかね.こういうことはあんまり無理をして続かなければ仕方ない.

I: 1週間に2時間程度かな.

Egon: ふーん.大きなことを言うわりにはそんなものか.

I: それなら今までも続けてこれたし,これからもできるだろう.

Egon: ...

I: 大きなチャンスというのは,大きな失敗にもなる.子どもの教育にはもっと時間がある.でも,多分2年後にこの国の人達が外国人を嫌う傾向になるか,それともその逆か.多分今が重要な時だ.

Egon: 上手くいくと思うかね.

I: さて,どうかな.私の友人は排他主義者ではないが,政府は失敗すると思っている.

Egon: 君の友人が排他主義者なら,そもそも友人になれないだろう.逃げる準備をしておく気かね.

I: 政府が失敗するなら民間で成功すればいいと思う.この国に住む人達の中には私を攻撃する人もいたが,受け入れてくれた人が沢山いた.私はパートタイムで戦うことになるだろう.

Egon: 戦い.

I: 無理解と非寛容に対して,私は週に2時間のパートタイムの徒手空拳で戦うのさ.これらと軍事力と戦って勝利した者はいない.私のパートタイムの方が可能性はあるだろう.

Egon: 軍事力で勝利することもできるさ.人間には全ての人間を滅ぼせる力がある.無理解と非寛容なのは,人間だけだ.論理的に考えてみればいい.全ての人間がいなくなれば,問題は全て解決できる.

I: 私のような変わり者がいなくなれば,それもやがて現実になるだろうから,それが起こるまでは考えないことにするよ.

Egon: それで,何からはじめるのかな.

I: これさ.君との会話.

Egon: ...

この会話を読んだ人で,私が Berlin でできることをご存知の方.コメントを頂ければ嬉しいです.

兎のエゴンと私: 不便な頭脳

「もし1ヶ月が1学年だったら,私はもう25年生だよ」とその8歳の子は私に言った.「そうだね.1ヶ月が4週間としたら,そして1週間が1学年だったら,君は何年生?」 と私は尋ねた.でも,もう彼女はこの考えに興味を失なったみたいだった.

I: Egon 君は誰かを愛しているのかい?

Egon: 愛? それはどういう意味かな?

I: ... 説明は難しい.もし私が誰かを愛しているとしたら,私はその人を大事に思う.その人が大丈夫であることを願う.その人が幸せであることを願う.

Egon: それが愛ということなら,私は全てを愛しているね.

I: 私はある人を愛している.でも全ての人ではない.

Egon: どうして?

I: さて,どうしてか...もし私がある女性を愛していたら,私は彼女と一緒にいたい.でも全ての女性と一緒にいたいわけではない.

Egon: 君は誰かを愛している.どうしてその人と一緒にいたいのか?

I: なぜかはわからないが,もし私が誰かを愛していたら,その人と一緒にいたいと思う.

Egon: まあ,良い話だね.

I: どうなんだろう.実際は,私が好きな人は私のことが嫌いだったりする.何人かの女性が私に語ってくれたところでは,好きでもないのに好かれるのは気分の悪いものだそうだ.そして私はこれまで 2 人の女性に私に面と向かって気分が悪いと言われたことがある.

Egon の片方の耳は私の方を向いて聞いていたようだが,もう一方の耳は他を向 いていた.私との会話に飽きてきたのだろう.

I: こういう話がある.話の中ではある男はある女性に毎日花を贈っていた.彼は毎日彼女と少しの時間を過ごすのが楽しかった.でも,その女性はある病気でもう多分長くない.ある日,灰色の男がやってきて,男は彼に話をする.彼がいかに時間を無駄にしているのかを説明する.

Egon: ...

I: 私は彼が時間を無駄にしているとは思わないんだ.

Egon: 何かが無駄かどうかは個人の認識による.

I: 灰色の男は他の女性をみつける方が良いという.いつか彼は彼女を失なう.それは彼にとって苦しみとなるだろうと言う.

Egon: いつでも人は何かを失う可能性がある.長生きが良いとは限らない.

涼しい風が吹いた.太陽が優しく私を照らした.Egon は葉を食べていた.

I: 君は幸せなのかい, Egon?

Egon: 君の質問の意図がわからない.どうしてそう尋ねるのかね.

I: 私は幸せは重要なものだと思っていた.でも,今はどうなのかわからなくなった.幸せについて考えることで,私は不幸になっている気がする.

Egon: でも,考えを止めることができない.そうだろう?

I: できない.

Egon: 君もかつては 8 歳の子どもだったことがあるだろう.あの子は時々君が悲しそうだとと言っていた.

I: 私は自分が悲しそうかどうかわからない.でも,私は彼女の直感を尊重したほうがいいと思う.

Egon: 君は自分の心が何を言っているのか聞こえるようだ.でも,それに従うことはまた別のようだ.君の頭脳は不便なようだ.君は考えることができる.君は感じることができる.そしてそれが君を悲しくする.

不便な頭脳.多くができることは少なくしかできないことと同じ.私はより深く考えることができるのに,それが,私を悲しくする.私はより喜びを感じることができることで,それは同時に痛みを多く感じることにもなる.灰色の男はいわゆる「理性的な考え」ということも代表している.バーナード・ショーが理性的な人間について何か言っていた...

ところで,私の最初の問いの答えは 100 年生だ.私はたくさんのくだらない答えを知っているのに,1つも重要な答えを知らない,と君は言うだろうね,エゴン.

謝辞

学年というのは単なる数字にすぎないかもしれないことを教えてくれた I.M.R. に感謝します.

Saturday, September 26, 2015

兎のエゴンと私: 見えない惑星を発見することの不思議さについて (3)

(前回からの続き)

I: 檻の話はどうやらまだまだ続くのかもしれない.でも,それはもっと考えてみたい.そして,最初の天体の話が途中だった.不思議が素敵に変わっていくという話も.

Egon: ...

I: 天体がどう動くのかというのは物が落ちるということと同じということを発見した人がいた.その人の考えにしたがって,ある惑星がどう動くかを計算したら,どの惑星もその通りに動くことがわかった.望遠鏡がないと見えない小惑星というものが新しくみつかって,それも同じ法則に従っていることがわかった.つまり,この太陽系の中をそうやって見ていくと,物は落ちるということが,同じ規則で起っていることが繰り返し繰り返し観測されてきた.

Egon: 君の,いや,人間の世界が太陽系の中に広がっていったと.その中の規則がわかり,望遠鏡で見ると例外がみつからない.

I: いや,例外があったのさ.少し動きが怪しい惑星があったんだ.そこで2つの考えがでてきた.1つは私達の観測してきた他に何かの規則があること.たとえば,万有引力が働かない世界,物が落ちない星がある.つまり,私達の知っている世界の規則が不完全だという考えが1つ.

Egon: ...

I: そして.もう1つは,ある場所にまだみつかっていない惑星があれば,その動きが例外でなくなるというものだ.つまり私達の知る世界の規則は同じだが,単に知らない惑星があるという考えだ.

Egon: その時に君は地球上でない遠くでも物が落ちる規則は同じことを信じて,そこに惑星があると思うわけか.そして惑星が思っているように動いている時には,他には惑星はないと思うわけか.

I: その通り,だから私は惑星がそこに見つかったことを不思議に思わないんだと思う.もし惑星が計算した通りの場所にないとなると,そこには万有引力が働かない,つまり,「物が落ちない」ことが宇宙で起こっていることになる.物が落ちない?  その方が私には信じられない.つまり,見えない惑星が見つからないことの方が私には大問題なのさ.そして見えない惑星がそれでみつかることは,私達が世界の一部が理解できているということをサポートすることだ.私はまだ一貫して世界を持っている.それはさらなる理解の土台となる.それが素敵だと思う.

Egon: 重力の起源はわかっていないのだろう.君が知っているのはそれがどういうふうにふるまうかだけで,なぜかは知らない.君の友人は,もしかしたら,物は落ちない星があってもいいという考えかもしれない.他の原理があって,物が落ちるというのは単なるその原理の一面なのかもしれない.そうでないことが不思議かい? 羽がなくても自由に空の飛べる星なんて素敵じゃないか.最初はあたり前と言ったが,君が見ていること,物は落ちる,ということが宇宙のどこかでは間違っていることだってあるという考えも悪くないと思うね.

I: それには反論できない.わかっているのは法則だけ.コンピュータのプログラムの間違いを直す時,このボタンを押せばクラッシュすることはわかっているけれども,何が間違っているのかがわからないのと似ている.「ボタンを押すとクラッシュするの法則」を知っているだけで,なぜクラッシュするのかはわかっていないようなものだ.だから君が正しい可能性も否定できない.ただ,宇宙をいろいろと見て物理学者達は「宇宙では物は落ちる」と信じることにしたのさ.そして私もそれを信じている.質量保存の法則や,エネルギー保存の法則,慣性の法則とかも似たようなものだ.どうしてそうなるかをわかっている人は多分いない.でも,法則はいつも正しいようなので,もう不思議に思わなくなってしまった.物理学者達は法則の修正をしたりはしたが,法則が根本的に間違いというのはなかなか信じられない.そういう可能性はあるとしても.

Egon: 君の友人がもしそれを不思議に思うとしたら,天才かもしれない.

I: ところで,私にある先生がなぜ物が落ちるのか? と問題を出したことがある.「わかりません」,と答えたら,「重力の法則があるから」が答えだったので,この先生は重力の法則を理解していないことを知ったことがある.

Egon: 名前をつければわかった気になるものさ.君だった私をはじめて見た時,「あれは何?」「うさぎの Egonだよ」「へー,そうなんだ」と言っただろう.私の何に納得したのかい? 私の何を知ったのかい?

I: 名前があると知っただけさ.もちろん君について何もわかっていないことは気がついているよ.生まれた場所から離れて暮らすと,「どこの国から来たの?」と聞かれることは多い.国の名前を答えて,そこから会話が弾むのならともかく,それで私を全て理解したような人もいるのは知っている.君がうさぎと知ったことで私が君の個性を理解したわけじゃあない.

Egon: それはどうも.

I: ... でも,保存則もそうだが,あまりにも不思議ではなくなってしまっている.私にとって,もし,何かがなくなった,ということは誰かが取ったということだ.私の家にクッキーがあって,友人が遊びに来て帰ったらそれがなくなっていたとする.そして私はクッキーを食べていないとしたら?

Egon: 君はクッキーが突然歩いて逃げたとは考えない.友達が食べたと思うわけだ.

I: その通り,私の家の中のクッキーの量は保存する.私はクッキーの保存法則を信じている.誰かが食べない限り,クッキーはそこに存在する.なくなったということは,取った人がいるということだ.見えている惑星が少しおかしく動くのは,そこに見えない惑星があるに違いないと思うのと同じように,私はクッキーがなくなれば,誰かが取ったと信じる.つまり見えないことが,何かあったことの証明になると思っている.

Egon: あるいは君が年をとって,自分で食べたことを忘れるということもあるかもしれない.物は落ちる.もしかしたらクッキーも落ちて机の下にあるかもしれない.

I: その場合でも私が忘れているだけで,私がクッキーを食べてなくしてしまわない限り,クッキーは保存されるはずさだ.そして,机の下はまだ私の部屋の中だ.私の部屋の中のクッキーの保存則はまだ正しい.これは実は, Feymann の「腕白デニス」の話と同じことでね.この話というのは,...

Egon: そう信じることは,また自分の世界に留まることのようにも思えるが.

I: 信じるだけでは自分の世界に留まることになる.でも,その信じたことで世界を見て,自分で考えることで,少し違うかもしれない.何も考えないことが世界に留まることなのだと思う.

Egon: ...

I: 保存則がみあたらない場合がみつかった時,私達は世界の端に到達したことを知るのさ.クッキーが家の中になくなった.どこにも落ちていない.友達は来たが,彼らは食べていないし,取ってもいない.その時,たとえば部屋の温度が少し上がっているとか,部屋の二酸化炭素が増えているとかいうことがもしわかったら,友達がクッキーを燃やしたというようなことがわかるのさ.燃やしてしまってもクッキーは空気中に二酸化炭素として存在している.燃やしたがために少し部屋の温度が上昇した.つまりクッキーは,燃やされてもなくなったのではなく,他の形で保存される.そして保存されるのは実はクッキーではなく,原子というものだということがわかってくるのさ.そうやって科学は進歩してきた.つまり,世界を広げるためには,信じたことと違うことがみつかることが重要なんだ.新しい不思議がそこには必要だと思う.それが科学の素敵な点でもあると思う.

Egon: そして君はまだクッキーの保存則は世界のどの家でも同じだと信じている.信じている点では宗教と同じようだな.

I: 私は科学は一種の宗教だと思う.「人間は宇宙の一部を正しく理解できる」と信じるのが教義だ.ただし,人間が何を言ったかということは関係なく,機械に観測できる形で事実を再現できないといけない,そして常に新しいことを考え続けるということも必要だ.こういう条件があるのが多くの宗教と少し違うことかもしれない.

この後 Egon は私との会話に興味を失なったようだ.私は Feymann の「腕白デニス」の話を説明したが,彼は何も言わずに人参の葉を食べていた.

謝辞


最初の疑問を下さった H.H. に感謝します.不思議について昼休みに私と議論して下さった友人達に感謝します.いつも私自身を考えなおさせてくれる私の小さな生徒であり先生である子達に感謝します.この話をいつも私に inspiration を与えてくれる R.M. に捧げます

Thursday, September 24, 2015

兎のエゴンと私: 見えない惑星を発見することの不思議さについて (2)

(前回からの続き)

I: 私が遠くの星を物理の法則から見つけるのが不思議ではないと感じる理由で,思いあたることがある.これは少し私の世界が広くなったことだからだと思う.でも,それが十分広いと思っているわけではないんだ.私が傲慢になって,世界がわかった気になって,不思議に思わなくなったということではないと自分で願う.私は世界の一部を学んだことで,不思議なことのいくつかが素敵なことへと変化したんだ.不思議は知識になった.

Egon: ...

I: それにほとんど全ての知識は私の努力で得られたものではない.私は知識を学んだ.それをただ覚えたのではなく,理解したと思いたい.

Egon: ...

I: あまり正確な言い方ではないけれども重力の法則というのは「物は落ちる」ということだ.人間は何千年か地球や宇宙を見てきて,「物は落ちる」ということが宇宙のいろんなところで起こっていることを調べたんだ.

Egon: 人類としての長い時間と努力を経た知識の蓄積がある.

I: どうして落ちるのかは実はわかっていない.私にはよくわからないが,最近ヒッグス・ボゾンに関しての進展があったので,少し重力についての知識は前進したらしい.それでも重力の起源が理解されたとは聞いていない.しかし,いつでも物を投げるとそれは落ちる.石を上に投げると落ちる.ボールを上に投げると落ちる.私がジャンプすると落ちる.君が跳ねても落ちる.

Egon: どんなうさぎでも,いつまでも空には留まれない.うさぎにもそういう言い回しがあったかもしれない.

I: あたりまえと思うかもしれないが,「あたりまえ」とは私や君が「感じる」ことであり,多くは身近な事実だと思う.身近な事実が世界で通用しないこともある.「私の世界ではいつもそうだった.」というのがあたりまえということなのだろう.しかそそれは他でもそうだということではない.この地球上では物はいつも落ちるかもしれないが,それが宇宙の彼方でも同じだとどうしてわかるのか.1000光年向こうでも重力の法則は同じだとどうしてわかるのか.月に行くだけで物の重さは変わるのに.反重力のある星がないとは言えるのか.(とは言っても重力の法則は地球と月では実は同じだが)

Egon: 地上であたりまえのことでも,確かに宇宙普遍の法則ではないかもしれない.

I: あたりまえと思うのは,私の世界でいつも落ちることを見ているからなのだろう.だから落ちないものがあれば不思議に思う.例外に見えること,鳥が飛ぶとかも,熱気球が浮くとかも,実はよく考えてみると,例外ではないことがわかる.熱気球は熱を失なえば落ちる.鳥もいつまでも浮いてはいられない....つまり,いつも物は落ちる.そして物理学ではそれがどんなことかを記述する.「なぜか」ではないが,「どんなものか」を記述する.2つの物体の間にどんな力が働くのかわかる.それはそれぞれの質量に比例し,距離の2乗に逆比例し,ある定数に比例する.

Egon: 何か細かい話になってきた.

I: まったく同じことだが,F = GMm/(r^2) とも書ける.こうすると,日本語とか英語とかによらないし,自然言語のあいまいさがないので,便利だと思う.でも,さっきのややこしいことを,違う言語で書いたにすぎない.英語で書こうが,ドイツ語で書こうが,数学で書こうが,結局,物は落ちるというだけのことさ.

Egon: ...

I: あたりまえというのはある意味心地良いことだ.でもそこに留まっていると自分の世界は広がらない.そしてそういうところに留まることもできる.しかし,世界がやがて私達をつかまえる.その変化していく世界でも生きていくために,私は自分の世界もバージョンアップして少しでも広げていきたいと思う.それが学ぶということだと思う.私の場合,技術者だから新しくなっていく技術についていかないと,やがて技術屋としては生きていけなくなる.それはある意味,心地良いと思う世界から出て行き,広い世界に移動することだ.でもそのためには葛藤を経なくてはいけない.不思議で理解できない世界に入り,理解をしようとする努力が必要になる.めんどうなことだ.

Egon: 君が自分の作った檻に我慢できなくなって,もっと大きな檻が欲しくなった時,その檻を壊さなくてはならない.でも檻の中というのはある意味安全だ.壊しても大きな檻は今の檻よりも住み心地は良くないかもしれない.

I: でも私の古い檻はいつか住めなくなる.私が檻をいつも壊して広げ,新しくしていくか,それとも破局になってから泥縄で対処するか.私はできればいつも新しくしていきたい.破局は早めに対処すると避けることができることが多い.他の破局から学びたい.

Egon: それはしかし勇気のいることかもしれない.外の世界は嫌なものとして嫌って近付かないという選択肢もあるかもしれない.いつまでも母親の後ろに隠れる子どもでいられたらいいと願うこともできる.「檻を開けないで,放っておいてくれ.それが私のあたりまえの世界だから.世界の変化よ止まれ」という生き方もあるだろう.

I: そういう考えもある.ただ,そういう生き物は生き伸びる可能性が低い.滅ぶことが別に問題ではないのなら,そういう生き方も問題ではないが,生き伸びるということが重要なことであれば外に興味を持つことは重要だ.

Egon: 檻に守られていても?

I: どんな檻も完全ではない.いつかは壊れる.だから,一ヶ所に留まって外の世界に興味を持たない生物というのは,その地域の災害,あるいは特定の病気の蔓延などで全滅する可能性がある.しかし,もしある生物が外へと広がるのなら,自然災害から逃れて生きのびるものもあるだろう.単にリスクマネジメントの問題だ.全財産を一ヶ所に賭ければ,一度で全てを失う可能性がある.子どもがいろいろなことに興味を持つのは,様々な世界に対応するためだと思う.檻を壊して世界に広がり,それぞれの場所に苦労して適応する生物は,よりリスクが分散され生きのびる可能性が高い.外の世界に興味を持ち,様々な考えを知ることは,生きのびるための知恵だと思う.それは投資のようなものであり,もちろん失敗も危険もあるだろうが,まったく投資しなければ成功もない.それに子ども達の存在がある.まったく新しいことをしないようにするためには,まったく新しい個体である子は害となる.しかし,子の存在を否定して未来はないと私は思う.

Egon: 全滅しても檻が良いという生命もあるだろう.未来がないことを悪いと思わない考えもある.あるいは,家畜として生き伸びるのも1つの方法だ.

I: 未来のない世界,家畜として生き伸びる.どちらもあまり興味をそそる考えとは思えないが...

Egon: そうかね.自由と命とひきかえに1ヶ月の食事と寝る場所を求める人は多いそうじゃないか.

I: ...

Egon: 君は以前,人間と動物の違いは未来を見て計画をつくれるかどうかと言っていたが,うさぎの世界の未来と,人間の世界の未来とどちらがまともな世界だと思うかね?

I: ...「蜂が滅びれば地上の生命は滅亡するが,人類が滅亡すれば,他の全ての生命は栄える.」...

Egon: ...

話が少し違う方向にいってしまった.私は新しいことを不思議と思うこと,それを自分の世界という檻を広げることと考えた.そこに落ちついてしまう時,私は自分の可能性を否定し,精神的な死となると思う.でも,そこから出ることは簡単ではない.時には自分と少しでも違う人達を排除して,自分の世界に留まるのも楽だと思う.新しい考えを学ぶということは難しいことだ.そして新しい考えはまったく知らない人達から来ることも多い.知っている人達は似たような考えをするからだ.問題は時間が止まっておらず,今でも新しい人々が生まれているということだ.世界は動いている.古い世界はやがて去る,それと一緒に去るのか,あるいは新しい世界を切り開くのか.今のシステムが害となることがはっきりした時でも,そのシステムにしがみついて滅びの道を歩むのか,それとも新しいシステムをまったく新しい考えを持つ人々と苦労をしてでも作っていくのか.私は Egon の隣に座って考えていた.

(次回へ続く)

Wednesday, September 23, 2015

兎のエゴンと私: 見えない惑星を発見することの不思議さについて (1)

Egon を見ているとなぜか心が休まる.そこにいて人参の葉を食べているだけなのだが,ついつい話しかけてしまう.本当は自分で自分と話をしているのだろうとは思うのだが,会話をしている気になるのだ.

I: 先日,友人にこう尋ねられた,「数学や物理学で見えない惑星を発見することは不思議ですね.魔法みたい.」と.

Egon: ...

I: 私には特に不思議でなかった.惑星が発見できることはとても素敵なことだと思うけれども,魔法ではない.

Egon: ...

Egon は興味のないことには答えない.今回も会話は無理かなと思ったが,そうではなかったようだ.

Egon: 不思議に思うこと.それは素敵だと思うな.

I: うーん,そうかな.重力の法則があって,それがあると思っていれば,惑星を発見できることは素敵だとは思うけれども,それ自体は不思議でも魔法でもない.

Egon: いやいや,不思議に思うことの素敵さのことさ.君も昔はいろいろなことが不思議だっただろう?

I: ...

Egon: 不思議に思う心をなくしてしまったとしたら,ちょっと考えたほうがいいんじゃないか.どうして昔は不思議なことがたくさんあったかということを.

I: どうして昔は不思議に思うことが沢山あったのか...今でも不思議に思うことはあるさ.昔と違うだけだと思う.

Egon: 本当にそうかな.不思議に思うということは,自分の世界にないものだからじゃないかな.

I: そして今私の世界は広がった.だから不思議に思うことは少なくなった?

Egon: それはどうかな.世界,あるいは宇宙はとても広い.君の世界がどこまで広いかわからないが,世界の半分まで広がったわけでもあるまい?

I: ...

Egon: 私はうさぎだからうさぎのことを何でもわかっている.と言ったらどう思う?

I: いや,君にも知らないうさぎのことがあると思うね.

Egon: 昨日くれたマッシュルーム,始めて食べたがとてもうまかった.新しい発見だったよ.世界にはいろんな食べ物があるのだろう.

I: すると,毎日が不思議に感じなくなったのは,私が自分の世界に満足して外を見なくなったから?

Egon: 君の友人は君みたいに科学や数学を職業にしている人ではないのだろう? そして子どもでもないのだろう.

I: そうだね.

Egon: その友人が「数学や物理学で見えない惑星を発見することは不思議ですね.魔法みたい.」と言った.素敵だと思うね.

I: 自分の世界を広げようとしない人は何も不思議にも思わない.私は自分の世界に満足して他の世界を見ることを忘れてしまった.ということかな.

Egon: そうかもしれない.

I: すると何を不思議に思うか.ちょっと考えてみることにするよ.

Egon: いい考えかもしれない.

Egon を見ていて,不思議に思った時のことを思い出そうとした.いろんなことが不思議で,周りにある知識が楽しかったことのことを思い出す.家には百科事典があった.あれは面白かった.世界の様々な気候とか,地球の中を図示したものもあった.地震がどうして起こるのか,プレートテクトニクスの説明,火山の分布がプレートの周りにあることを説明した図があった.どうやって地球の中の様子を調べるのかの方法が説明されていた.今思うと,私の両親は,たとえ内容をわからないまでも,いくつかの指標を私に与えてくれていたんだと思う.

それから私と Egon はしばらく無言だった.私は考えをめぐらしていたが,Egonが無言だったのは話すことがなかったからだろう.私は自分がいろんなことを知ったことで,傲慢になって不思議さがなくなったかどうかを考えた.そういう部分もあるかもしれない.でも,多分そうではない部分がある.不思議さは理解によって克服され,ほんの少しあたりまえの世界が広がる.しかしその先にはさらに不思議な世界が広がる.自分の中の世界を広げる.それが学ぶということなのだろうと思う.だから不思議さは素敵さとなる.それを Egon に説明しようと,私は口を開いた.

(次回へ続く)

Thursday, September 10, 2015

カバー・ザ・バッド 2015

本日ご紹介する製品は「カバー・ザ・バッド 2015(モデル:黒)」です.

Covert the bad 2015 (model: black)

単なるガムテームのように見えるかと思いますが,しかし,これの利用方法はあなたの生活を向上させるものです.たとえば次の画像をご覧下さい.

Bad example

あなたを嫌い,害を与えようとするこのようなステッカーを目にすることは,あなたの精神衛生上良くありません.税金と年金を毎月払っているあなたに,このような言葉を返してこられれば,ショックでしょう.

そこで「カバー・ザ・バッド 2015(モデル:黒)」の登場です.このようなステッカーに反対するという意思を込めて,抗議の「カバー」です.その結果はこのようになります.

Example of usage of cover the bad

いかがでしょうか.あなたのポケットに1つ「カバー・ザ・バッド」,ファッショナブルなあなたには,モデル赤,オレンジ,イエロー,グレイ,など各種をとりそろえております.

Thursday, August 27, 2015

兎のエゴンと私

経済の本を読んでいた時,なんとはなしに隣にいた兎に「あなたには声があるの?」と尋ねた.「人々の生産性は上がっている.世界の人口はあまり増えなくなっている.どうしてそれでもこんなに問題があるのだろう?」

兎は私を見ていた.兎の名前はエゴン(Egon).今日はスティグが学校に上がる最初の日だ.「なぜなのか知らないの?」エゴンが言った.または私の一部がエゴンが言っているように答えたのか.「わからない.結局『人間は愚かだ』と言うことはできるけれども,それはあまり助けにならない答えだ.たとえそれが真実だとしても.」今度はエゴンは無言だった.だから私は幻聴でも聞いたのだろうと思った.
Egon

ふとエゴンの檻を見て聞いてみた「あなたの檻は小さすぎないかい?」.

Egon: 「小さいね.もっと大きいのがいいね.君のはどうだい?」

私: 「私の檻? 檻なんかないけど」

Egon: 「自分の檻も見えないのかい? 君は自分で作って自分でその中に入ったのだろう.私の知っている限り,動物の中でそんなことをするのは人間だけだけれどもね.」

私: 「刑務所のことかな.自分で入りたいという人は普通はいないと思うけど」

Egon: 「いやいや,君らが街とか読んでいる檻だよ」

私: 「... 街がどうしたら檻なんだい?」

Egon: 「君らが街を作る前には,誰でもどこに座っても文句はなかった.今は街の中では座れる所も寝られる所も決められている.自分の巣も持てない人もいる.街の中のほとんどは自由に立つこともできない.目に見えないかもしれないが,檻があるのとどこが違うのかい?」

私: 「... ふーん.なるほどね.街をそう考えたことはなかったかな.」

Egon: 「別に物理的なものじゃなくてもそうだ.資本主義とかなんとかというものを作って,自分達でその中に入っている.それがもしかしたら危険かもしれないし,突然崩壊するかもしれないと知っていても,君らはその中で暮らしている.そういうあぶない所からでも外に出たくなかったりしないのかい.」

私: 「...」
Egon and me

エゴンはここで話すのを止めた.檻の中にいたのは実は私の方なのかも,とこの奇妙なアイデアについてもう少し考えてみた.いやいや,実は1つの檻ではなくて,何重もの檻の中にいるようだ.街だけじゃない.政治形態,エネルギー網,私の使える言葉,...これらは皆よりよい人生のためかと思っていた.しかしエゴンの考え方ではこれらは皆ある種の限界,檻,でもある.なるほどね.人間は地球で3番目に賢い生き物だと思っていたが,実は兎の次としたら,少なくとも4番目以降というわけか.

Egon: 「君らは単純な命を大事にしすぎる.もう少しバランスを持ったらいいかもね」

私: 「命を大事にしすぎる.国,軍,政党,経済システム,エネルギーシステム,などなどは私達の命を守るために作ったはずなのに,今やそれらが私達を破滅させようとしているようだ.これが私達の問題というのかな?」

Egon: 「多分そうかも,そうじゃないかも」

太陽が沈みかけてきた.スティグがエゴンを寝ぐらの檻に移しかえる.「エゴン,君には声はあるのかな.私が聞けるような声が?」もう一度聞いてみた.「それは重要なことなのかな.君らは些細なことにこだわりすぎていないかい」エゴンは答えた.

彼は檻の中で野菜を食べるのに忙しい.(これもまた,彼の言う檻なのだろうか.私は耳に聞こえる声でないと声と考えないのだろうか? これはそもそも重要なのか?) 家に帰る前にエゴンを一瞥した時,確かではないがエゴンが微笑んでいたような気がした.

Tuesday, August 25, 2015

今さら聞けないコンピュータ: 私の USB スティックに 8GB と書いてあるのはどういう意味ですか?

はじめに


ここでは,「コンピュータが苦手,でもやってみたいことがある.」という方のお手伝いをしながら答えたちょっとした疑問について時々書いていこうと思います.

ビデオ上映会をしたい.どんな USB スティックならいいのですか?


私の知人の中には市民の活動としてこういうことを伝えたい,勉強したいという人が何人かいます.たとえば,国際結婚をした場合,子の国籍はどうなるのか,などということを自分達で勉強したいということがあります.ほかにもいろいろと知りたいことがあるでしょう.

そういうことについて調べて,資料となるビデオもある,では皆で共有しましょうという時,「とにかくコンピュータは苦手で上映会なんてどうしていいのか,でもできればやってみたい」という方がいます.私はその方のお手伝いを少しすることになりました.ビデオを30人位の人達で見るために,プロジェクター(ビーマー)を使って上映会をしたいということです.

その方はとにかくコンピュータが苦手ということなのですが,でもデスクトップのコンピュータは持っていて,メイルを読み書きしたり,あるいは Web を検索するのならなんとかなるということです.私にとっては,それは十分なことだと思います.メイルのやりとりができて Web を検索できるのなら,コンピュータを使えています.

資料となるビデオ映像の著作者の方に特定の条件で上映するの許可を頂いて権利関係はなんとかなったものの,ノートコンピュータを貸して下さる方のノートには DVD ドライブがないということで,USB のスティックに映像を入れられないかという問い合わせがあり,私に次の質問が来ました.

「私の手元に 8GW と書かれた未使用のスティックがあります.これで良いでしょうか?」

はてさて,8GW とはなんだろう? W は普通ワットという単位で,8GW を電気で考えると世界有数の発電施設並みです.もしかして 8GB の間違いでは? と思って確認したところ,実は 8GB の間違いとわかりました.

また,できればいろいろコンピュータについても説明して頂けるとありがたいということでした.

コンピュータでは情報をファイルという単位で記憶します.ファイルというのはもともと紙の書類を綴じたものを指しました.ファイルにはどれだけの情報を記憶されているかの大きさがあります.その単位を B と書いてバイト(byte)と読みます.

1 B(バイト)はコンピュータ用語で英文字を 1 文字記憶できる大きさと考えて十分です.コンピュータの中では実は全て数しかないので,1 B (バイト) も数字です.1 B では 0 から 255 までの数を 1 つ記憶できます.英文字は数字が 0 から 9 まで,英字の小文字が 26 文字,大文字が 26 文字,!, #, *, +, (, ) などの記号などがあって,255 あればだいたい十分です.どの数字がどの文字に対応するかを決めたで広く使われる方法が ASCII(https://ja.wikipedia.org/wiki/ASCII) と呼ばれています.たとえば ASCIIでは文字の 'A' は 65 の数字が対応しています.(しかし日本語や中国語で使う漢字には 255 種類よりももっと多くの種類がありますから,この方法では記憶できません.これについてはまたいつか...)

これで 8GB の B はわかりましたが,8 の後ろの G は何でしょうか.この G はSI 接頭辞 (https://ja.wikipedia.org/wiki/SI%E6%8E%A5%E9%A0%AD%E8%BE%9E)というもので,大きな数や小さな数を 10 の累乗倍を示す接頭辞で表すものです.SI というのはフランス語で国際単位(Le Système International d'Unités) のことです.なんか突然いろいろと難しい話になってきたように思うかもしれませんが,実は例ならきっといくつも知っています.たとえば,1000 を示す接頭辞はk と書いてキロと読みます.1000分の1 は m と書いてミリと呼びます.(実はコンピュータでは普通2進法の都合で 1000 ではなくて,1024 なのですが,以下はなじみのある 10 進法を使って説明します.)

接頭辞の例

倍数 記号 読み方 語源
1000000000分の1
n
ナノ
ギリシャ語で「小人」の意味
1000000分の1
μ
マイクロ
ギリシャ語で「小さい」の意味
1000分の1
m
ミリ
ラテン語で「1000」の意味
1
1000
k
キロ
ギリシャ語で「1000」の意味
1000000
M
メガ
ギリシャ語で「大きい」の意味
1000000000
G
ギガ
ギリシャ語で「巨人」の意味
1000000000000
T
テラ
ギリシャ語で「怪物」の意味

1KB は 1000 B で英文字が約 1000 文字記憶できます.そして,1MB は 100万 B,英文字が約 100 万文字分です.1 GB というのは 10 億文字の記憶ができる容量があるということです.

この接頭辞と関係ある言葉として,巨人達を示すギガンテスや,何か大きいものをいう場合にはギガ何々,という形でも使います.iPod nano という製品名 (意味としては「小さな iPod」でしょうか) など,和製英語ですが,小型バスをマイクロバスと言ったり,小型フィルムをマイクロフィルムというような用法もあります.

この k や M という接頭辞は B という単位だけにつくのではなく,長さの単位のm について km (キロメートル) として使ったり,重さの g について kg (キログラム),あるいは仕事の単位の W について,kW (キロワット)や MW (メガワット)などとしても使えます.

ここで1つの目安ですが,音楽などで使われる CD-ROM は 650 MB ほど記憶できます,また,映画の DVD-ROM は 4.7 GB 記憶できるものが普通です.ファイルのサイズを小さくするための圧縮という技術などがあるので,一概にはいえませんが,70 分の音声は CD の 600 MB 位,2時間の映画はDVD の 4.7 GB 程度で記憶できると考えてよいでしょう.あなたのコンピュータのハードディスクの大きさも2015 年の時点では,GB あるいは TB で示されるでしょう.

最初の質問に戻ると,ビデオのファイルの大きさが何メガ(バイト)? とか何ギガ(バイト)?  ということがわかれば,8GB のスティックにそれが入るかどうかということがわかります.

8GB の 3 文字の意味はこれでおわかりでしょうか? (数字の 8 は説明しませんでしたが,まあ,それはいいでしょう.)

まとめ


  • メイルを読み書きしたり,Web を検索することができるのなら,コンピュータを使う素地はできています.これができる方はあまりコンピュータを苦手に思わないことをおすすめします.
  • コンピュータの記憶できる量は英文字 1 文字を目安にした B (バイト)という単位で示される.
  • 大きな数や小さな数を簡単に言うために接頭辞があり,1000 を示す k (キロ) や 1,000,000 を示す M (メガ) などがある.
  • 8GB のスティックというのは約 80 億文字を記憶できる.目安としては2時間位の映画なら2本弱の記憶ができる.

Sunday, August 9, 2015

ビデオ字幕のタイミング作成の半自動化

概要


私はボランティア活動として誰もが無料で利用できる算数の解説のビデオの翻訳をしている.このビデオに字幕をつける作業に費やす時間が意外に多くて困っている.作業の流れ(ワークフロー)から,字幕作成時には既に音声の入ったビデオとそのスクリプトがあるので,これを使ってできるだけ自動で字幕を作成できないかと考えた.今回,タイミング作成のエンジンとして YouTube の transcript機能を使って,半自動で字幕タイミングを作成したところ,作業時間をある程度短縮することができた.YouTube のtranscript 機能では text フォーマットが入力となるので,srt ファイルを text にする filter を実装した.また,transcript 機能でタイミングを作成した場合,字幕に不自然な改行が入ることがある.そこでこれを除く機能も実装した.以前,13分のビデオの字幕のタイミング生成をした時,手動で 4 時間半程度かかったが,今回の方法でほぼ同じ長さのビデオの字幕タイミング作成を3時間弱程度に短縮することができた.今回作成したソフトウェアは new BSD license で公開しているので,誰でも自由に利用することができる.

字幕のタイミング作成の半自動化


私はボランティア活動で「どうして分数の割り算はひっくりかえしてかけるのか」とか「そもそも分数で割るというのはどういう意味か? 3で割るという意味ならわかるが,2/3 で割るとはどういう意味なのか?」のような算数の解説のビデオ作成をしている.その際に字幕も作成するのだが,このタイミングの作成にかなりの時間をとられている.例えば,13分のビデオの字幕タイミング作成に4時間半程度かかったことがある.

しかし,私には字幕のスクリプトがあり,そして音声も作成している.今回,これを使ってできるだけ字幕のタイミング生成を自動化できないかをSundayResearch のテーマとした.

私の友人の一人に音楽の mp3 ファイルをフーリエ解析し,そこからリズムをとり出すというソフトを作った人がいる.その人はダンスダンスレボリューションというゲームのマットを持っているのだが,ゲーム機は持っていないので,それで遊ぶために作ってみたということである.最初は字幕作成には音声の解析をすべきかと漠然と考えていてその人と議論をしたのであるが,その人と相談しているうちに,もしかしたらそういうソフトがフリーであるかもしれないから探してみては,ということになった.また,私の場合,日本語に対応している必要がある.

字幕作成のソフトを探したところ,YouTube の字幕作成を利用するというソフトがあった.多国語も自動で作成するというこのソフトは,YouTube の字幕作成機能を使って,音声のある言語の字幕を作成し,その字幕を Google translate で他の言語にするというものであった.

そこで実験として YouTube の字幕作成を試してみたのだが,私の音声では利用できるような精度の字幕の出力は得られなかった.しかし,タイミングだけ使えればいいので,スクリプトの文字列と自動生成された文字列に対して,
  • エラーがあるとした上でできるだけ一致する文字列を探せないか
  • 一致部分が得られた時に,その距離を最小化する最適化問題として考えられないか
という考えが議論の中から出てきた.しかし,実際に自動作成した字幕を見てみると,正解している文字列というものが少なく,この考えば難しいと断念した.

音声解析は面倒だろうということでできるだけしたくないと困っていた.私としては問題をできるだけ楽に,時間をかけずに解ける方法を考えるのも重要である.ただし,どうしてもしなくてはならないとなれば仕方ない.

昼休みに友人との議論を続けていたら (SundayResearch では,議論は主に昼休みやパーティなどでしか行なわない),私の場合,字幕作成が必要なのではなく,字幕のタイミング作成だけが必要であることに気がついた.そこで,字幕作成ではなく,字幕のタイミング作成で検索すると,YouTube にはtranscript 機能というものがあることがわかった.これは音声の text を与えると,音声からタイミングを生成して text を字幕にするというものである.

この入力は基本的にテキストファイル + αのもので,とりあえず手で srt ファイルから入力ファイルを作成してみた.するとかなり良い結果が得られた.ただ,出力された字幕ファイル中では勝手に改行が入ってしまうので,これを除く必要があった.そして,最終的には字幕の微調整は amara または camtasia で行うことにした.

つまり,私のワークフローにこの方法を組込むために必要なのは次の2つの簡単なフィルターである.
  • srt file から text 形式に変換するフィルター
  • srt file の字幕の改行を除くフィルター

実装


これらのフィルターを python で実装し,誰でも使えるように new BSD license で以下のページで公開している.


実験と結果


全てを手動で作業していた時にある 13 分のビデオの字幕作成には 4 時間 27分かかったが,同程度の長さ,似た内容のビデオの字幕をこの方法で作成したところ,2 時間 37 分でできた.1時間半以上の短縮はまずますの結果であると考えている.

今後


今後のビデオ作成にこの方法を利用していく予定である.

字幕のタイミング作成を更に時間短縮できる(楽な)方法はないかひき続き模索している.

Monday, July 27, 2015

70 年が過ぎて

2015年7月25日,70 年前,Harry S. Truman が原子爆弾を使用する命令を出したとされる建物の前に僕達は集まった.そして原子爆弾が二度と殺すために使われないように祈って,灯籠を作った.僕は祈りだけでは何も解決できないことを感じている.それでも祈りから始め,そしてそう祈っている人達がここにいることを伝えようと思う.

Making lanterns

Put lanterns on the lake
Lanterns

Wednesday, June 10, 2015

Scratch を学ぶ (2)

前回は scratch というプログラミング環境がどういうものかを簡単に話しました.そこではイベントという考えを使ってプログラムが動きます.今回はこの環境でキャラクターを動かした10歳の生徒の話です.

この Scratch というプログラミング環境では,キーイベントというイベントの一種が提供されています.たとえば,「右の矢印キーを押す」というイベントがあります.このイベントが起こると,x を 10 増やすというようなプログラムを書きます.すると,右の矢印キーを押すたびに猫を右に動かすことができます.これを上下左右のキーでそれぞれ行うことで,キーを使って猫を移動させることができます.

今日の生徒はドラゴンを登場させて,同じことをしました.するとなんと,猫もドラゴンも全く同じ動きをしてしまいます.まあ,そのようにプログラムしたので当然です.コンピュータはとても速く計算し,とても正確で,そしてとても愚かなものです.書いたとおりのことしかしません.その生徒はドラゴンを速く動かしたいと言いました.私は動く量を変えましょうと答えました.今は1回のキーを押すと,動く量が 10 です.速さとは一定時間に動く距離のことですから,これを増やせば速度は思いのままに変えられます.しばらくしてどうしたかなと思って見たら,この生徒はなんと,同じキーイベントをもう1つ作っていました.

つまり,右矢印のイベントが発生すると,2つのプログラムが起動するのです.1つのプログラムは10右へ移動であり,2つのプログラムでは合わせて20の移動になります.この環境では並列に動く部分でもちゃんと考慮されているようにできているらしく,これで正しく2倍の速度で動くのです.3倍速く動かすためには,もう1つプログラムを起動すればできます.なんという発想! 私はジョジョという漫画の1シーンを突然思い出しました.主人公がスタンドで浮くという場面です.(知らない人はすみません) 仗助がスタンドに押されて移動する場合,私の発想はスタンドの押す速度を変えることでしたが,この生徒の発想はスタンドの数を増やすことだったのです.

しかし,この生徒の方法では基本的に整数倍にしか速くできません.もちろん1つのプログラムがキャラクターを10押して,もう1つが同じキャラクターを5押すとすれば 15 押すことになり.1.5 倍の速度にすることもできます.しかしそれでは1つのプログラムが 15 押すのとあまり変わりません.むしろ難しいだけです.この生徒の発想はプログラムを完全にコピーすることで2倍になるということなのです.数学における一般化を学ぶと,どちらの問題を解くことがより大きな範囲の問題を解くことができるのかがわかります.この場合には1つのプログラムで速度を変換する方法の方が優れています.なぜなら速度を変える方法では整数倍だけでなく,小数倍にも,止めることも,逆方向に移動することもできるからです.また,計算機科学を学べば,スレッドが計算機で消費する資源,同期の問題などを考えて,やはり1つのプログラムの方が優れていることがわかります.そして保守の問題を学ぶと,コードが何倍にもふくれあがってしまう彼の方法よりも1ヶ所の変更で全てができる1つのプログラムの方がやはり優れています.しかしそれでもこの自由な発想はすばらしいと思いました.

4方向を5倍にするために,20 個のキーイベントがあるのを見て(図2),私は発想のすばらしさに驚きました.そして同時にやっぱり基礎を学ぶことも大切だなとも思いました.そしてこの生徒が今後多くを学んでいき,しかも今日の発想の素晴しさを忘れないでいて欲しいと思いました.

Figure 2. Using multiple same key events

Scratch を学ぶ (1)

しばらく前から私は Scratch [1] というプログラム言語を10歳から12歳の生徒達に教えています.時々見る生徒の創造力というのはかなり驚くものです.その1つをここに書いておこうと思います.

まずはプログラムを少し知っている人に向けての概念的な説明をしましょう.後で10歳の生徒にする例による説明も書きます.概念を理解した方が応用がきくのですが,どうしてもとっつきにくいものです.また,例による説明はその例についてはわかるのですが,その他の場合にどうなるかがわからないことが多いという問題があります.

Scratch というのは言語名でもありますが,プログラム環境でもあります.その環境ではスプライトキャラクター[2]というものをイベントリブンで動かすプログラムができます.スプライトキャラクターはオブジェクトと考えても良いもので,イベントによってプログラムが起動し,それぞれのプログラムは並列に走ります.

しかし,このような説明ではプログラムをしたことのない人には何のことはわからないでしょう.プログラム環境,スプライト,イベント,オブジェクトなどはプログラミングで使う概念なので,それぞれについて理解する必要があります.しかし,もちろんこのような概念は10歳の生徒にはあまり話をすることはありません.先に述べたように例による説明には問題点がありますが,ここではまず例を使って説明をしたいと思います.

たとえば scratch を起動すると,猫がいます(図 1).この猫に何かが起こるとどうするかということをプログラムするのです.ここで何かが起こるというのは,マウスのボタンが押されたとか,何かキーが押されたとか,そういうことです.それをイベントが発生すると言います.イベントが発生するとプログラムが動き出すので,イベントで駆動(driven: ドリブン)のプログラムと言います.それぞれのキャラクター,猫とか犬とかは自分の状態を持っており,その状態を使ってプログラムが動きます.状態というのは,猫がどこにいるかという位置とか,猫がどちらの方向を向いているとかのことです.プログラミングでは,状態を持っているものをオブジェクトということがあります.ここでは猫は1つのオブジェクトであり,犬もまた1つのオブジェクトです.

Figure 1. Scratch programming environment
Scratch では緑色の旗のボタンがスタートの合図になっています.そこで,それを最初のイベントとして使うことが多いです.緑の旗ボタンを押すと猫を中央に移動させて,「こんにちは!」と言わせたりすることがプログラムになります.私が10歳の生徒に最初に教えていることは「座標」です.とはいっても,x は横のことで y が縦のこと,両方を 0 にするとキャラクターは真ん中に行き,x を大きくすると右に移動とかいう話をします.それぞれのキャラクターの座標は常に表示されています.マウスでキャラクターを動かすとその座標が変化するのがその場で見えます.それを見せながら,(コンピュータの)マウスで猫をつかまえて,「ほら右にいくと x が増えていく」などと教えるのです.

今回は scratch の話で終わってしまいましたが,次回にはこの環境でキャラクターを動かした10歳の生徒の話をしましょう.


Friday, June 5, 2015

共有メモリによるプロセス間通信

Unix の共有メモリを使ったプロセス間通信について調べて実験をしてみた.対象は1つのホスト上での複数のプロセスである.ネット上でいくつか例題はないかと探したが,どうも良い例となるコードが見当たらなかった.結局はある解説記事と,Stack Overflow の議論と,man page を見て作ってみたものになったので,例をここに置くのも有用かと考え,この記事を書く.(もしかしたら探し方が悪くて良いコード例をみつけられなかっただけかもしれない.)

mmap を使うかどうかという話がいくつもでていたが,POSIX の方向としては,shmem_open と mmap を使うという方向があるということだったので,それを信じてその形での実装を試してみた.

基本的なコードの流れは次のようになる.

  1. 共有メモリ領域を1つのプロセスが shm_open() を使って作成する.その際に,プロセス間で共通の文字列を識別子(``identifier'')とする.(Linux ではこれが /dev/shm/identifier のように見える.)
  2. 共有メモリ領域を mmap() でメモリにマップする.共有メモリポインター (shared_ptr)が得られる.
  3. shared_ptr を使って複数のプロセスで通信をする.
  4. 利用終了後は munmap() をつかってマップを消す.
  5. 共有メモリオブジェクトを shm_unlink() によって消す.

以下に示すプログラムは,server と client の2つのプロセスが共有メモリを使って通信をするものである.ここで,server プロセス数と client プロセス数は共に 1 を仮定する.server と client は自分の領域にしか値を書き込まないことで,ロックを避けている.互いに相手の値を読み,それよりも1大きい数を一定の期間ごとに自分の領域に書くという例題である.シンプルではあるが,共有メモリで通信をする基本としては十分なものだと思う.ソースコード(shmem_test.cpp)を以下に付加する.ソースコードのコメントにコンパイル方法とどのように利用するかを書いておく.

/*
  Shared memory inter process communication minimal example
  Copyright (C) 2015 Hitoshi

  Compile:
    g++ shmem_test.cpp -o shmem_test -lrt

  Run (as a server):
    shmem_test server

  Run (as a client)
    shmem_test client

  Note: no locking. (but writes are not the same location.)

  Basic idea: server, shared memory creator

  1. Create a shared memory object by shm_open().
  2. Change the shared memory object by ftruncate().
  3. mmap the shared memory object to access via a pointer.
  4. Use the pointer to share the memory (may need lock, etc.)
  5. munmap the shared memory object
  6. Remove the shared memory object by shm_unlink()

  Basic idea: client

  1. Open the created shared memory object by shm_open().
  2. mmap the shared memory object to access via a pointer.
  3. Use the pointer to share the memory (may need lock, etc.)
  4. munmap the shared memory object

 */

#include <iostream>

#include <fcntl.h>
#include <stdlib.h>
#include <sys/mman.h>
#include <sys/stat.h>
#include <unistd.h>

//----------------------------------------------------------------------
/// shard memory identifier name
const char* SHMEM_NAME = "/test.shmem";
/// shared memory size (align to the page size)
const size_t SHMEM_SIZE = 4096;

//----------------------------------------------------------------------
/// print out the usage and exit of this example
void usage_exit()
{
    std::cerr
        << "Shard memory inter process communication minimal test\n"
        << "shmem_test [server|client]\n"
        << "  server ... create/read/write shared memory\n"
        << "  client ... read/write shared memory"
        << std::endl;
    exit(1);
}

//----------------------------------------------------------------------
/// server
void run_server()
{
    // create/open the shared memory object
    int fd = shm_open(SHMEM_NAME,
                      // oflags
                      O_CREAT|  // create if not exist
                      // O_TRUNK|  // destroy once if exists
                      O_EXCL|   // error if exists
                      O_RDWR    // read/write
                      ,
                      // mode
                      S_IRUSR|  // user read
                      S_IWUSR   // user write
        );

    if (fd >= 0)
    {
        std::cout << "server: shmem_open succeed fd: " << fd << std::endl;
    }
    else
    {
        std::cerr << "server: shmem_open failed: " << fd
                  << ", if /dev/shm"    << SHMEM_NAME
                  << " exists, remove it." << std::endl;
        exit(1);
    }

    // resize the shmem object
    const int ret = ftruncate(fd, SHMEM_SIZE);
    if (ret != 0)
    {
        std::cerr << "Server: failed to ftrancate to " << SHMEM_SIZE
                  << std::endl;
        exit(1);
    }

    // get shmem address
    const size_t access_offset = 0;
    void* shmem_adder = mmap(0, SHMEM_SIZE,
                             // memory protection mode
                             PROT_READ| // Pages may be read.
                             PROT_WRITE // Pages may be written.
                             ,
                             // mapping flag
                             MAP_SHARED, // Share this mapping with other process
                             fd,
                             access_offset);
    if (shmem_adder == 0)
    {
        std::cerr << "Serevr failed to mmap." << std::endl;
        exit(1);
    }
    close(fd);                 // fd is no longer needed

    // server process work
    int* int_ptr = reinterpret_cast<int*>(shmem_adder);

    // initialize
    int_ptr[0] = 0;
    int_ptr[1] = 0;

    for (int i = 0; i < 10; ++i)
    {
        int my_int    = int_ptr[0];
        int other_int = int_ptr[1];

        if (my_int <= other_int)
        {
            my_int = other_int + 1;
            int_ptr[0] = my_int;
            std::cout << "I am taller. " << my_int << ", "
                      << other_int << std::endl;
        }
        usleep(800000);
        std::cout << "Checking client " << i << std::endl;
    }
    std::cout << "Quit server: " << int_ptr[0] << ", " << int_ptr[1] << std::endl;

    // unmap
    int ummap_ret = munmap(shmem_adder, SHMEM_SIZE);
    if (ummap_ret != 0)
    {
        std::cerr << "Failed to munmap. " << ummap_ret << std::endl;
        exit(1);
    }

    // remove shmem object
    int unlink_ret = shm_unlink(SHMEM_NAME);
    if (unlink_ret != 0)
    {
        std::cerr << "Failed to shm_unlink. " << unlink_ret << std::endl;
        exit(1);
    }
}

//----------------------------------------------------------------------
void run_client()
{
    // open the shared memory object
    int fd = shm_open(SHMEM_NAME,
                      // oflags
                      O_RDWR    // read/write
                      ,
                      // mode
                      S_IRUSR|  // user read
                      S_IWUSR   // user write
        );

    if (fd >= 0)
    {
        std::cout << "shmem_open succeed fd: " << fd << std::endl;
    }
    else
    {
        std::cerr << "shmem_open failed: " << fd
                  << ", Are you running the server?" << std::endl;
        exit(1);
    }

    // get shmem address
    const size_t access_offset = 0;
    void* shmem_adder = mmap(0, SHMEM_SIZE,
                             // memory protection mode
                             PROT_READ| // Pages may be read.
                             PROT_WRITE // Pages may be written.
                             ,
                             // mapping flag
                             MAP_SHARED, // Share this mapping with other process
                             fd,
                             access_offset);
    if (shmem_adder == 0)
    {
        std::cerr << "Failed to mmap." << std::endl;
        exit(1);
    }
    close(fd);                 // fd is no longer needed

    // server process work
    int* int_ptr = reinterpret_cast<int*>(shmem_adder);

    // initialize
    int_ptr[0] = 0;
    int_ptr[1] = 0;

    for (int i = 0; i < 10; ++i)
    {
        int my_int    = int_ptr[1];
        int other_int = int_ptr[0];

        if (my_int <= other_int)
        {
            my_int = other_int + 1;
            int_ptr[1] = my_int;
            std::cout << "I am taller. " << my_int << ", "
                      << other_int << std::endl;
        }
        usleep(500000);
        std::cout << "Checking server " << i << std::endl;
    }
    std::cout << "Quit client: " << int_ptr[0] << ", " << int_ptr[1] << std::endl;

    // unmap
    int ummap_ret = munmap(shmem_adder, SHMEM_SIZE);
    if (ummap_ret != 0)
    {
        std::cerr << "Failed to munmap. " << ummap_ret << std::endl;
        exit(1);
    }
}

//----------------------------------------------------------------------
/// main
int main(int argc, char* argv[])
{
    if (argc == 1)
    {
        usage_exit();
    }
    else if ((argc == 2) && std::string(argv[1]) == "server")
    {
        run_server();
    }
    else if ((argc == 2) && std::string(argv[1]) == "client")
    {
        run_client();
    }
    else
    {
        usage_exit();
    }

    return 0;
}

この例題が誰かの役に立てば幸いです.

Friday, May 15, 2015

昔ながらのおもちゃはどこに?

I'm looking for an old school toy.

Thursday, May 7, 2015

ドイツにおける機会不均等(差別)の扱い (8)

第7節 例

第7.1節 私が仕事をしている会社の場合

私が仕事をしている会社には,差別問題のコードがある (差別は禁止されている).問題があればそれを会社に報告することができ,そのための情報が提供されている.

私がドイツで会社へのインタビューを受けた時には,会社側は表向きには国籍を尋ねることができなかった.しかし,ドイツでの就労許可が取れるのかという形でパスポートに関する情報を尋ねることは可能なようである.

第7.2節 労使協議会での最近のニュース記事例

差別は罪であるために,差別問題が差別という形でそのままでることは少なく,状況に大きく依存するケースが大半である.差別ということであれば,市民はその罪を警察に届ける義務がある.会社内部で差別を見過すことは懲戒処分になる可能性がある.

最近の一例としては,労使協議会で他を公に侮辱した場合の顛末の記事がある.Spiegel online の記事で,Verfahren zur Amtsenthebung: Daimler-Betriebsratsmitglied applaudiert Pariser Attentätern (告発: ダイムラーの労使協議会メンバーがパリのテロ事件を賞賛) [1].労使協議会は従業員の立場を保護するかそうでないかを選択する必要がある場合がある.シュピーゲル・オンラインの記事によると,今回問題となった人物は,労使協議会の役員メンバーであり,会社側が他の従業員よりも簡単に辞職させることができない地位にある人物である.その人物が,ソーシャルメディアで,「Jeder Mensch zahlt fürseine Taten! Fuck Charlie Hebdo (誰もが自分のしたことには責任を持つべきだ!シャルリー・エブドの畜生)」という書き込みを行なったことが問題となった.彼はこの公の書き込みの責任をとらされて,労使協議会のメンバーから外された.(会社には残れたようであるが詳細は不明)

第7.3節 差別となる場合の例

会社の仕事の面接で「あなたは妊娠していますか?」「あなたの妻(夫)の仕事は何ですか?」など,仕事に関係ないことであれば,性別,妊娠の有無,年齢,国籍,家族,障害などについて尋ねることは違法である.これは米国の雇用機会均等委員会 [2] の定めることとほぼ同じである.会社の面接で同席している機会均等役員はこれらの質問を止める義務がある.不適切な質問の例は [3]にある.

会社の仕事の面接時に会社側が労使協議会のメンバーに同席を求め,面接を受ける人達を違法な質問から守ることは広く行なわれている.これはまた会社側にもメリットがある.なぜなら面接を受けた人物が「会社に仕事の面接で違法な質問をされた」と提訴されることを予防することにもなるからである.(労使協議会は第三者的な役割りを果たすことができるので,会社側はいわれのない訴訟を避けることができる.)

表記について

本報告では Behindert の翻訳を Wikipedia [4] に従い「障害」と表記した.

参考文献

  1. Spiegel online, Verfahren zur Amtsenthebung: Daimler-Betriebsratsmitglied applaudiert Pariser Attentätern (Impeachment: Daimler-works-council member applauds Paris terrorists, http://www.spiegel.de/wirtschaft/unternehmen/charlie-hebdo-schmaehung-daimler-betriebsrat-droht-amtsenthebung-a-1014702.html, 2015-1-23(Fri), (Online; accessed 2015-4-2(Thu))
  2. Wikipedia en, Equal Employment Opportunity Commission, https://en.wikipedia.org/wiki/Equal_Employment_Opportunity_Commission, (Online; accessed 2015-4-2(Thu))
  3. test.de, Bundesarbeitsgericht: Schwangerschaft darf geheim bleiben, https://www.test.de/Bundesarbeitsgericht-Schwangerschaft-darf-geheim-bleiben-1082989-0/, (Online; accessed 2015-4-3(Fri))
  4. Wikipedia ja, 障害者: 表記・呼称, https://ja.wikipedia.org/wiki/%E9%9A%9C%E5%AE%B3%E8%80%85#.E8.A1.A8.E8.A8.98.E3.83.BB.E5.91.BC.E7.A7.B0, (Online; accessed 2015-4-5(Sun))

謝辞

この記事を書くにあたって以下の人達の協力を得ました: D.S, K.K.M.R, ここに感謝いたします:

ドイツにおける機会不均等(差別)の扱い (7)

第6節 大学での機会不均等問題の扱い

各大学は差別問題の扱いに責任を持つ多様性マネージャー (diversity manager)を持つ.何人のマネージャーがいるかは大学の大きさによって決まる.大きな大学にはフルタイムのポジションがあり,小さな大学ではそのポジションがパートタイムの場合がある.どのような場合であっても,それに対する給料が支払われるポジションとなっている.

例えば,ドレスデン工科大学は比較的小さな大きさの大学であるが,[1] には機会不均等問題に対する情報と問題に対処する責任者へのコンタクトのための情報が表示されている.フンボルト大学はドイツ内部では大きな大学であり,機会不均等の問題を扱う事務所が設置されている [2]

参考文献

  1. TU Dresden, Gender Equality, https://tu-dresden.de/die_tu_dresden/gremien_und_beauftragte/beauftragte/gleichstellung/chancengleichheit/index_html, (Online; accessed 2015-4-3(Fri))
  2. Humboldt Universität zu Berlin, Die zentrale Frauenbeauftragte, http://gremien.hu-berlin.de/de/frb, (Online; accessed 2015-4-3(Fri))

Wednesday, May 6, 2015

ドイツにおける機会不均等(差別)の扱い (6)

第5.1節 労使協議会 (Betriebsrat)

ドイツの会社内部では労使協議会(Betriebsrat [1])を設立することができ,もし設立されていればこれが従業員の機会不均等問題を扱うことができる.労使協議会は会社内部の組織である.それは従業員による従業員達の代表でもある.しかしこれは労働組合ではない (労働組合にあるストライキなどの強い権利などはないが,ある種の権力は有している).労使協議会は,会社の経営者側との対立ではなく,協力を基礎にして労働環境を改善することを目的としている.それはまた会社の経営者にとっても利益となるべきことを目指している.例えばオフィスの環境が向上することによる作業効率の向上,働きやすい環境を提供することでより有用な人材を得られること,才能ある人々の離職を防ぐなどが上げられる.

労使協議会の第一の目的は従業員の支援と保護である.そのため,経営者側からの差別問題を扱うこともできる.しかし,差別問題を従業員側が起こした場合(従業員の一人がヘイトスピーチを行うなど),労使協議会は対象となる従業員の保護を続けるかどうかを状況に応じて選択することになる.

第5.2節 労働組合 (Gewerkschaft)

労働組合 (Gewerkschaft) は組合によって代表され,組合によって給料が支払われる組織である.したがってこれは個々の企業に代表されるものではない.組合は業種によって分類されることがあり,いくつもの同業の会社に渡って活動をする.労働組合はプロアクティブに(対処療法ではなく,問題が起きる前から)機会不均等問題を扱う.たとえば,雇用の性差別問題などである.ドイツには複数の労働組合がある [2] (例としては,ver.di, IG Metal,など,Wikipedia の該当するページを参照のこと).

労働組合は人種差別に反対するポリシーを定めており,あらゆる機会不均等問題を扱う.会社の従業員が組合のメンバーであれば,通常労働組合は会社側から提供される情報へのアクセスもできる.

参考文献

  1. Wikipedia de, Betriebsrat, https://de.wikipedia.org/wiki/Betriebsrat, (Online; accessed 2015-4-2(Thu))
  2. Wikipedia de, Gewerkschaften in Deutschland, https://de.wikipedia.org/wiki/Gewerkschaften_in_Deutschland, (Online; accessed 2015-4-2(Thu))

ドイツにおける機会不均等(差別)の扱い (5)

第5節: 会社での機会不均等問題の扱い

ドイツの会社内部では,障害者代理者(Behindertenvertrater)が障害者についてのあらゆる種類の機会不均等問題を取り扱う.法でこれが必要とされるのは5人以上の障害者を雇用している全ての会社である.(ドイツ社会規範法,第5章,94節:Sozialgesetzbuch, Kapital 5, Section 94 Wahl und Amtszeit der Schwerbehindertenvertretung [1]).

ドイツ連邦政府には障害者のための機会均等省 (Die Beauftragte der Bundesregierung für die Belange behinderter Menschen[2]) が設置されている.この省は障害者の機会不均等問題だけではなく,あらゆる種類の機会不均等(差別)問題を扱う.

報告者が調べた限りでは政府の認可のない,会社の機会不均等問題を扱う公式な第三者組織はないようである.1つの理由としては,そのような組織には会社内部の情報にアクセスする方法がないからであろうということであった.なぜなら,会社内部での地位,給料に関する機会不均等がある場合,それらの情報にアクセスすることがなければ有効な対策が打てないからである.(ただし,これについてはさらに調査すべき)

家庭,高齢者,女性と若者に関する連邦省 (Bundesministerium für Familie, Senioren, Frauen und Jugend [3]) は家族のサポートに関して責任を持つ.しかし,これは性差別による給料の不均等問題などにも関与する省である.したがって,この省も機会不均等問題を扱う.

会社内部における機会不均等問題を扱う組織としては大きく労使協議会(Betriebsrat)と労働組合 (Gewerkschaft) がある.

本報告ではこれまでのところ,これらの省庁間の連携や対処する問題がどのように異なるかについての調査は不十分である.

参考文献

  1. Bundesministerium der Justiz und für Verbraucherschutz, Sozialgesetzbuch (SGB) Neuntes Buch (IX) - Rehabilitation und Teilhabe behinderter Menschen - (Artikel 1 des Gesetzes v. 19.6.2001, BGBl. I S. 1046), Kapital 5, §94 Wahl und Amtszeit der Schwerbehindertenvertretung, http://www.gesetze-im-internet.de/sgb_9/__94.html, (Online; accessed 2015-4-5(Sun))
  2. Behindertenbeauftragte, Die Beauftragte der Bundesregierung für die Belange behinderter Menschen, http://www.behindertenbeauftragte.de/DE/Home/home_node.html, (Online; accessed 2015-4-3(Fri))
  3. Behindertenbeauftragte, Das Bundesministerium für Familie, Senioren, Frauen und Jugend, http://www.bmfsfj.de/BMFSFJ/gleichstellung,did=126762.html, (Online; accessed 2015-4-3(Fri))

Sunday, May 3, 2015

ドイツにおける機会不均等(差別)の扱い (4)

第4節: 機会不均等問題の一般的な扱い

一般に差別をみつけたら常に何らかの証拠か目撃者を伴って警察に届ける必要がある.もし YouTube 上でそれをみつけた場合にも同様に警察へと報告する.

もし誰かが差別を公の場で述べた場合には,その人を告訴することができる.そして,検察官または裁判官 (Staatsanwaltschaft [1]) はそれを処理しなくてはならない.

次の引用はドイツ語の Wikipedia の「地方レベルにおける男女間の機会均等のノルトライン=ヴェストファーレン州の地方自治体法での例 [2]」についてである.
男女間の平等という憲法的な仕事を実体化することはまた街と自治体の使命である.この仕事を実行するため,自治体は機会均等のための役員を雇用することができる.この変更により,自分達の責任をもって,この憲法的な要求を実装するため,1984年にノルトライン・ウェストファーレン州に自治体当局が呼び集められ,自治体当局らは自治体の機会均等役員を雇用した.1994年の10月にノルトライン・ウェストファーレン州の自治体の法律が改正された後,10,000人以上の住民のいる全ての自治体と,全ての関連する当事者らはフルタイムの機会均等役員を雇用する義務を負うことになった.(以下略)
この例は 10,000 人以上の住民のいる自治体には必ず機会均等を扱う専門のフルタイムの役人が雇われる必要があることを定めている.

References

  1. Wikipedia de, Staatsanwaltschaft (Prosecutor), https://de.wikipedia.org/wiki/Staatsanwaltschaft, (Online; accessed 2015-4-2(Thu))
  2. Wikipedia de, Gleichstellungsbeauftragte, https://de.wikipedia.org/wiki/Gleichstellungsbeauftragte, (Online; accessed 2015-4-2(Thu))

Friday, May 1, 2015

ドイツにおける機会不均等(差別)の扱い (3)

第3節: 歴史的背景

 ヨーロッパでは差別問題は女性開放の動き(Frauenbewegung auftrag)としてはじまった [1].そして後に機会均等への運動(Gleichstellungsbeauftragte)へと拡大していく.したがってこれは男女間の差別問題としてはじまり,あらゆる種類の差別問題として拡大していった

多様性について早いうちから対応していた会社には IBM がある [2].IBM は米国で機会均等法が制定される(1965)以前から雇用に機会均等を打ち出していた (1900 前後,当時 IBM はまだなく,IBMの前身の会社において既に始まっていた).

参考: 表現の自由は悪用することで人間の尊厳を犯す場合がある.第二次大戦後,新聞社など公に発言する媒体はあらゆるものから独立すべきであることが定められた(表現の自由).これは,ドイツ基本法第5条 [3] にある.

参考文献

  1. Wikipedia de, Frauenbewegung, http://de.wikipedia.org/wiki/Frauenbewegung, (Online; accessed 2015-4-2(Thu))
  2. IBM, Diversity and Inclusion, http://www-03.ibm.com/employment/us/diverse/index.shtml, http://www-06.ibm.com/jp/employment/jp/life/modus/diversity.shtml, (Online; accessed 2015-4-2(Thu))
  3. Bundesministerium der Justiz und für Verbraucherschutz, Basic Law for the Federal Republic of Germany, English translation version, http://www.gesetze-im-internet.de/englisch_gg/englisch_gg.html, (Online; accessed 2015-4-2(Thu))

Thursday, April 30, 2015

ドイツにおける機会不均等(差別)の扱い (2)

第2節 機会不均等問題を扱う法的基礎

法的根拠は「ドイツ基本法 [1]」中にある.ドイツの法体系の中でこのドイツ基本法は憲法として働くものである.この法律については司法と消費者保護のための連邦省(Bundesministerium der Justiz und fürVerbraucherschutz)から公式な英語版も参照でき,本報告ではそれを引用する.また,日本語への翻訳は本レポートの報告者によるものであり正式なものではないことに留意して欲しい.

ドイツ基本法の第1条は「人間の尊厳 - 基本的人権 - 基本権利の法的拘束力」である:
  • 人間の尊厳は不可侵であるべき.これを尊敬し保護することは全ての国家権力の義務であるべき.
  • したがって,ドイツ国民は基本的人権が不可侵であり,奪われるものではないことが世界の全てにおける,コミュニティーの基本であり,平和の基本であり,正義であることを承認する.
  • 続く基本的人権は立法府,行政部,そして司法に直接適用可能な法として結びつけられる
ドイツの法律では,人々は人間の尊厳を犯してはならない.一方,表現の自由もドイツ基本法の第5条「表現,芸術,科学の自由」により認められている.

  • 全ての人は自由に表現する権利,公に意見を述べ,書き,描く権利を有すべきであり,障害なく自身を一般にアクセスできる情報源から知らせる権利を持つべきである.放送や映画などによる出版の自由と報道の自由は保証されるべきである.検閲はこれを行わない.
  • これらの権利は一般法の規定によりその制限が定められる.その規定とは幼い人達の保護や,個人の尊厳の権利などである.
  • 芸術,科学,研究,教えることは自由であるべき.教えることの自由は基本法への忠誠からいかなる人をも放すべきではない.
したがって,表現の自由は人間の尊厳の不可侵性に制限される.つまり,ドイツではヘイトスピーチは人々の尊厳を犯すが故に罪である.

ドイツ刑法典 [2] は 130条で民衆扇動罪(Volksverhetzung)を定めている.これは民主主義の否定やヘイトスピーチを禁じている.86条a では,刑法典では「基本法に沿わない組織のシンボルの利用(Verwenden von Kennzeichen verfassungswidriger Organisationen)」についての規定があり,ある種のシンボル,例えばナチスの記章など,についても規定がある.

「一般機会均等法 (Allgemeines Gleichstellungsgesetz) [3]」はあらゆる差別についての法律である.それは国籍,年齢,宗教,性,収入,障害,などによるものを含む.

差別はほとんどの場合に重罪として起訴される.重罪(felony) とは強盗,殺人,放火,強姦など,およそ罰金だけでは済まない罪のことである.しかしこれにはグレイゾーンがある.たとえば,ある種の芸術であるというような主張である.しかし,そのような場合には,それぞれのケースが裁判所で判断されることになるだろう.

  1. Bundesministerium der Justiz und für Verbraucherschutz,``Basic Law for the Federal Republic of Germany, English translation version,''  http://www.gesetze-im-internet.de/englisch_gg/englisch_gg.html, (Online; accessed 2015-4-2(Thu))
  2. Bundesministerium der Justiz und für Verbraucherschutz, ``German criminal code, English translation version'', http://www.gesetze-im-internet.de/englisch_stgb/englisch_stgb.html, (Online; accessed 2015-4-2(Thu)) 
  3. Bundesministerium der Justiz und für Verbraucherschutz, Allgemeines Gleichstellungsgesetz, http://www.gesetze-im-internet.de/agg/BJNR189710006.html, (Online; accessed 2015-4-2(Thu))

Thursday, April 23, 2015

ドイツにおける機会不均等(差別)の扱い (1)

2013 年 9 月 5日,私はあるバス停で暴漢に襲われ,救急車で運ばれました.

その日,差別問題に対する私の見方に変化がありました.少なくともその問題について多少は考えるようになったのです.私は互いに憎しみあうよりも,互いに協力することを良しと思います.

その日以来私にはこの問題を解決したいという小さな動機がありますが,しかし私のハートは教育にあるのです.私は教育がこの世界を良くする可能性であることをのんきなほど(とおっしゃって下さってかまいません) 信じています.ですから,私のメインのプロジェクトはいつも教育関係です.しかし,差別問題は私のどこかにひっかかっています.それでいくつかのサブ・プロジェクトが生まれました.

この記事はそのうちの1つです.私は友人達に,ドイツでは差別の問題はどのように扱われているのかを尋ねました.

その調査の結果をこのブログ上で何回かに渡って書いていきます.

はじめに

このレポートは機会不均等問題がどのようにドイツで扱われるか,特に会社や大学でどのように対処されるのかについて紹介する.また,本報告書中では機会不均等問題と差別問題は基本的に同じ問題を異なる言葉で言いかえたものである.公式文書中では機会不均等問題と呼ばれることが多いようである.

まず,第 2 章でこれに関連するドイツの法律を概観する.ドイツ基本法では人間の尊厳が最も重要なものである.そして,差別は他の人の尊厳を傷つける可能性があるが故に差別は罪となる.

第 3 章で差別に関するヨーロッパにおける歴史的背景を概観する.

第 4 章では,差別はどのように対応されるかを報告する.ドイツでは10,000以上の住人のいる街には給与を支払われる機会均等の監視人が必要であり,これが監視の任を負う.また,差別は基本的に重罪であり,警察もこれに対応しなくてはならない.

第 5 章ではドイツの会社における対応を報告する.差別は違法なことであるからドイツの会社自身もこれに対応する必要がある.これに対する組織の1つは Betriebsrad (日本語の正式な訳は不明だが,たとえば労使協議会) がある.Betriebsrad はそれぞれの会社内の組織であり,これは会社内の問題に対応する場合がある.また,会社を越えての組織としてはその業界を代表する労働組合も差別に対処する.

第 6 章ではドイツの大学における対応を報告する.ドイツの各大学には機会均等問題に対応する責任者が給与付きで置かれる.これは大学の規模によって形態が違い,大きな大学ではオフィスのある場合もある.

第 7 章では何が差別となるかの例や,実際の組織の例,報道例について報告する.

なおこの報告は最初に英語で行なわれた.その日本語への翻訳は報告者が行なっているが,報告者は法律用語などの専門家ではないために日本で確立した翻訳ではないかもしれないことをお断りしておく.その場合でも元のドイツ語は報告書中,あるいは参考文献から参照できるようにしてある.

Tuesday, March 31, 2015

ニュースソース (Germanwing 機墜落事故について)

先日 Germanwings の墜落という惨事があり,まずは犠牲者とその関係者の方にはお悔やみを申し上げます.

これについて報道のソースにちょっと疑問があり,このブログを書いています.

いくつかの日本の新聞が「ビルド誌によれば」というふうに書いていますが,ビルド誌はドイツのいわゆるタブロイド誌であり,芸能人のゴシップなどの記事を中心にしている新聞です.センセーショナルな記事が売りの,日本のいわゆるいくつかのスポーツ新聞の役割をしている新聞です.

たとえば,以下の報道で,

http://digital.asahi.com/articles/ASH3W722YH3WUHBI02H.html?ref=nmail

副操縦士に「精神科の受診歴があった」,「失恋に苦しんでいた」の話はこのビルド誌の報道を朝日新聞が紹介したものとなっています.

以下の記事の最初のリンクでは副機長の年が 27 歳,次では 28 歳になっています.記事は一日違いですので,3/27がこの人の誕生日だったのでしょうか? (2015-3-31(Tue)の時点で,今後訂正が入るかもしれませんが)

http://digital.asahi.com/articles/ASH3W2FT1H3WUHBI00C.html?iref=reca
http://digital.asahi.com/articles/ASH3V7GWKH3VUHBI033.html?iref=reca

3/28の時点ではフライトレコーダはまだみつかっていないという報道が主です.私は素人ですが,Wiki pedia によればフライトレコーダーがなく,ボイスレコーダーのみでは通常コックピットでどんな操作があったかは不明のはずです.そう考えて読むと,操作についての各社の報道は推測なのか,どこまで事実としてわかっているのか実は不明なように読めます.

またボイスレコーダが回収されたとは公式な発表はありましたが,内容は発表されていないという報道も同時にありました.しかし,その後,内容の報道があいつぎました.しかし,公式発表という話がみあたらないのです.

それでボイスレコーダーの内容の出所を探すと,以下の報道では再び「ビルド誌によれば」となっています.

http://fox4kc.com/2015/03/30/leaked-germanwings-voice-recording-as-agonizing-as-expected/

公式には内容は発表されていないとこの報道ではされています.しかし日本の道ではそういう話がわかりにくい印象です.あるいはドイツの地元紙によればという新聞の名前が公表されていないものの引用があるのなぜでしょうか? 私はたまたまドイツに住んでいるので,紙面の名前とタイトルを教えてくれれば元の記事を探すことができるのですが,それらがないと探すことができません.というのも,翻訳の違いなどが時々見うけられて,ドイツの友人の前で恥をかくことがあるので,原文を確かめたい時があるからです.

今回の報道についての私の現在の疑問点は,ニュースソースの信頼性(公式な発表とわかるものが少ない)です.

  • ドイツのスポーツ新聞である「ビルド誌」のみがソースの情報がいくつもある
    • 例: コパイロットの元恋人の告白
    • 例: コパイロットは精神疾患であったと当局の関係者から聞いた
  •  フランスのエアバスの事故でありフランス当局が捜査をしているが,コパイロットが精神疾患であるという情報が「ビルド誌」にリークされてそれを日本の新聞のいくつかがそのまま報道している.現時点でビルド誌のスクープを除くと私には他にまったく原因がなかったという結論はまだ早いと思う.次の飛行機事故防止は重要なことであるので,早急すぎる結論は不安である.
  • コパイロットの年齢ですらゆれている.単なる間違いとしても情報の質に不安がある.
  • ボイスレコーダの解析には通常時間がかかると報道されることが多く,また公式発表はないようだ.ただし,出所を探すとそれが不明情報が大きく報道されている.

おそらくまだ情報が交錯しているという状態で,今後どうなるのかわかりませんが,今の報道の状況は少し注意した方が良いのではないのでしょうか? 私には何が間違いとは断定はできませんが,現在でている情報としては質が安心できない感じがします.

皆さんはどうお考えでしょうか?