2012年2月12日

絶縁の条件

私は自分が生きて行く上で,できるだけ多くの人と付き合うようにしている. ただ,私も全てを受け入れてはいられない.いくらお世話になった人達でも, 以下の項目に該当する場合は残念だがご縁を切らせていただいている.

  • 私が大事にしていることを全否定する人

    かつて私が結婚したばかりのとき, 「女房に家事なんか任せてこっちの仕事はできないのか」という いささか理解しかねることを言ってきた人がいた. 残念ながら,共働き家庭で家事を放っておけるほど, 今の世の中は楽にはできていない. 他人が何を大事にしているかについて 気遣いのできない人と付き合うのは難しい.

  • 粗暴かつ暴言を吐く人

    ストレス解消なのかどうか知らないが, 理由もなく私を怒鳴りつけてくる人がいた. その人と会議で同席した時, 本論と全然関係のないことで私を攻め立てて 勝手に怒っていたこともあった. 残念ながら,こういう人とは,一緒にはやっていけない.

  • 重要な約束を予告なく破る人

    さる人を,とある行事に来ていただくよう招待したら 来ていただけなかった.理由を聞いたら, 「完全に忘れていた」と一言. これにはさすがに呆れるしかなかった.

自分が上記に該当するようなことがないようにしたいものである.

2012年1月8日

今後数年間の最重要課題

今後数年間の最重要課題は、ズバリ

一人で食えるようになること
(Living standalone on my feet)
だと考えている。

年明けの目標を決めるのに、今年は例年になく苦労したが、 それは長期的目標が重くのしかかっているからだと気がついた。

あえてこの目標の細かい意味は書かない。 おそらくこの目標自身も細分化しなければならないだろう。 それだけ難しい課題である。

2012年1月3日

傷んでいる精神

2012年になって3日目だが,いまだに今年の年頭計画すら立てられずにいる.

気がつかない間に,随分と自分の精神は,傷んでいたようだ.精神の疲れは,主に身体の疲れが原因ではないかと思うのだけど.

昨年2011年は,3月の地震で5月あたりまでおかしくて,その後喝を入れてもらって9月ごろまで走ったらオーバーヒート気味になってしまった.今はペースダウンしているが,そう簡単に回復するものではないようだ.

他人の批判をしながら,自分は仕事が進まないと嘆くのは,かなり精神の傷んでいる状況,らしい.ずっとこの知人のツイートが気になっている.

他人に文句ばかり言いながら、自分の仕事のことになると「うまく進められない」と手がつかない状態というのは、自分が考えている以上に、精神的に傷んでいる可能性があるので、気づいたら本格的にメンテナンスした方がいいと思うよ。

https://api.twitter.com/#!/tekusuke/status/150718917751480320

精神が傷むと真っ先に創造性を失ってしまう.創造性というのは,血のにじむような試行錯誤なしには得られないことは,よくわかっているつもりだ.今一番問題なのは,その試行錯誤の気力が,ないこと.何らかの型に自分をはめこんで,無理矢理やるしか,根本的解決法はないのかもしれない.

2011年9月25日

Erlang Workshop 2011を終えて

2011年9月23日に開かれたErlang Workshop 2011は,登録者37人,プレゼン10名,ポスター発表3名という 盛況のうちに終えることができました.参加してくださった皆様に,感謝申し上げます.

私は9月21日に台風15号と共に東京に入り,よりによって暴風雨の一番ひどかった夕方にICFP 2011の受付を済ませました. その後に渋谷のジェミナイ・モバイルにて開かれたQuickCheck Loungeに向かったのですが,かろうじて半蔵門線は 神保町-渋谷間で動いていたものの,渋谷では大変な風雨で駅で足止めに遭い,どうなることかと思いました(苦笑). まあ,結果としては,John Hughes, Joe Norton, Thomas Artsというそうそうたる面々からproperty-based testingに 関する話を直々に聞くことができ,非常に充実したミーティングでしたが…. :-)

Workshop当日は,発表者が1人遅れて私が代役で発表したり,ポスターを入れる枠がきつめになっていてドライバーで分解して 入れるのを手伝ったりと,いろいろハプニングはありました.それでも,PCとプロジェクターの相性にまつわるトラブルはまったくなく, ICFP 2011の会場運営をしていただいた方々のご協力もあり,大変順調に進行することができました. 発表者の1人Kostis Sagonasからは直々に感謝の言葉をいただき,ひたすら恐縮の限りでありました.

