工藤探偵事務所 このページをアンテナに追加 RSSフィード

 

2012-11-18 OK Computer, Soliloquy of a Super Engineer (10)

金田正太郎

[][][][] 第10回“OK Computer”

とあるメルマガに書いた原稿です。

2012年04月号(2012/04/19日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (10) OK Computer @ Thu, 19 Apr 2012

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇ 『スーパーエンジニアの独り言 第10回“OK Computer”』          ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

f:id:kudo-shunsaku:20121118124801j:image:medium

Kaneda's Electric Motorcycle from AKIRA

幼き日々に夢見ていた未来世界のパノラマが唐突に急接近してきました。

f:id:kudo-shunsaku:20121118184340j:image:medium


太陽光発電電気自動車、ここ数年で実用化され現実に普及し始めています。

リニアモーターカー、電気バイクはもう少し先には実用化されるのでしょう。

歴史あるマン島レースにて電動バイクレース(TTxGP, TT Zero)も盛んになり、

あの「金田のバイク」が近い将来には市販されることを期待させます。

f:id:kudo-shunsaku:20121118185553j:image:mediumf:id:kudo-shunsaku:20121118124206j:image:medium

Scotty trying to talk to the mouse on an Apple Macintosh in Star Trek IV

情報通信では、ビデオシーバーはスマートフォン、それにSkypeFaceTimeで、

音声操作は、Siri、Evi など音声認識技術を駆使して実現されつつあります。

f:id:kudo-shunsaku:20121118125840j:image:medium

S.F.でコンピュータを音声操作する場面としては、映画版スタートレック

(Star Trek IV: The Voyage Home (1986))

の一場面で過去にタイムワープしたチャーリー(スコッティ)が、Macintosh

マウスを持って話しかけるシーンが秀逸です。音声入力だと勘違いしたのです。

USSエンタープライズ号のコンピュータ(LCARS)は、音声操作だからです。

スコッティはこの後、凄い勢いでキーボードをタイプします。

f:id:kudo-shunsaku:20121118125017j:image:mediumf:id:kudo-shunsaku:20121118125437j:image:medium

現実にもGoogleがMajelという音声認識エンジンを開発中であるとの事で、

これは、スタートレックコンピュータの声を演じた「Majel Barrett」に

由来する名前だそうです。今年中にはお目見えすることになりそうです。

Computer Interface in JM looks like Power Glove of Nintendo's Family Computer

f:id:kudo-shunsaku:20121119195835j:image:mediumf:id:kudo-shunsaku:20121118183640j:image:medium

コンピュータへのインターフェースとしては、ウィリアム・ギブスン原案映画

「JM」でのキアヌリーブスを思い出します。アイマスクとグローブを装着して

手を動かすことでネット接続し体感的に情報を操作する姿は、まさに理想の

インターフェースでありましょう。グローブと言えばですが、ファミコンでの

パワーグローブ」というコントローラが思い出されます。更にゲームコント

ローラと言えば、Kinectセンサーが画期的な入力装置として登場しています。

ジェスチャーで操作可能な直感的なインターフェースは、アクセシビリティ

効能は勿論の事、ゲームの枠組みを超えて様々に活用もできることでしょう。

f:id:kudo-shunsaku:20121118124843j:image:mediumf:id:kudo-shunsaku:20121118125808j:image:mediumf:id:kudo-shunsaku:20121118124917j:image:medium

Cyber ​​Glasses "Dennou-Megane" for Augmented Reality

前述のJMのワンシーン同様に、マトリックスでも仮想現実コンピュータ操作

する場面がありましたが、これらはAR(Augmented Reality)技術が可能にして

くれることでしょう。拡張現実と訳されるこの技術は、現実世界に情報を付加

して提示してくれるものです。セカイカメラを代表にスマートフォンなどを

中心にして幾つかのアプリケーションが登場し始めています。

f:id:kudo-shunsaku:20121118130110j:image:mediumf:id:kudo-shunsaku:20121118130135j:image:mediumf:id:kudo-shunsaku:20121118184918j:image:medium

Googleでもこの「拡張現実メガネ」を開発中との事でGoogle X Labを母体に

"Project Glass"と呼ばれ、メガネ型の機器に様々な情報がストリーミング

されてくるという代物です。国産メーカーでも同様な試みでテレスカウター

などというヘッドマウントディスプレイを企画している様子であります。

これらの未来メガネは、まさに「電脳コイル」を想起させるものです。

f:id:kudo-shunsaku:20121118130213j:image:mediumf:id:kudo-shunsaku:20121118183937j:image:medium

Panorama of Future World that Imagined Scenery at My Childhood Coming There

心象風景に浮かぶ未来世界への憧憬は、あれから何十年経っても現実世界に

お目見えして居ませんでしたが、急速に今、未来が眼下に見えてきました。

長年、地道に研究されていた基礎技術が開花の季節を迎えたのでしょう。

やっと二十一世紀香りが漂い、幼少期に眺めた絵本の挿絵が現実になる様を

眺める事ができるのでしょう。これからの変化を是非楽しみたいものです。

OK COMPUTER

f:id:kudo-shunsaku:20121118124614j:image:mediumf:id:kudo-shunsaku:20121118125218j:image:medium

更にもう少し先の未来、コンピュータが流麗な合成音声で「これを処理します」

と傍で聞きながら、単に「オーケー、コンピュータ。」と返事するだけで

事足りるような光景が描かれるのかもしれません。

f:id:kudo-shunsaku:20121118125253j:image:medium

f:id:kudo-shunsaku:20121118184620j:image:medium

f:id:kudo-shunsaku:20121118184433j:image:medium

では次回もご期待下さい。

f:id:kudo-shunsaku:20121118191106j:image:w300

2012-09-16 Gold Saints for Ruby, Soliloquy of a Super Engineer (9)

kudo-shunsaku2012-09-16

[][][][] 第9回“聖闘士への指南書”

とあるメルマガに書いた原稿です。

2012年03月号(2012/03/27日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (9) Ruby Gold Saints @ Tue, 27 Mar 2012

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
 ◆◇ 『スーパーエンジニアの独り言 第9回“聖闘士への指南書”』      ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

f:id:kudo-shunsaku:20110414232152j:image:small

Gold Saints of Saint Seiya

f:id:kudo-shunsaku:20110414210054j:image:small

黄金聖闘士(ゴールドセイント)」というのをご存知でしょうか?

日本発、フランスブラジル、海外も席巻した「聖闘士星矢」の用語です。

(実を言うと、最近知りまして車田正美原作本を全巻読ませて戴きました。)

拳闘で戦う剣闘士、つまり拳闘士の名称が聖闘士であり、その最強の聖闘士

認定されるのが、黄金聖闘士であり、最強防具である黄金聖衣(ゴールドクロス)

を纏い、黄道十二宮の星座の名を冠する事が許されるという最強の証なのです。

聖闘士は、その力量により厳密に階級分けされており、その差は千倍以上に至る

ということです。

聖衣の種別(階級)

◇ 青銅聖闘士ブロンズセイント)

◆ 白銀聖闘士(シルバーセイント)

黄金聖闘士(ゴールドセイント)

f:id:kudo-shunsaku:20120916172511j:image:smallf:id:kudo-shunsaku:20120916171724j:image:small

Ruby Official Certification Textbook

先日、「Ruby 公式資格教科書」が技術評論社から刊行されました。

副題が「Ruby技術者認定試験 Silver/Gold対応」とされています。

この出版されたばかりの本書を電車で吊り革にぶら下がり熱心に

読まれている方を目の当たりにして、Rubyへの求心力が高まっていることに

気づかされました。第三次Rubyブームの発芽かもしれません。

本書の内容に関してですが、単なる資格対策本ではなく「教科書」です。

これからRubyを勉強される方には勿論の事、既にお使いでご存知の方も一度、

知識の整理整頓、棚卸しのためにお役に立つことかと思われます。例えば、

スレッド排他制御のためのミューテックスロックにまで解説があります。

書店にて一度お手に取られてみては如何でしょうか、是非お薦めさせて戴きます。

@masuidrive as furo-grammer (programming in bath)

一足も二足も早い出版記念セミナーが弊社のラーニングセンターで開催され

著者の増井さんをスピーカーにお招きして多くの方々に好評を博しました。

セミナー資料は、弊社教育サービスホームページにて公開しております。)

