2016年2月20日

Software Design誌にて「Erlangで学ぶ並行プログラミング」を連載しました

技術評論社のSoftware Design誌にて,力武健次技術士事務所 所長 力武 健次が,同誌2015年4月号より2016年3月号まで「Erlangで学ぶ並行プログラミング」と題して連載を行いました.ぜひご一読いただければ幸いです.

2016年2月18日

大学で過ごした日々

1984年から東大で学部から修士まで6年間、2002年から阪大にて外部の研究協力者として、また社会人博士の学生として3年過ごし、2010年から京大では教授として3年弱勤務した。残念ながらそれらで得た結論は皆同じで、どこも組織としてはダメだった。もちろんその過程でいろいろな出会いはあったし、勉強もできたことを考えれば、全部無駄だったとは思っていないけれど。

最初に大学に行ったときは、コンピュータ屋は目指していなかった。大学の中では計算機屋の地位は低い。そして率直に言って日本の大学は計算機科学のレベルは高いとはいえない。東工大のTSUBAMEのような例外的成功例はあるが、基本的に米国の後追いを越えていないし、また越えられない理由が無数にある。もしコンピュータ屋を目指すのであったなら、学部の時点でUC BerkeleyやStanfordやMITを目指すべきだったと思っている。もっとも、お金もなかったし体力もなく健康でもなかったので叶わぬ夢だったが。

もっとも、そうはいっても、結局、自分は理論物理屋も地球物理屋もできず、さりとて成績も良くなかったのでそもそも理学部情報科学科への進学はかなわず、工学部応用物理関連学科群に進学することになった。本格的にコンピュータ屋に復帰したのは、修士の時に情報工学専攻で学ぶことになってからである。これが良かったのかどうかは、自分では判断できない。まあ、好きなことではなく、目をつぶってでもできることでなければ人間はロクに稼げないので、そういう意味では向いていたのかもしれない。

21世紀になっても相変らず旧7帝大が権勢を振るっているのが日本の実情だと個人的には思っている。国公立私立を問わず、文科省が生殺与奪を握っている以上、これは不可避かもしれない。国立大学も2006年に国立大学法人と名称を変えたとはいえ、どの大学も運営は官僚的そのものであり、計算機科学のような論文数も少なく何をやっているかわからない分野には理解は低い。

大学は基本的に外部との交流をものすごく嫌う。中の組織は皆それぞれの派閥を作りたがるので、常に相互監視疑心暗鬼の世界にある。このような状況はこの30年弱で変わるかと思ったが、大して変わっていない。かつて京都大学にて全学の情報セキュリティに関する仕事をしていたときには、多くの教員から敵意に満ちた批判を受けた。まあ職務上無理からぬこととはいえ、組織としての統制がまったく効いていない状態では、徒労感のみ残る仕事だったことは否めない。実際には、統制される側が自律しているとはお世辞にもいえない状況であり、日々起こる事案に対応しなければならず、現場は混乱の極みだった。

京都大学でもう一つ感じたのは、学生が自由を求めていろいろ騒ぐのはいいとして、本来それを受け止める側の教員までが同じように騒いでいる例が少なくないことだった。京都大学は対話を重視する大学をスローガンとしてかかげているが、実際には各人自分勝手な主張をしているだけで、何の対話にも教育にもなっていないように見えた。もちろん粛々と日常業務をこなし、一切動じていない先生方もたくさんおられたのもまた事実だが。自分もそのような日常業務をこなし、一切動じない教員になろうと努力はしたが、あまりにも不条理が多く、プロパーでないことによる立場の低さはいかんともしがたい状況であったため、結局健康を害してしまった。

そんなわけで、自分は大学に関しては、人生選択を誤ったなというのが率直なところである。計算機科学に限定するならば、北米のトップの大学へ行った方が遥かに実践的な勉強ができただろうし、現在なら他の選択肢はないに等しいだろう。

ただ、学術研究そのものに対する締め付けとコスト高騰の波は日本以上に北米は厳しい。コンピュータ屋の場合、大学を出てさらにテックベンチャーで滅私奉公して働くことを覚悟しない限り、自己破産でも免除されない学資ローンの借金で首が回らなくなることは想像に難くない。それが本当に正しい人生の選択なのか。そしてサンフランシスコの超高コスト社会で大きな出費を強いられるのが良いことなのか。


何が正しいか、今の私にはわからない。それが率直な感想である。

(初出: Facebookの個人アカウントでのNotes 2015年9月26日)

2016年2月8日

CROSS2016に参加して

先週2015年2月5日金曜日に、横浜にてCROSS2016というソフト屋/Web屋さんのためのイベントがあったので、行ってきた。アンカンファレンスではACM Erlang Workshop 2016とErlang Factory SF Bay 2016の話もしてきた。