来年のICFP 2012はデンマークのコペンハーゲンにて開催される予定です.Erlang Workshop 2012も同地で開催することになります. コペンハーゲンはロンドンやストックホルムには近いので,おそらく多数のErlangユーザーやハッカーが集まるでしょう.

Workshopの後には急遽ErlLoungeという形で(日本語でいうところの)懇親会をやりました.事前準備が足らなかったにもかかわらず, Voluntas 中居さんに幹事としてサポートしていただき,こちらも大変盛況でした.ただただ,感謝,感謝です.

以上,とり急ぎご報告まで

2011年5月8日

相互排除問題,際どい部分,そして並行プログラミング

複数の実行中のプログラム(プロセス)が関わる処理では,必ず排他制御が問題になる. 複数のプロセスがあらかじめ許容された同時アクセス数を越えて共有資源を使おうとすれば, どのプロセスにアクセスを許し,どれに許さないかを,決めなくてはならない. これを mutual exclusion problem 日本語では相互排除問題という.

この相互排除問題について,最近岩波書店より 「相互排除問題」(以下「本書」とする) というそのものズバリの本が先月2011年4月に出版された. 著者は土居範久先生.日本におけるこの分野の第一人者である.

本書の参考文献リストを見ると,ほとんどの文献が 1990年以前に書かれている.しかし,内容はいささかも古いものではなく, 現在のマルチコア環境,あるいは分散ネットワーク環境において課題となっている 同期と相互排除に関する問題のほとんどを網羅している. 言い換えれば,現時点の課題の大多数は,20年前に解かれていると 言い切れるかもしれない. (もちろん,アルゴリズムの効率化や,実行環境の速度等に合わせた最適化は 現在も引き続き行われているが.)

本書では,アルゴリズムの説明にPascalに似た疑似コードを使っている. しかし,本書の本文中では逐次処理にとどまらず,HoareのCSPや分散プロセス, メッセージ通信など現在の並行処理や分散処理の基本となる概念が くまなく網羅されており,疑似コードも書籍を読み進めるに従って, 内容が拡張されていく仕組みになっている.そういう意味では,読んでいて楽しい. もっとも,例示されているそれぞれの疑似コードを咀嚼して理解するには, かなりのプログラミングの経験が必要だが.

本書のページ数は256と少ないものの,気軽に片手間で読める本ではない. 本書のテーマである「際どい部分」(critical section)や 「際どい資源」(critical resource)の扱いは, 一歩間違えれば,大変な事故を引き起こしかねないものだからだ. 別の言い方をすれば,この本を一通り理解できるようになったら, ソフトウェアエンジニアとしては一人前と言えるかもしれない. 日本語で並行処理を理解する上で,本書は必読といえるだろう.

2011年4月4日

Erlang Workshop 2011 のご案内

関数型言語の国際会議 ICFP の今年の開催地は東京です.ICFP のアジアでの開催は初めてですね.HaskellもGHCがGitHubに移ったり,OCaml,Scala,F#と,関数型言語も随分増えてきました.そんな訳で関数型言語界隈はこのごろ活気付いて います.

2011年は日本における関数型言語ブレイクの年になるか? なると嬉しいなあ…という方にお知らせです.

ICFP 2011 に併設して Erlang Workshop 2011 が開かれます.Erlang Workshop にはどなたでも参加できます.発表内容の議事録を見ると,コンパイルや形式変換などのプログラミング言語理論だけでなく,テストやライブラリの話など,Erlang/OTP 関連技術の実践応用に至る幅広い論文発表がなされています.

「Erlang,良さそうなんだけど,本当に関数型言語として使えるの?」「Erlang/OTPの上に乗っているCouchDBやRabbitMQは使っているけど,他にどんな使い方があるんだろう?」…そんな疑問を持っている方は是非 Erlang Workshop に参加してください.世界中のErlang経験者が一堂に会して,Erlang/OTPの奥深い技術について聞けるのは,Erlang Workshopだけです.

さて,Erlang Workshopは聞くだけではなく,発表をする場でもあります.特に今年は日本での開催ですので,是非是非日本の皆さんのErlang/OTPによる取り組みをご紹介していただければ,主催者達も大変喜ぶかと思います.