著者の皆様は、今後も各所で出版セミナーを開催が予定されている様です。

Have you ever felt Cosmo Burning inside you?

ところで冒頭での話題ですが、一部のRubyist(Rubyの愛好者)達の中では、

Gold認定取得者を「黄金聖闘士」と呼称(自称)することがあるようです。

f:id:kudo-shunsaku:20120916173917p:image:smallf:id:kudo-shunsaku:20120916173916p:image:smallf:id:kudo-shunsaku:20120916173915p:image:smallf:id:kudo-shunsaku:20120916173914p:image:smallf:id:kudo-shunsaku:20120916173913p:image:smallf:id:kudo-shunsaku:20120916173912p:image:smallf:id:kudo-shunsaku:20120916173911p:image:smallf:id:kudo-shunsaku:20120916173910p:image:smallf:id:kudo-shunsaku:20120916173909p:image:smallf:id:kudo-shunsaku:20120916173908p:image:smallf:id:kudo-shunsaku:20120916173907p:image:smallf:id:kudo-shunsaku:20120916173906p:image:smallf:id:kudo-shunsaku:20120916173905p:image:small

認定はまさにRubyの力量を示すものであり、力の差が千倍にも及ぶという喩えを

あながち「プログラマの現実と似て非なるもの」と一笑に付す事は出来ないでしょう。

この認定資格を「杖」としテスト駆動開発の如く目標である山頂を目指す事で

ご自身の能力増強を図る事も出来るのではと思い至ります。

これを気に、無名の聖闘士たちの方々もご自身の力量を具現化するために聖衣を

纏うのも一興かと思います。白銀(シルバー)そして黄金(ゴールド)へと。

f:id:kudo-shunsaku:20120916171039j:image:small

「君は小宇宙(コスモ)を感じたことがあるか 」 

f:id:kudo-shunsaku:20110414210056j:image:small

では次回をお楽しみに。

f:id:kudo-shunsaku:20120916193959j:image:small



黄金聖闘士、誕生。 - 工藤探偵事務所

2012-07-01 Ruby 1.9 highlights for Hidemaru editor has been improved.

kudo-shunsaku2012-07-01

[][] 秀丸エディタRuby1.9プログラミング用 強調表示定義ファイルを改良しました。

Ruby プログラミング用 強調表示定義ファイルは、秀丸エディタにてRubyソースコードが見やすくする、という目的で利用出来るものです。今回は、Ruby version 1.9.X で見やすい表示できるようなものを作りましたので公開させて頂きます。

Windows で Ruby をとお考えの方は、宜しければお試し下さいませ。

f:id:kudo-shunsaku:20120701192319p:image:small

秀丸エディタRuby用強調定義ファイルですが、Ruby1.9ソースコードで使おうと修正していましたが、そのついでに更にソースコードを見やすくしようと想いまして、少し改良しました。この改良が幸いしまして、かなり見やすくなったと想います。変更の差分は以下のREADMEをご参照下さいませ。*1

宜しければですが、皆さんにも是非使って貰おうと「秀丸」本家の頁にアップロードしてあります。現在公開して頂いておりますのでダウンロードしてお使い下さいませ

ファイル名は、

Ruby プログラミング用 強調表示定義ファイル Ver1.9.3-p194

としました。

f:id:kudo-shunsaku:20120701192306p:image

秀丸ユーザの方は、お試しにお使いになってみて下さい。

もし宜しければ、乾燥の芋など頂けると幸いです。


Uploaded

アップロードしたもの。

Ruby プログラミング言語をお使いの方はコチラをどうぞ。

f:id:kudo-shunsaku:20120701192319p:image:small

Ruby プログラミング用 強調表示定義ファイル Ver1.9.3-p194
Ruby プログラミング用 強調表示定義ファイル Ver1.8.6 patchlevel 1
Ruby プログラミング用 強調表示定義ファイル Ver1.8.6

Java プログラミング言語をお使いの方はコチラをどうぞ。

f:id:kudo-shunsaku:20120701194901p:image:small

Java プログラミング用 強調表示定義ファイル Ver1.5
Java プログラミング用 強調表示定義ファイル Ver1.1
Java プログラミング用 強調表示定義ファイル Ver1.0

他にも有志の方々がアップロードされた色々な定義ファイルもあります。

秀丸エディタの強調表示定義ファイルライブラリ
秀丸エディタ強調表示定義ファイルライブラリ:ダウンロードランキング


README

下記に添付した README ファイルの内容を一部を抜粋して掲載します。


 Ruby プログラミング用 強調表示定義ファイル Ver1.9.3-p194

	(秀丸エディタ Ver8.13 で実行しています)


				フジエ カズヒロ
				June 15, 2012

拝啓。

Rubyでのメインストリームとなるバージョンが、1.8.x から 1.9.x へ
と移りつつある様子ですので、今更ながらではありますが、
以前公開したものを改修して1.9用に対応させてみました。
(現行リリース "Ruby 1.9.3-p194" をベースに作成したものです。)

また今回は、コーディングの際での更なる利便性を図るために、
シンボルやインスタンス変数、クラス変数、定数などを見やすくする
ための工夫も加えてあります。これでかなり見やすくなりました。

1.9で追加されましたハッシュでのシンボルでの簡易表記方法も
ハイライトするようにしてありますので、ご心配なくどうぞ。

ex. {a: 1, b: 2}

宜しければお試し下さいませ。

敬具。


How To Setting of Hidemaru


0. 設定手順

設定方法の手順(例)についてご紹介させて頂きます。

(1) Ruby強調表示定義ファイルを所定の位置に配置する。
(2) Ruby言語用の設定リストをつくる。
(3) 背景の配色を黒バックにする。
(4) Ruby用の初期設定を行う。
(5) Ruby強調表示定義ファイルを設定する。
(6) 強調表示の色を変えてみる。

といった手順です。

以下でご説明します。

1. コピー

 まず、解凍してできた、強調表示定義ファイル "Ruby193-kfujie.hilight" を、
秀丸ディレクトリにコピーします。

これで下準備はオーケーです。

2. 設定のリスト

 その後に、Rubyのソースファイルを選んで、
(もしなければ、拡張子が「.rb」というファイルを作って)秀丸で開きます。

ファイルが開きましたら、ウィンドウ上部のメニューから、

「その他」→「ファイルタイプ別の設定」から「設定のリスト」ボタンを押して、
「設定のリスト」ダイアログを開きます。

「C言語ソースファイル」を選んだのち、「コピー」ボタンを押します。
ダイアログが出てきて新しい名前を聴かれますので、名前を「Ruby言語ソースファイル」」
など名前をつけましょう。

これで Ruby用の設定項目の雛形が出来ました。


この後、これを変更していき Ruby 用の設定にします。

3. 背景の配色

これはあくまでお好みですが、配色の設定です。