CROSS2016には個人スポンサーとして参加した。これは自分のいた会社の元同僚が登壇者として出ていたこと、そして広告を出していただける珍しい機会だったことが理由だ。あと、登壇者の中にはずっと会いたかった人達がいたので、挨拶をしておきたかったというのも理由だった。(言い換えれば、そういう理由がない限り、自分が主たる登壇者にならないようなイベントに行くことは最近はまずなくなりつつある。)

各セッションの内容についての感想は以下の通り(プログラム)。

  • 労使の本音バトル: これはノーチラステクノロジーズの神林さんが言っていることがいちいち腑に落ちていて、結局 ship or die あるいは release or quit でしかないという感想しかなかった。別に何をやっていてもいいのだが、納期が守れないとどうにもならない。もちろん私も納期をトばしてしまったことは25年前ぐらいには何度かあったので他所様のことはいえないが。仕事を楽しくできることはもちろん大事なことだが、一度仕事を受けたら完結させるしかないというのは楽しい云々以前の問題だろうと思う。
  • 業務システムをRDBなしで作れるのか: このセッションは事前の資料なしには理解できない内容だったが、RDBなし、というのは、トランザクションを他のやり方で実現、あるいは担保するしかない、という基本に忠実な発表だったと思う。
  • 先達に聞くこれからのエンジニア像(この記事に概要がある): 登壇者の御三方の論調は予想できていたし、まあ率直な話勉強会にすら行かせてもらえないような会社で仕事なんかしたくないだろうなあとは私も強く思うのだけど(そういう制約がイヤで結局組織人としての人生を23年間で止めてしまったわけだし)、それが世間の常識と強弁できるほど世の中は甘くもないだろうなあという感想もあった。まあ日本には職業選択の自由と移動の自由が基本的人権としてあるはずなので、それを行使するもしないも個人次第だとは思う。伊勢さんの「死ぬわけじゃないんだからいいじゃん」というのには大いに笑った。怒られても殺されるようなことはない、というのはその通りだし。(もっとも、私は死にそうな目に遭ったこともあるので、死にそうになったら辞めるなり逃げるなり休むなりしたほうがいい、ということは強調しておく。)
  • 日本でのグローバルなプロダクトやサービスの開発とは: モデレーターの小野さんは登壇者の4人を御すのが大変だったろうと思うが(4人ともとても優秀な人達なので)、見事にリードしておられましたね。まあ、世界中で使ってもらえないようなプロダクトをOSSで作ってもしょうがないので、公開するOSSは全部英語でドキュメント作るべき、とは思う。OSSでなくて、特定のお客さんから日本語で作れという要請があれば、日本語でやればいいけど。あと、会場で時差の話が出ていたが、それについてはこのQiitaの記事に言いたいことは一通り書いているので、ぜひ読んでいただければ嬉しい。
  • アンカンファレンスではこのスライドの通り話をしました。終了後声をかけていただけたのはありがたい限り。

イベント全体はそれなりに良く運営されていたと思うのだけど、1つ苦言を呈するとすれば、会場の音響がメチャクチャで複数のセッションのPAスピーカーからの音が激しく干渉してロクに各セッションの音が聞こえない状態だったのは、とても残念だった。これだと何のためにイベントをやっているのかわからないので、音響の問題は次回はぜひ改善していただきたいと思う。あと、A会場/B会場では、照明の関係で話者の顔が見えないという指摘が知人からあった(その通りだと思う)。

ともあれ、今回は会うべき人達には皆ご挨拶できたし、それなりに楽しめたので、スポンサーシップを提供した意義はあったと思う。来年はぜひ音響面だけは改善してより良いイベントになることを期待したい。

2015年12月30日

2015年を振り返って

気がつけばもう年末になろうとしている。