発表の形式は以下の3つです.

  • 技術論文: 言語拡張,現状の改善,言語構成要素の形式意味論,プログラム解析と変換,仮想マシンの拡張とコンパイルのテクニック,他言語でのErlangの実装や他言語とのインターフェース,その他新しいツールについて.最大12ページ.
  • 実践応用論文: 実世界でのErlangの応用.特定作業のためのライブラリ,特定分野における応用からもたらされた経験,問題解決でのErlangのエレガントな応用.最大6ページ.(ここへの投稿は次のポスター発表に割り当てる可能性がありま す.)
  • ポスター発表: 本ワークショップの目的に合致した話題に関する説明.最大2ページの発表の概要(abstract)と要旨.発表は1時間のデモ枠で複数個同時に行われます.
の3つとなっています.

論文投稿の方法の詳細については Call For Papers (http://www.erlang.org/workshop/2011/) を参照してください.

締切等についてですが

  • 論文投稿締切: 2011年6月3日
  • 論文査読結果通知: 2011年6月17日
  • 最終原稿締切: 2011年7月13日
  • ワークショップ: 2011年9月23日
という流れになっています.

実は,私はこのワークショップの実行委員長です.会場でお会いできるのを楽しみにしております.Erlang Workshop 2011へのご支援,ぜひよろしくお願いします.

CUFP 2011 Tokyoに関する紹介ページ にインスパイアされて(笑)書いてみました.)

2011年3月30日

挫折の先に見えたもの

(新卒準備カレンダー2011春 http://atnd.org/events/13324 向けのエントリーです.
@happy_ryoさんから引き継ぎました.)


私の自己紹介などは
に掲載しています.

そしてこの文章の他にも以下のリストにある記事を書きました.このblogの中の関連記事には newgrad2011 というタグを付けています.参考になれば幸いです.


これから社会人になる人達にとってはもちろんのこと,そうでない人達にとっても,2011年3月11日の東北地方太平洋沖地震で,皆さんの生活は大きく変わっていると思います.この記事を書いている2011年3月29日現在,地震とそれに関連して生じた災害について,私が1995年の阪神淡路大震災の体験から言えることは,疲れは後から出てくるものなので決して甘くみてはいけないということ,そして,この地震から立ち直るためには,10年以上の非常に長期の作業を強いられるだろう,ということしかありません.

ただ,私個人が過去45年あまりの人生の体験から何か確信を持てることがあるとすれば,挫折の先にも待っているものはあるし,挫折を受け入れることによって人間は次の段階に行ける,ということだと思います.

私にとっての最初の人生の挫折は,1975年,10歳の時の日本帰国時のショックでした.当時「帰国子女」といういささか違和感のある用語が文部省(現在の文科省)によって作られましたし,私に限らず多くの帰国者がこの用語で色眼鏡で見られたように思います.そして,私も他人との接しかたが他の人達と違うことから,随分嫌なレッテルを貼られました.ただ,幸いにして自分の人生を支えるものとして,電子技術やアマチュア無線,そしてコンピュータとその時に出会えていましたから,ひどくふさぎ込むようなことはなかったように思っています.

そして次の挫折は,1982年,17歳の時に,右眼の白内障,そして網膜剥離を発症したことです.現在も右眼の水晶体はない状態です.細かい原因についてはあえて触れませんが,これで正確に立体視する能力を失いました.車の運転免許を持っていないのはそのためです.結局1986年までの間に4回手術することになりました.車の運転ができない,というのはなかなか嫌なもので,特に米国やカナダのように車がないと生活に不自由する国では事実上働くのが大変困難になった,ということを事実として突き付けられました.シリコンバレー云々という話も,健康あってのことですし.最初の手術直後は大学入試もあきらめかけていました.まあその後なんとか大学には入って出るわけですが….

さらに次の挫折は,1992年,27歳の時です.修士を出た1990年から2年間,Digital Equipment Corporationの日本法人である日本DECという会社で働いていましたが,身体がどうにもついて行かず,当時の婚約者(現在の妻)が大阪に仕事が決まったこともあり,辞めることになりました.当時はインターネットの研究をしたいといっても受け入れてくれるところはなかったのですが,東京の会社の研究所を立ち上げるために京都で仕事をさせてもらうことになり,なんとか社会人の人生を続けることはできました.今思えば薄氷を踏む思いでしたが.修士卒でしかない人間が研究所云々を言える状況ではないと知ったのは,大分後のことです.結局博士を取るには2005年までかかりました.