通常は、白い背景で操作していると想いますが、
私自身が使用するときは、背景が黒い色の方が、
見やすいです。

(黒の画面に緑とかオレンジなどの文字とか。もしかして古い人ですか?ね。)

これを行うには、

先ほどと同様に、「その他」→「ファイルタイプ別の設定」から

「その他」→「ファイルタイプ別の設定」でダイアログが表示されます。
この中にある「デザイン」項目を選択します。
(秀丸エディタのバージョンに拠っては「表示とカラー」という名前になってたりします。)

そこにあるボタンの

「リセット/統一」→「黒い背景の配色にリセットする」

を選択します。

これを行うと画面の配色を一度に変更できます。

これで設定の第壱段階終了です。

補足:

この「デザイン」項目の「場所の一覧」の中で使用するスタイルを
チェックボックスで選択できます。
「数値」が選択できますので、数値リテラルを色づけできますので
是非、選択しておきましょう。


4. Ruby 用の設定

 秀丸の標準で「複数行コメント」などの区別をしてくれる設定が
Ruby用も用意されています。まずはそれを設定しましょう。

先ほどと同様に、「その他」→「ファイルタイプ別の設定」から
「デザイン」の項目の下にある「複数行コメント」を選択します。

表示上方に「複数行コメント(C):」というトグル・スイッチがありますので、
「言語指定」というのを選んで●(チェック)を入れて下さい。

そうすると表示下方では、様々な言語が選べるようになりますので、
無論、此処で "Ruby" を選びます。

これで、文字列やコメントなどが自動で認識されて、色がハイライトされます。

最後に画面最下部の左にある「OK」設定を保存します。
(この動作は以降の設定後も逐次行って下さい。)


これで設定の第弐段階終了です。


5. 定義ファイルを読み込み

そして肝心の強調表示ファイルを読み込んで設定をします。

先ほどと同様に、「その他」→「ファイルタイプ別の設定」から
「表示とカラー」の項目の下にある「強調表示」を選択します。

「強調表示」のチェックボックスが選択されている筈です。
(されていない場合は、「強調表示」のチェックを入れます。)

画面右下にある「読込み」ボタンを押して、強調表示用の定義ファイルを
読み込む指定をします。

ここで事前に用意していた "Ruby186-kfujie.hilight" が選べる筈ですので、
これを選択して「OK」ボタンを押して読み込みます。

ここで現在開いているご自分のファイルにRubyソースコードが記述してあれば、
綺麗に色分けされている筈です。ご確認下さい。


これで設定の第参段階終了です。

6. 強調表示の色

また、標準の色の割り当てが好みでない時は、
「表示とカラー」で表示される「場所の一覧(P):」から
下記の項目をを選んで、好きな色を設定出来ます。

	強調表示の		(黒い背景色の場合の)
	番号			最初の色

	強調表示1		白色
	強調表示2		黄色
	強調表示3		若草色
	強調表示4		桃色
	強調表示5		赤色(リテラル及び正規表現で使用される)
	強調表示6		緑色(コメントで使用される)
	強調表示7		青色
	強調表示8		灰色

上記の設定色をそれぞれお好きな色に設定しましょう。

これで設定はお仕舞いです。

どういう様に表示されるかソースコードのファイルを開いてみましょう。
あまりお気に召さない場合は、上記の手順を繰り返し行い、
色々な設定を試みて下さいませ。



こんな感じで使います。お楽しみ下さいませ。


Features


この「Ruby プログラミング用 強調表示定義ファイル Ver1.9.3」は、
現行最新版である「秀丸エディタ Ver8.13」にて使用しています。

また、これより以前のバージョンの秀丸をお使いの方でも、Ver3.0以降であれば
強調表示機能を持っていますので、「秀丸エディタ」で使用することができます。

この強調表示定義ファイルの中身は、下記のの様に定義してあります。


// Ruby言語のソースコードのための強調表示定義ファイル
// 
// 強調表示番号         プログラム中で表示する箇所
// ---------------------------------------------------------------------
// 強調表示 1           キーワード予約語)
//                       + α(文法的意味を持つ重要語句)
// 
// 強調表示 2           定数、インスタンス変数、クラス変数(表記)
//
// 強調表示 3           クラス名、モジュール名(組み込みライブラリ)
//                        +(標準添付ライブラリの一部)
// 
// 強調表示 4           変数 = 組み込み変数
// 
// 強調表示 5           例外クラス(組み込みライブラリ)
//                          +(標準添付ライブラリの一部)
// 
// 強調表示 6           未定義(コメントで使用されるため除外)
// 
// 強調表示 7           メソッド関数)
//                        = 組み込み関数 + 組み込みクラス、モジュールメソッド
//                          + 添付ライブラリメソッド(一部のみ)
// 
// 強調表示 8           シンボル(表記)
//                      組み込み定数
//                          + 組み込みクラス、モジュールの定数
//                          + (標準添付ライブラリの一部)
//                      
// 
// 参考:
// オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル
// <URL:http://www.ruby-lang.org/ja/man/>

// ---------------------------------------------------------------------


但し、クラスやモジュールなどで同名のメソッドが存在する場合には、
特に意味が無い限り数字が少ない番号の強調表示を優先するようにしています。

これとは逆にあるクラスのメソッドの実装がモジュールをインクルードしていることに
因るなど意味がある場合は、オリジナルである方を優先するようにします。

但し、3つ以上の複数一致する場合など、必ずしもそうでない場合もあります。

(強調定義ファイルの中では、後から定義した方が有効になる様子ですので
 基本的に後方の定義をコメントアウトしてあります。ご確認下さいませ。)

気に入らなければ、お好きなように変更してください。

それぞれの強調表示される色を自分好み変えておくことにより、
可也、見やすくなると想います。

尚、表示色を変更するには、「その他」→「ファイルタイプ別の設定」から
「表示とカラー」の項目で「強調表示色[1-8]」でそれぞれに変更できます。


Related Articles

以前の日記

秀丸エディタのRuby プログラミング用 強調表示定義ファイルを作りました。続き
秀丸エディタのRuby プログラミング用 強調表示定義ファイルを作りました。

f:id:kudo-shunsaku:20120429232752j:image:small

*1:-この強調表示定義ファイルの使い方は実際にダウンロードして頂きますと、そのアーカイブ・ファイルの中にREADMEを含んであります。その中に設定手順を書いておきましたので、お使いの際には是非ご覧下さいませ。-

2012-04-29 Memory Warehouse, Soliloquy of a Super Engineer (8)

kudo-shunsaku2012-04-29

[][][][] 第8回“記憶の倉庫”

とあるメルマガに書いた原稿です。

2012年02月号(2012/02/16日発行)されたものです。

ここにも載せておきます。



Soliloquy of a Super Engineer (8) Memory Warehouse @ Thu, 16 Feb 2012

 ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
 ◆◇ 『スーパーエンジニアの独り言 第8回“記憶の倉庫”』           ◇◆
 ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

今回の話題は、「記憶の置き場所」についてです。

Dream Catcher by Stephen King

f:id:kudo-shunsaku:20120429232623j:image:small

スティーブン・キングの小説で映画化された代表作と云えば「キャリー」や名匠

スタンリー・キューブリックが監督した「シャイニング」という名作が挙げられる

ことでしょう。しかしながら原作者であるスティーブン・キングがこのキューブリ

ック作品を気に入らなくて、自ら監督し映像化したのは有名な話ですが、それと

対照的にスティーブン・キングが自身の原作を映像化した作品でとても気に入って

いるのが「ドリームキャッチャー」という映画です。