2015年は昨年から始めた情報セキュリティ関連の翻訳に加え、Webのフロントエンド技術、インターネットへのハードウェア接続技術 (Internet of Things)など、昨年からさらに幅を広げて活動している。詳細は守秘義務があるので控えるが、今後とも仕事として自分でできることは何でもやっていく覚悟で活動している。以下に対外活動の中で主なものを記す。

  • 1月よりErlang/OTPのrandomモジュールを後継する疑似乱数モジュールの開発が始まり、3月にはサンフランシスコのErlang Factoryにて、疑似乱数の高性能化に関する発表を行った。この成果は5月にErlang/OTPバージョン18から取り込まれることとなり、京都大学に勤務していた時から5年越しで続けてきた研究開発の成果を世に送り出すことができた。
  • 技術評論社の雑誌Software DesignにErlang/OTPに関する連載を同誌2015年4月号から12回の予定で続けている。2015年8月号にはElixirの記事も執筆した。
  • 4月に情報処理技術者試験の情報セキュリティスペシャリスト試験を受験。薄氷を踏む思いだったが、6月に無事合格通知をいただく。
  • 昨年12月からのIngressでの活動は、5月上旬にSojournerメダルをもってA11を達成した時点で終了。ならびに関西地区(PA01-ALPHA-00)各地で普段歩かないところを歩いたのはよい人生の経験になった。ただスマホの画面を1台破損したり、自分自身が顔面から倒れて負傷したりと、どんなゲームにもリスクはつきものであることも痛感した。
  • 6月には大阪大学基礎工学部にて5年ぶりに講義を行った。今回のテーマはsustainability、つまり情報環境の持続可能性に関して、さまざまな視点から問題を提起した。講義の内容はGitHubのレポジトリで公開している。
  • 7月から8月にかけて、ARM Cortex-M3ベースのSTM32F103の学習を兼ね、新部裕さんのNeuGの製作実験と追試を行う。この結果STM32 Nucleo Dongle部でのNeuGの実装に成功。FreeBSD用の物理乱数注入ドライバOS X用の物理乱数取得ツールも開発し、後述のavrhwrngにも応用できる物理乱数の運用環境を整えた。すでにNeuGやavrhwrngは運用レベルでの実験を行っている。
  • 2013年から続いていた東京の実家の取り壊しと改築が8月末に終了。これに伴い9月より東京の拠点を開設。12月には大阪の家とIPsec VPNおよびIPv4/IPv6のグローバル/プライベート接続を行い、ネットワークの実験環境としても利用可能になった。今後はこれまで以上に東京での活動を増やしていくことになるだろう。
  • 11月には情報処理学会第8回インターネットと運用技術シンポジウム(IOTS2015)にて、情報セキュリティを確保する上に不可欠である物理乱数を生成するArduinoのための廉価な(秋葉原の電気街で2千円以下で調達できる)ハードウェアavrhwrngに関する発表を行った。この成果はGitHubのレポジトリにて公開している。この開発に伴い11月にはデジタルオシロスコープを導入した。
  • 12月にはQiitaにてC言語FreeBSDのアドベントカレンダーを開設し、自らもErlangElixirなどのカレンダーを含め22件の日本語の記事を投稿した。
  • 昨年12月から運用しているFlightRadar24.comの受信局は、NTT西日本やASAHI-NETの障害による事故はあったものの、順調に動いている。今年はさらに近隣の受信局と協力してMLATによる位置推定も行われている。KIX/ITM/UKBあるいは関西/伊丹/神戸各空港の混雑した大阪湾近郊の空域の状況通知には十分寄与できているようだ。

一方、昨年同様、多くのものを捨てなければならなかったのもまた事実である。これもいくつか列挙していこう。

  • アマチュア無線の活動のうち、従来の短波交信に関するものは、記録の整理を除いては新規には行っていない。今年は全く新規交信のない1年となることがほぼ確実である。
  • 物理メディアからの脱却を図っている。CDとDVD以外の音楽メディアや過去の活動に関する書類は必要最低限に限り封印して保管することとし、技術系の紙の図書は大部分を売却した。今後も情報のmedia consolidationは続けていくことになるだろう。
  • 自分の技術系情報の公開場所はGitHubと日本語ではQiitaに集約しつつある。技術情報の配布については、このblogが使われることはもうなくなるだろう。記録としては残していくし、今後状況が変わったらまたこの場所を使うことは大いにあり得るが。
  • Twitterでの議論は昨今の社会状況を鑑みる限り(ごく専門的な技術的事項を除いて)事実上不可能になったと判断し、SNSの付き合いの大半はFacebookに移した。Facebookは知人あるいは業務上連絡を取る必要がある場合のみの運用としている。
  • 生活は引き続き厳しい。事業開始2年目であり当然ともいえるが、引き続き業務に直接つながらない出費については緊縮財政に努めている。

2016年のことはもう想像もつかない。昨日を終えて今日を生きていられることは必然ではなく奇跡なのだと思って、日々の生活と業務に精励するしかないだろうという覚悟で2016年も活動していく所存である。

2015年12月26日

力武健次技術士事務所 2015年年末年始営業予定


力武健次技術士事務所は2015年12月26日〜2016年1月3日の間は休業と致します。(現在作業中の案件についてはこの休業期間中も可能な限り迅速に対応させていただきます。)どうぞ皆様もよい年末年始をお迎えください。

2015年12月25日

QiitaにてC言語とFreeBSDの2015年度アドベントカレンダーを開設しました

2015年12月1日〜25日の間、プログラミング知識共有サイトQiitaにて、力武健次技術士事務所 所長 力武 健次が、C言語に関するアドベントカレンダーFreeBSDに関するアドベントカレンダーを開設しました。どちらのカレンダーも多くの参加者と投稿者に恵まれ、有意義な情報が集まって意義あるものになったかと思います。

なお、力武はこの他のアドベントカレンダーにも参加し、期間中22の記事をQiitaに投稿しました。

2015年12月18日