これで挫折は終わりません.1997年,妻が強度のテクノストレスのため,うつ病を発症しました.彼女は3年間休職することになります.そしてその後,2002年,37歳の時に,今度は私が悪化していたアトピー性皮膚炎が原因で感染症を発症してしまいました.3週間あまりの入院を経て,もう自分は身体に無理が効かないことを悟りました.その間,2000年末には1992年から続けてきた研究所の活動を終了し,正社員の身分を捨てて,2001年以降現在に至るまで契約社員(任期付き雇用)の道を歩むことになります.契約社員の道を選んだのは,通勤に耐えられる身体ではなかったというのも理由の1つです.家族の介護と自分の病気のために,1997年12月~2005年8月までの間日本を出国できなかったことは,多大なる機会損失であったと思います.これは誰の責任でもなく,他に守るべきものがあったから日本にとどまったのだといえばそれまでなのですが.

そして2009年度はひどいものでした.5年間の任期が切れようとしていても,公募にはことごとく落とされ,次の仕事が決まらず,つくづく契約社員(任期付き研究員)というのは厳しい身分だというのを思い知ることになります.幸い今の仕事の公募を紹介していただき,2010年に入ってどうにか就職することができましたが,当然条件として(裁量労働とはいえ)通勤が前提でした.今思えば人間の身体というのは結構環境に適応するものだと笑って済ませられることでしたが,当時は本当に不安でした.なにしろ日本DECを辞めた直接の理由は,東京-横浜間の長時間通勤とそれによる睡眠不足だったからです.

そして現在の仕事も,2014年9月末までの任期となっており,安定した身分とはいえません.期間を定めず雇用されている人達(企業でいえば正社員に相当)と比べると,不安定な立場であることは否定できません.まあ,それでも過去に培ったインターネットとテレワークの技術と経験を駆使して,どうにか身体と折り合いをつけながら仕事はできていますが,決して無理は効きません.北大阪-京都市内の通勤は東京-横浜間に比べれば負荷は軽いですが,これも甘くみることはできません.仕事を続けるために,多くの人付き合いをあえて断り,お酒も止めて節制しています.


さて,それでも続けるような価値のある仕事を自分はしているのでしょうか.

思えば1988年,修士の際配属させていただいた関数型言語の研究室では,およそ関数型言語になじめず,「お前はインターネットで遊んでいるだけで研究なんかしていないじゃないか」と怒られたこともありました(事実ですから否定はできませんが).そして,その後も「お前は博士も持っていないのに」「お前は通勤もしていないのに」と,批判を多々受けてきたことは否定できません(これも事実ですから受け入れるしかありません).現に,周囲を見れば,年齢はそう変わらずとも私には遠く及ばない立場で大活躍している先輩方が多数おられますし,自分の研究者人生は他の人達より少なくとも10年は遅れています.1921年3月30日生まれだった父はこの記事が公開されるときはちょうど生誕90年(父は2004年8月に83歳で亡くなりましたが)ですが,父の業績にはおそらく私はどんなに頑張っても数でも質でも及ばないでしょう.

しかしながら,今の自分を見てみれば
  • 修士の時およそ大嫌いで単位も落としたPrologと文法も構文も似ているErlangという言語を使う立場になっている(苦笑)(Prolog使いの方々は尊敬しております.20年前には私の頭の出来が悪かったので理解できなかったということです.)
  • 結局通勤地獄の戦線に復帰している(笑)(とはいえ,労働時間は弾力的にさせていただいていますが.)
  • 過去のOS開発の経験は,今やっているErlangの一部であるOTPの研究に,大いに役立っている
  • 曲がりなりにもどうにか博士にもなった(苦笑)
  • あれほどイヤだった大学の教職員になっている(笑)
  • 技術の進歩により,世界中の大変優秀な人達,特に若い人達の話を聞ける幸せを噛み締めている
…ということで,結局,挫折の先にも何か得るものはあったのかな,という結論を得ています.きっと,続けている意味はあるのでしょう.

もちろん明日は何が起こるかは誰にもわかりません.関東地方の研究者で,地震の結果の災害が原因となった計画停電が理由で研究計画の実行を実質的に中断しなければならなくなったという話も聞いています.とても不幸かつ残念なことです.そして,今の任期が終わる時,私に次の職があるかどうか保証はありません.(そのときはぜひ仕事させてください :-) )

それでも,何か続けていれば,どうにか生きていけるものなのかな,という,曖昧模糊とはしていますが,未来への確信はあります.もし挫折で人生がイヤになったら,一休みするのも手だと思います.泥まみれになれば,どうにか道は開けるものです.人生は,継続学習そのものなのでしょう.そして,コンピュータの世界は,まだまだ可能性に溢れていると,私は思います.


ようこそ,コンピュータ技術者の世界へ

(次は@masaru_b_clさんです.)