f:id:kudo-shunsaku:20120429232716j:image:small

原作はスティーブン・キングの複数のテイストを一緒に盛り込んだものであり、映

画のシナリオも「スタンドバイミー」+「幻魔対戦」+「ヒドゥン」を混在させた

内容です。古びた洋館の裏でいじめられていた「ダディッツ」を四人の少年が助

けるところから話が始まるのですが、その「ダディッツ」が実は善玉の地球外生

命体であり、彼の命を賭して少年達にそれぞれ超能力を授けます。これはスクー

ビードゥ(四人と一匹)の如く編成し、来るべき将来、つまり何十年後にやって

くる悪玉の侵略者「ミスターグレイ」の脅威に対抗するための備えだったのです。

f:id:kudo-shunsaku:20120429234920j:image:smallf:id:kudo-shunsaku:20120429233954j:image:smallf:id:kudo-shunsaku:20120429233534j:image:small

四人のうちの一人が授かった能力に「記憶の倉庫」"Memory Warehouse" があり

ます。彼(ジョンジー)がその能力を持つことでインベーダーに体を乗っ取られ

ても記憶(情報)を隔離することで侵略者に立ち向かえるのです。実は交通事故

がきっかけでこの能力を得るのですが...という話でファンでさえ賛否両論ある

映画ですが、もし興味が湧きましたら本編を御覧ください。

f:id:kudo-shunsaku:20120429235227j:image:small

Memory Warehouse

f:id:kudo-shunsaku:20120429232806j:image

映画の中で「記憶の倉庫」を表現した映像が筆者にはとても印象に残りました。

大きな螺旋状の回廊の両側に沢山の部屋があり、部屋のドアにはどの「記憶

(情報)」が格納されているかの名札が貼られています。まるで「薔薇の名前

に登場した秘密の書庫を彷彿とさせます。その頭の中にある倉庫の回廊を自身が

投影された人物が手押し車で情報を運び、それぞれの記憶の部屋に分けてしまっ

ている姿が幻想的でありながらも、その書類をしまったり、取り出したり、燃や

したりという行為が、どのように記憶を思い出したり、消したりしているのかを

想像させます。

f:id:kudo-shunsaku:20120429233209j:image:medium

「記憶の倉庫」が上手く機能しない場合に、良いサービスがあります。有名な

クラウドサービスである「Evernote」のコンセプトは、「第二の脳」もしくは

「補助脳」と称しています。気になった事象や思いついたアイディアなどをメモ

帳に片っ端から書き留め、後でそれを必要に応じて捜し出すという使い方です。

自分の脳で記憶にしまえなかった事や何処に置いたか分からなくなった時に重宝

します。

Memory Devices

記憶装置そのものにも変革期がやってきています。

f:id:kudo-shunsaku:20120429232727j:image:small

半導体メモリを採用し高速ストレージを実現したFlash SSDは、省電力と駆動

装置がないことから耐障害性という副次的効果もあり、既に多数の可搬型デバ

イスで採用されています。このシリコンディスクは、従来よりも高速であるため

に、様々なレイヤーでのキャッシュ用途としても採用されています。最近では、

AWS新サービスであるAmazon DynamoDBSSDが大量採用され高速で伸縮性に

優れたサービスを発表しています。Fusion-ioやEMCでもストレージデバイスとして

のフラッシュストレージを発表しており、サーバ内蔵型にすることでストレージ

インターフェースによるボトルネックを回避し飛躍的な性能向上を果たしている

との事です。

更に最新のニュースによれば、このFlash SSDを背景に驚異的な性能を実現する

技術の気配があります。"Auto Commit Memory"という名前からそれを想像できま

すが、利用者はメモリを操作するだけで二次記憶装置を必要としなくなるかもし

れません。つまりハードディスクが要らなくなるという事です。どのように実現

するのかは未だ憶測が飛び交っていますが、もし実現すればハードウェアだけで

はなくソフトウェアも様変わりすることを余儀なくされるでしょう。

何せ保存する処理が要らなくなってしまうのですから。

f:id:kudo-shunsaku:20120429234525j:image:small

安定期かとも思われたメモリやストレージ市場ですが、新技術の到来で新プロダ

クト登場やその利用方法に於いても世代交代が進みそうです。そして「データが

重要」というのは、Web 2.0の教訓でもありました。

"Data is the Next Intel Inside."

そして今やビッグデータの波が企業に押し寄せています。

Blue Bayou by Roy Orbison

f:id:kudo-shunsaku:20120429232653j:image:small

ドリームキャッチャーでは、「記憶の倉庫」の中でどうしても捨てられない記憶

の一つに「ブルーバイユー "Blue Bayou"」の歌詞がありました。

この大切な思い出は、鍵の掛かった秘密の部屋にファイリングされていました。

f:id:kudo-shunsaku:20120429232711j:image:medium

記憶は人を形成するのに極めて大事な要素です。

人は当然持っている記憶によって「その人」として成り立つのですから。

では次回をお楽しみに。

f:id:kudo-shunsaku:20120429232752j:image:medium

2012-04-27 Vyatta connected to the Cloud, Soliloquy of a Super Engineer (7)

kudo-shunsaku2012-04-27

[][][] 第7回 “雲を繋ぐVyatta

とあるメルマガに書いた原稿です。

2012年01月号(2012/01/19日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (7) Vyatta connected to the Cloud @ Thu, 19 Jan 2012

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇ 『スーパーエンジニアの独り言 第7回“雲を繋ぐ Vyatta”』        ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

Virtual Appliance, Software Router

f:id:kudo-shunsaku:20120427194502j:image:small

今回の話題は、仮想化環境上で稼動し多様なネットワーク機能を提供する

バーチャルアプライアンスソフトウェアルータ "Vyatta" を紹介します。

サーバ仮想化が普及している現在では、仮想化されたインスタンスがユーザ要求

の変化に対して即時に呼応する事が可能です。このため縦横無尽に配置される

個々のインスタンスが利用するネットワークを構成するには、柔軟な対応が

システム管理者に必要とされるのが極めて困難な点でしょう。

その懸念を払拭する有効な手段として、機器自体を仮想化上で構成する

バーチャルアプライアンス(仮想アプライアンス)が考えられます。

仮想アプライアンスとは、各種ハイパーバイザ上で実行可能な仮想マシン

イメージであり、つまりOSを含んだ「ソフトウェア」です。

仮想アプライアンスでは、サーバ仮想化による恩恵そのままに、設置場所や

物理的なハードウェアからの制約を緩和することが可能であり、既存製品と

比較した場合には、優れた柔軟性と拡張性を有していることが理解できます。

サーバ仮想化を駆使したシステム構成への親和性も明白です。

Vyatta

f:id:kudo-shunsaku:20120427194504g:image:small

Vyatta(「ヴィアッタ」と読みます)は、この仮想アプライアンスの範疇で

あり、機能としてはルータファイアウォールを中核としたネットワーク

於ける様々な能力を有している(複数のオープンソースをベースとした)

ソフトウェアです。これはVyatta社が提供している製品なのですが、

提供形態として商用版とオープンソースの2種類があり、大きな相違点は

サポートの有無です。非商用版でも十分な基本機能があり、ユーザが

使い方さえ理解できれば直ぐにでも使用開始を出来るのが大きな魅力です

Vyatta社では、Vyattaを搭載したハードウェアアプライアンス

別途販売している様です)。

複数のオープンソースをベースとして構成するが故に、

ルーティング、ファイアウォールNAT、IPS、URLフィルタリング

VPN、負荷分散など多様な機能を最新状態で包含しています。

また配布形態がLinuxベースのディストリビューションなのですが、管理

インターフェースを独自実装しているので、扱い易く設計されているのも

利点の一つとなっています。

Vyatta Network OS for Amazon Cloud

f:id:kudo-shunsaku:20120427195226j:image:small

稼動環境はVMware、XenServerなど各種ハイパーバイザなどに加えて、

AWS(Amazon Web Services)で稼動するVyatta AMI(Amazon Machine Image)

の提供がアナウンスされています。

これを称してVyatta Network OS for Amazon Cloudと命名しています。

この主たる利用目的の一つとしてAmazon VPC (Virtual Private Cloud)で

Vyattaを遠隔地からの接続への中継地点として稼動させることが可能であり、

AWSプライベートクラウドサービスとの連携が実現する事でしょう。

Sakura Cloud in Ishikari, Hokkaido

f:id:kudo-shunsaku:20120427195719g:image:small

クラウドと言えば、最近のニュースで話題となった「さくらクラウド」は、

北海道の石狩データセンター設立してパブリッククラウドサービスを

リリースしたのが記憶に新しいですが、このサービスで利用できるのは、

Xenのハイパーバイザ上で動作するレディメイドインスタンスとして

Linuxディストリビューション(CentOSScientific LinuxUbuntu)と

FreeBSDがあり、そこにはルータとしてVyattaが用意されているのです。

主催しているさくらインターネットでは、Vyattaを用いたIPv6接続など

VYATTAでつなぐインタークラウド接続」と題した試みが実施されて、

インターネットを経由しブランチをまたいだ接続が試行されています。

Virtual Router in Cloud Era

f:id:kudo-shunsaku:20120427200703p:image:small

この様に日本に於いてもサービスの採用実績、日本Vyattaユーザ会の設立

更に関連書籍も発売されており、密かに盛り上がりを見せています。

しかしながら、正確な理解の妨げになっていると思われるのが、Vyatta

の機能である「仮想ルータ」という表現にあります。「仮想ルータ」という

機能は以前からあり、「一台のルータを論理的に分割し複数のルータとする」

といった「仮想ルーティング機能」を実装している機器という意味で

ありました。ですが Vyattaの実態はソフトウェアであり、また仮想化に

対応したバーチャルアプライアンスです。ですから、最近よく目にする

クラウド時代の仮想ルータ」という表現の方が適切なのでしょう。

f:id:kudo-shunsaku:20120427200705j:image:small

今後、仮想アプライアンスネットワークOSオンデマンドソリューション、

インタークラウドオープンソースなど、様々な切り口のキーワード

Vyattaが取りあげられることでしょうが、企業にとっては寧ろ実行性と

即戦力のプロダクトとして一層普及に拍車が掛かることと予想されます。

f:id:kudo-shunsaku:20120427200704j:image:small

徒然なるままにしたため、年初の挨拶に代えさせて頂きます。

本年も変わらぬご愛顧をいただけますよう、宜しくお願い申し上げます。

2012-02-24 The Name of The Electronic Book, Soliloquy of a Super Engineer (

kudo-shunsaku2012-02-24

[][][] 第6回 “電子書籍の名前”

とあるメルマガに書いた原稿です。

2011年12月号(2011/12/15日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (6) The Name of The Electronic Book @ Thu, 15 Dec 2011

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇ 『スーパーエンジニアの独り言 第6回“電子書籍の名前”』         ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

今回の話題は、急速に浸透し普及が始まった電子書籍の話題を取り上げます。

Contents of The Electronic Book

f:id:kudo-shunsaku:20120225002657j:image:small

以前であれば電子ブックザウルス文庫、近年でケータイ小説と様々な形で

電子書籍は昔から嘱望されていたものではありましたが、最近になり本格的に

普及の兆しがみえます。紙の書籍を凌駕するのではないか?と危惧される程、

脅威に感じるムーブメントを牽引する要因の一つに、電子書籍リーダーが

各社から百花繚乱の如く発売されている現状が挙げられます。それにも増して

急激に普及したスマートフォンタブレットにより自然と読み手側の環境は

整いつつあるのは事実です。

コンテンツを提供する側としては AmazonAppleを筆頭に紙媒体での書籍を

デジタル化して扱う試みが市場に投入され、影響は既に日本に及んでいます。

但し、音楽や映画、新聞、それらデジタル化可能な媒体と同様、雑誌や書籍に

於いても様々な懸案が山積されている状況ではあります。しかしながら、

インターネットが誘発するパラダイムシフトが波及しているこの過渡期に、

新たな価値観や体験を共有していく流れは止められない状況です。

EPUB 3

f:id:kudo-shunsaku:20120224233143j:image:small

問題は普及の鍵となる標準化であり、電子書籍に於いても他と同様です。

配布メディアのフォーマット形式は「書籍」を購入する消費者にとっては

重要な問題です。購入した本を「いつまで読むことが出来るのか?」に直結

するからに他ありません。つまり標準化は最重要課題であり日本に於いても

産学連携の活動が見受けられますが、標準化では過去の例示で明白な様に

国際標準が肝要となります。インターネットが関係するので尚更です。

この命題に対しては、電子書籍フォーマット「EPUB 3」が勧告されたことが

現状で一番近い回答になりそうです(2011年10月11日に発表されました)。

EPUB 3」は電子書籍フォーマットの国際標準仕様を策定している団体である

IDPF(International Digital Publishing Forum、国際電子出版フォーラム)

が発表した仕様です。

EPUB 3では、W3Cで策定中のHTML5をベースとしたオープンな電子書籍

フォーマットとされ、縦書きやルビなど日本語を含む多国語での表示を

可能にしている国際化仕様となっているとの事。

また、将来Web標準となるHTML5をベースにしていることもあり、

ブラウザ実装が期待できる上に各種電子書籍リーダーでも採用される見込みです。

今後は「EPUB 3準拠」などとしてリーダーやコンテンツが登場することで

消費者が書籍を購入しやすくなる環境が次第に整ってくることでしょう。

The Book Read Again, Over And Over

将来EPUBが普及するならばEPUB後継仕様/実装には以前に購入した書籍

を閲覧可能にする変換や後方互換性を伴うことにも期待したいものです。

好きな本は時間が経った後で、何度か読み返したいものです。

何故なら、読む本が同じであっても読み手である自分自身の変化によって

理解できる箇所は増し、また受け取る事の出来る印象や味わいも大幅に

変わってくるものでしょうから。

This is Not the End of the Book

この点について電子書籍ではなく、この「紙の本」をご紹介したいのです。

昨年末に出版された「もうすぐ絶滅するという紙の書物について」です。

著者はウンベルト・エーコジャン=クロード・カリエール。対談本です。

"This is Not the End of the Book"

by Umberto Eco and Jean Claude Carriere

f:id:kudo-shunsaku:20120224231120j:image:small

ジャン=クロードはフランス脚本家、俳優であり、ウンベルト・エーコは、

著名な小説『薔薇の名前』の作者です。この小説ではウィリアムとアドソの

師弟コンビが正にホームズワトソンを想起させます。

f:id:kudo-shunsaku:20120224232950j:image:small

他のエーコ作品でも意図的に歴史的背景や他の文学作品へのオマージュ

とも言えるアナロジーや薀蓄を含んで描写しています。

ですから「紙の書物について」でも愛書家である彼等が薀蓄の博覧会

という様相を呈しています。紙の本に対する愛情とデジタル化された

メディア論に博識を以て一石を投じた内容となっています。

機会があれば、綺麗に装丁されたこの「紙の本」も御一読下さいませ。

Il nome della rosa (The Name of The Rose)

先程紹介した作品『薔薇の名前』は、ショーン・コネリー主演で映画化

されています。舞台は活版印刷術が普及する以前の教会で写本の時代です。

修道士が手書きで複製した大切な「写本(知識)」が図書館の火事によって、

儚くも失われる刹那さが神々しくもあり荘厳にその無常が謳われています。

f:id:kudo-shunsaku:20120224231831j:image:small

活版印刷の発明が「書籍」の普及を可能にしたことで、個々に保有する知識や

技術、果ては心情に至る情報を伝播する方法が確立し、過去の人々の経験を

擬似体験する、または信条や考察を垣間見る、更には空想の世界を旅すること

を可能にしてくれました。書籍を通じその時代に生きている人々の考えや行動

に影響を与え世界を変えてきたのは揺るぎない事実です。

現代ではインターネットにより様々な境界を超えての情報交換が劇的に簡易化

されました。これに加えて、電子書籍リージョンの制約を越えて集約された

知識の流通が始まるとなれば、新たな時代への変革を更に足早に迎えることに

なるのであろうと想像されます。

直近ではAmazonは先行する音楽配信同様に電子書籍ウェブアプリ版の提供を

始めています。現行の主要なブラウザに対応した実装は、HTML5ベースであり、

ローカルストレージ新機能の採用によりオフラインの閲覧も可能にしている

ことが大きなメリットの一つとなっています。また独自でAmazon Silkという

革新的ウェブブラウザを自社のKindleに搭載する事でオンライン/オフライン

の連携をEC2(サーバ側)とSilk(クライアント側)で処理を分散する仕組みを

提供することで「シームレスな環境」を実現するのかと期待させます。

「継ぎ目が無い」状態がインターネットを快適にするために越えるべき

大きな象徴の一つであると考えられますが、その解決策の候補が電子書籍

いう目的に於いて登場する兆しなのかもしれません。

f:id:kudo-shunsaku:20120224231119j:image:small

「もうすぐ絶滅するという紙の書物について」を図書館電子ブックリーダー

片手に読む日も遠くないのかもしれません。


では次回をお楽しみに。

f:id:kudo-shunsaku:20120224232950j:image:medium

2012-02-05 Doug Cutting Live in Japan 2, Soliloquy of a Super Engineer (5)

kudo-shunsaku2012-02-05

[][][] 第5回 “Doug Cutting氏 来日 続編”

とあるメルマガに書いた原稿です。

2011年11月号(2011/11/17日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (5) Doug Cutting Live in Japan 2 @ Thu, 17 Nov 2011

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇『スーパーエンジニアの独り言 第5回 “Apache HadoopとBig Data”』◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

今回の話題は「Doug Cutting氏の来日講演」の続編です。

Doug Cutting, Again

Doug Cutting 氏は "Apache Hadoop" の創造主です。彼の基調講演を拝聴した

2011年9月1日)その様子をお届けします。講演当日の会場では所狭しとパイプ

椅子が敷き詰められ聴講者がひしめき合う満員御礼で、熱気立ち上がる中、プロ

ジェクターとDoug Cutting氏の勇姿を拝見しつつ、彼が発した言葉を一言も漏ら

さぬ覚悟でミミズが這うような字で手帳にひたすらメモを走り書きした次第です。

このメモを元に講演顛末の後半を書き起こします。

"Apache Hadoop: A New Paradigm for Data Processing"

Doug Cutting, Architect, Cloudera, Inc.

(講演されたスライドタイトル一覧は前々回のメルマガをご参照ください。)

FacebookTwitterAmazoneBayといった錚々たるサービス企業でHadoop

採用され、企業向けとしても適用が進んでいる実績がありますが、Hadoop

『新しい基盤』と位置付けているポイントとして挙げたのは以下になります。

Hadoop as a New Infrastructure

◇ 「コモディティ化されたハードウェア

◆ 「シーケンシャルファイルアクセス」

◇ 「シャーディング」

◆ 「オープンソースである」

f:id:kudo-shunsaku:20120205201111j:image:medium

Commodity

まず「コモディティ化」は、計算資源が劇的にコストダウンし、性能も大幅に

アップしている現象であり、これを活用するためには何千ものコンピュータ

スケール可能な(拡張性が柔軟である)仕組みが有効であるという事。

次に「シーケンシャルファイルアクセス」についてです。

その対極であるランダムアクセスはハードドライブのシークを発生することに

なりますが、ハード的にシークの時間は短縮しておらず「シークタイム=無駄な

時間」となります。シーケンシャルなアクセスとすることで無駄を省き実際の

操作に集中させる事ができるというのです。 例えばパッチシステムにすること

が挙げられます。

Sharding

「シャーディング」というのは、データベースを分割することです。

データベースを分割することで拡張性が生み出されます。

ここで重要なことが、信頼性を保証しながら(マニュアルではなく)自動化を

推奨していくことにあります。つまり、分割した上でのフォールトトレラント

環境が必要であり、不意のハードウェア故障にも対応できるようになります。

Opensource

オープンソースである」ことについての利点は理解されつつあるでしょう。

オープンコミュニティで協力して作成していく過程が、対象の汎用性を高め

同時にその品質を高めています。閉じられたチームで開発するのではなく、

多くの有能な開発者達と作業を通して知り合うことで、開発者自身の向上心を

掻き立て、それによりソフトウェア品質も高まるというものです。

これらを満たしている仕組みがHadoopであり、その可能性が期待されています。

the Fuuture is Data

この講演は、 "the future is data" 将来への提示の話で締め括られました。

Web 2.0の教訓で「データが重要である」ことは言うまでもなく、加えて

沢山のデータを収集することが重要であることを繰り返して強調しています。

収集した生の大量データをシンプルなアルゴリズムで解析すれば良い

という主旨です。複雑なアルゴリズムにおける改良を繰り返すのではなく、

データを収集するのに注力した方が得策だとのことです。つまり、

必要なデータを全部集めることで、一番効率的な解析が行えるのです。

ビジネスにおいて、より多くのデータを集めて解析することが更なる改善

に繋げることに有効である、という示唆でした。

この命題は、新しい分散型データOSカーネルとして「Hadoop」を利用する

ことで実現可能であります、というDoug Cutting氏の締めのお言葉でありました。

講演ではコアのHDFSMapReduceやHive、Pigなど周辺コンポーネントの簡単な

紹介がありましたが、これはまた機会があればということにさせて頂きます。

The Yellow One Stands for Hadoop

因みに、彼は名前の由来であるHadoop(黄色い象のぬいぐるみ)と同伴していました。

講演後に聴講者と一緒に "Doug + Hadoop" で記念写真を撮られていました。

f:id:kudo-shunsaku:20110901105112j:image:medium

超高速スーパーコンピューターの登場を待つこともなく、大量のデータを

集めて分散並列処理を行うことが可能となる時代が到来しつつあります。

コンシューマサービスを生業とする大企業ではHadoopを活用していますが、

エンタープライズ適用ではトレーサビリティ一題と仮定しただけでも製造、

流通、食品、アパレル、あらゆる業界でビジネスを拡大させます。

ビッグデータ(Big Data)を扱う取り組みは既にトレンドになっているのです。

次回は、急速に浸透し普及が進む電子書籍の話題です。お楽しみに。

2012-01-09 Star Trek in Apple II, Soliloquy of a Super Engineer (4)

kudo-shunsaku2012-01-09

[][][][] 第4回 “スタートレック

とあるメルマガに書いた原稿です。

2011年10月号(10/20日発行)されたものです。

ここにも載せておきます。

f:id:kudo-shunsaku:20120109220802j:image

Soliloquy of a Super Engineer (4) Star Trek in Apple II @ Oct 20, 2011

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇ 『スーパーエンジニアの独り言 第4回 “スタートレック”』        ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

Steve Jobs

今回の話題はスティーブ・ジョブス "Steve Jobs" に纏わる話題です。

スティーブ・ジョブスの訃報が流れたのはマスメディアでも大きく報道され

ご存知の方も多いと思いますが、56歳という若さで天に召されました。

2011年10月5日に死去されました。心から哀悼の意を表します。)

彼はまさに生きる神様の一人であって、凡人から観れば神話の中の登場人物で

煌びやかなオリュンポスの神々の一人と喩えられるような存在です。

黎明期に於ける神々の名前の一部の列記を試みれば、

f:id:kudo-shunsaku:20120109221709p:image:w360

オリュンポスの神々

スティーブ・ジョブス "Steven Paul Jobs" a.k.a. "Steve Jobs"

スティーブ・ウォズニアック "Stephen Gary Wozniak"

ビル・ゲイツ "William Henry Gates III" a.k.a. "Bill Gates"

ポール・アレン "Paul Gardner Allen"

◇ ケン・トンプソン "Kenneth Lane Thompson" a.k.a. "Ken Thompson"

デニス・リッチー "Dennis MacAlistair Ritchie"

ブライアン・カーニハン "Brian Wilson Kernighan"

ビル・ジョイ "William Nelson Joy" a.k.a. "Bill Joy"

◇ ビャーネ・ストロヴストルップ "Bjarne Stroustrup"

アラン・ケイ "Alan Kay"

多数の神々無数の星々の中でも、ひと際光輝く一等星の星たちですが、巨星

ジョブスに間髪いれずデニス・リッチーの悲報が届きました。

2011年10月8日に死去されました。享年70歳。謹んで哀悼の意を表します。)

御二人とも長い闘病の末に亡くなった様子で、安らかに永眠されることを

お祈りさせて頂きます。星の世界に帰って地球を見守ってくださいませ。

f:id:kudo-shunsaku:20120109221920g:image:w360

神話の主人公である彼等の功績や逸話については、各所で回顧されています。

哀悼の意を表し、ここでは極めて私的で勝手な想い出を書かせて頂きます。

meet an Apple II @ Northern Island of Far East Country.

f:id:kudo-shunsaku:20120109204908j:image:medium

ジョブスとウォズニアック、二人のスティーブによって登場した名機と云えば、

Apple II です。当時、北国の田舎町に住む中学生(筆者)にとって

何の縁も所縁もなく、その存在すら知る由もなくて、計算機と言えば S.F. の中

での話だった頃。

中学校の同級生の家にお邪魔した際に、未来箱(Apple II)に出遭いました。

その新しい友人のお父さんが、計算機関係の仕事だったらしいのです。

未来箱の画面で動いていたのは "E", "K" などのアルファベットでしたが、

それこそがスタートレック("Star Trek"、邦題:宇宙大作戦)ゲームでした。

f:id:kudo-shunsaku:20120109205048j:image:medium

操作を説明して貰い友人宅に滞在している間、夢中で無言で画面と睨めっこ。

この所業のため、その後友人宅に招かれることはありませんでした。つまり、

Apple II を触れたのはその時限りの出来事でしたが、エンタープライズ号を

操作して角度を計算しクリンゴンに光子魚雷を発射する、まるでカーク船長に

なった気分と、この未来マシンを操作しているという快感という相乗効果で

それは紛れも無く未来体験であり筆者の原風景となりました。

f:id:kudo-shunsaku:20120109205310j:image:medium

筆者、中学一年生だった1978年の事です。

Butterfly effect

その後、計算機に触る機会は全くありませんでしたが、就職時にコンピュータ

の会社を選択したのは、この原初の記憶が影響していたのでありましょう。

入社して全く見聞きしたことないSun Microsystemsのマシンを触ること

になりましたが、SPARCstation 1にインストールされていたSunOS 4で

"/usr/games" の場所に、あの懐かしいスタートレックを見つけて狂喜乱舞した

のを覚えています。これも何かの所縁なのかもしれません。

風が吹けば桶屋が儲かる」のか「バタフライ効果」なのか、どちらにせよ、

極東の北国に住む少年にまで、ジョブスの影響があった事に相違ありません。

f:id:kudo-shunsaku:20120109221019p:image:medium

Star Trek New Generation, Deep Space Nine, Voyager and Enterprise

スティーブ・ジョブス死去のニュースと前後して、Appleから新製品お披露目

があり iPhone 4SiOS 5iCloud と立て続けに世間に大きな変革を与える

リリースを行いました。あたかも彼の分身が登場している感覚を覚えます。

これからもジョブスやリッチー達の影響は、将来的に続くことでしょう。

前述のゲームがiPhoneで "retroTrek" という名前で登録されています。

f:id:kudo-shunsaku:20120109205532p:image:w360

このゲームは、当初ミニコンからApple IIへ "Apple Trek" が移植され、

SunOS を含む多種のコンピュータ、そしてiPhoneでも動いているのです。

一つの影響が他者に派生し、更なる影響が伝播していくのを実感します。

何かしら連綿と続く輪廻転生のようにも感じることが出来るでしょう。

printf("Goodbye World\n");

最後に、ジョブスの影響を肌で感じることが出来る一つとしてスタンフォード

の卒業生に贈るスピーチが有名でとても感動的です。心に響く内容であり、

死生観についても期せずして語られています。このスピーチの音声(肉声)が

公開されています。未聴の方々に是非ともお薦めさせて頂きます。

f:id:kudo-shunsaku:20120109220431j:image:medium

次回は、Doug Cutting講演(後半)をお届けするつもりです。お楽しみに。

f:id:kudo-shunsaku:20120109222024j:image:w360

2011-11-10 Doug Cutting Live in Japan, Soliloquy of a Super Engineer (3)

kudo-shunsaku2011-11-10

[][][] 第3回“Doug Cutting氏 来日”

とあるメルマガに書いた原稿です。

2011年9月号(9/29日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (3) Doug Cutting Live in Japan @ Sep 29, 2011

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇ 『スーパーエンジニアの独り言 第3回 “Doug Cutting氏 来日” 』  ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

Doug Cutting Live in Japan

今回の話題は「Doug Cutting(ダグ・カッティング)氏の来日講演」です。

Doug Cutting 氏とは、あの "Apache Hadoop" の創造主です。

"Hadoop" は、TwitterFacebook など著名なサービスで大量データ処理の

仕組みとして採用されていますのでその名前を耳にしたこともあるかと思います。

今回、Doug Cutting 氏本人が来訪され各所で開かれるカンファレンスで講演

されると聞き、是非とも創造主である彼の話を聴きたくて(逢いたくて)

とあるカンファレンス会場に向かいました。

そこで幸運にも拝聴できた顛末の一部を書き記します。

"Apache Hadoop: A New Paradigm for Data Processing"

Doug Cutting, Architect, Cloudera, Inc.

まずは講演されたスライドタイトルの一覧です。

Apache Hadoop: A New Paradigm for Data Processing

◇ Who am I ?

Apache Hadoop : a new paradigm

◇ New foundations

◆ Commodity Hardware

◇ Sequential Access

Open Source

◇ Nutch (2002)

◆ Nutch (2004)

Hadoop (2006)

HDFS

MapReduce

Hadoop: the ecosystem

◇ Cloudera's Distribution including Apache Hadoop

◆ Pig & Hive

◇ Avro

◆ Mahout

◇ HBase

◆ Flume

◇ pattern of adoption

◆ advantages of paradigm

◇ the future is data

introduction

シリコンバレーで25年のベテランです。」から始まった彼の講演ですが、

前半部分は、どのような経緯でHadoopが誕生したのか?というお話でした。

当時 Yahoo!に所属していたエンジニアが、Googleが発表した論文に触発

されて開発したソフトウェアがいきなり登場したのであろう、と理解(誤解)

されている方が多いかもしれませんが、どうやらそれだけでは無いらしいのです。

Doug's career

Doug氏自身のキャリアは1980年代にXEROXから出発しAppleMac OSのテキスト

検索エンジン開発、90年代にはExcite検索エンジンを担当、そして全文検索

Lucene、それをベースとしたウェブ検索エンジン Nutch など、幾つかのオープン

ソースプロジェクトに関わっていました。そこではいつも、「大量データをどう

やって効率良く扱うか?」の問題と対峙することになり、その都度、試行錯誤を

繰り返していたそうです。

勿論、当時同じ問題に直面していたGoogle論文発表のタイミングやこのソフト

ウェアをプラットフォームとして採択して応援してくれるYahoo!への参画など、

ターニングポイントは幾つもあった事でしょうが、何よりも長年の地道な積み

重ねがあってこその現在のHadoopだと言えましょう。

それ故、オープンソース Hadoop の存在意義を改めて認識した次第です。

「脚踏実地」。紆余曲折ありながらも、ひとつの課題を長年に渡り突き詰めて

いくことで成功した彼の実直さ、講演で一番感慨深かったのはこの事でした。

ところで肝心の Hadoop についてですが、Doug Cutting 氏曰く、

New Paradigm

Apache Hadoop が一つの新しいパラダイムであり、

これこそがデータ解析における回答となるでしょう。』

という主旨の事を仰っていました。

この講演を拝聴し、これからHadoop を勉強してみたいという気持ちが

膨らんだのは事実です。

「千里の道も一歩から」の言葉を再び噛み締める必要があるのでしょう。

Current officers of The Apache Software Foundation

Doug Cutting 氏は現在、Hadoop を生業とする Clouderaの社員なのだそう

ですが、加えてASFの委員長(チェアマン)でもあるそうです。

Current officers of The Apache Software Foundation:

http://www.apache.org/foundation/

講演内容の続きについては、また次回ということにさせて頂きます。

f:id:kudo-shunsaku:20110901105112j:image:right


追記です。

講演中には登場しませんでしたが、Doug は "Hadoop" を持参してきてました。

ちゃんとネタも用意してあったのです。

聴講者に声を掛けられて、実は、、、という風味で鞄からゴソゴソ取り出して一緒に写真を撮ってました。

人見知りの探偵は直接を声をかけられなかったので、その撮影風景を撮らせて頂きました。

ですから、写真に写っている眼鏡の方は知らない人です。

飽く迄、探偵ではありませんので、その点悪しからず。

2011-09-11 Java SE 7 Part 2, Soliloquy of a Super Engineer (2)

kudo-shunsaku2011-09-11

[][][] 第2回“(続)Java SE 7 登場”

とあるメルマガに書いた原稿です。

2011年8月号(8/18日発行)されたものです。

ここにも載せておきます。

Soliloquy of a Super Engineer (2) Java SE 7 Part 2 @ Aug 18, 2011

┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
◆◇『スーパーエンジニアの独り言 第2回“(続)Java SE 7 登場” 』  ◇◆
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛

Java SE 7

今回の話題も前回の続編で、先日7月28日に5年ぶりのメジャーバージョンアップ

正式リリースが為された「Java SE 7 (JDK 7)」その続きです。

OracleSun Microsystems を買収して最初のメジャーリリースとなります。

新機能として搭載が予定されている主要な機能は以下が挙げられます:

◇ もっと新 I/O ("NIO.2") (JSR 203)

◆ 細かな構文変更 (Project Coin) の一部 (JSR 334)

JVMの動的型付け言語のサポート (JSR 292)

G1ガベージコレクタの導入 (Garbage-First GC)

◇ クラスローダの拡張

Unicode 6.0

◇ etc ...

前回ご紹介したのは、非同期入出力サポートされた「NIO.2」と、簡略表記などを

可能とする「言語仕様の細かな変更(Project Coin)」でした。

invokedynamic

f:id:kudo-shunsaku:20110911191057p:image:medium

今回取り上げる「Java仮想マシンJVM)」への機能追加の一つである「動的型

付け言語のサポート」は、JVMが更なる汎用プラットフォーム化を目指したもの

であり、無数にあるプログラミング言語に向けての誘致メッセージとも受け取れ

る機能であり、Javaの将来を左右する程に特に重要な変更といえましょう。

具体的には「invokedynamic命令」という新しいバイトコードが追加されることを

意味しており、このバイトコードがいったい何をするのかは、「呼び出される

実際の型に合わせて引数の型変換を試みる。」と、いうことらしいのです。

つまり「動的型付け言語のサポート」という名前そのものの機能ですが、JVM

この機能を搭載するためへの実装はとても困難であったことだと想像されます。

(参照実装プロジェクト "the Da Vinci Machine Project" があります。)

f:id:kudo-shunsaku:20110911192600p:image:medium

そうして新機能を搭載したJVMが登場したのですが、直接この機能を利用する

のは、JVM上で動作する動的型付け言語のコンパイラを実装する方になります。

各々の動的言語コンパイラを実装される際に、メソッド呼び出しの

「invokedynamic命令」とこれに付随するメソッド・ハンドル(Method Handle)

という新しいリンケージメカニズムを利用する事により、JVMで高速に動作

するバイトコードを生成できるようになるのだそうです。

Any Language on JVM

現在 Javaプラットフォーム上で動作する動的言語としては JRuby を筆頭に、

Jython、Beanshell などあり、新機能がこれらコンパイラ開発を加速させる事

が予想されます。またJVM上で動作する他の言語としては、Scala, Clojure,

Groovy なども Java の有力な後継者として名乗りを挙げています。最近では、

チェコ発の "Kotlin"(ロシアの島の名に由来)という新言語も登場しました。

曳いては、将来も多種多様な所謂「JVM言語」の利用が期待されるのです。

これら恩恵に与るのは、プログラマのみならず、寧ろインフラエンジニア

こそ、大いに恩恵を賜ると言い換えることが出来るでしょう。

その意味合いとして下層のみならず上層への抽象化度合いを深めることで

多様な言語が実行可能な中間層として顕著になれば、各種プログラムを実行する

ためのデファクト実行環境として更に重要な位置付けがされることになります。

(背景として幾つかの代替候補も成長しつつあるのが現状です。)

ところで Java のキャッチフレーズを覚えていらっしゃるでしょうか?

"Write Once, Run Anyware."

Java SE 7 からの新キャッチフレーズとして言い換えれば、

"Multiple Language, One Virtual Machine."

ともいえるかもしれません。

この機能「動的型付け言語のサポート」紹介に関しての補足事項ですが、既に

ご紹介したように現行では事実上、コンパイラ開発者向けの機能となっています。

この機能を Java言語から利用するためには、文法レベルのサポート

(とライブラリ)が必要と思われますが、JDK 7では未だ十分ではない様子です。

これに関してはJDK 8 で機能追加で為されるとも聞き及んでいます。

今後に更に期待して待ちましょう。(Project Lambda の一部になる予定。)

他の新機能についてのご紹介は、また次回ということで。