今月の Software Design : 2013/02 (その6)

 「今月の Software Design 」の2月号の投稿第6回目です。

 今回の投稿で(ようやく)今月号の全ての記事を網羅しました。今月もギリギリになってしまいました。

 それでは今回も、以下のフォーマットで各記事の要約と感想を書いてゆきます。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

Ubuntu Monthly Report

 リモートデスクトップ機能を提供する(プロプライエタリなモノをを含む)いくつかのソフトウェアについて紹介しています。また Ubuntu プロジェクトが推している(らしい) x2go の設定について簡単に解説しています。

 僕がコマンドライン推進派である事を抜きにしても、リモートデスクトップの存在意義についてはかなり懐疑的です。かつて MIT が X Window System を開発した頃は、クライアントマシンが X を動かせるほどのスペックを持っていなかったがために、リモートデスクトップというものが注目されたのだと理解していますが、デスクトップはサービスというよりも所詮は各種ユーティリティに触るためのインターフェイスに過ぎないので、クライアントマシンのスペックが潤沢な現在においては、そんなの要らないんじゃないの?という意見です。

 ただ記事の冒頭にもあるように、タブレットやスマフォ端末等からのアクセスというように考えると、その必要性はわからなくもないです。しかしスマートフォンもマルチコアになったり、搭載 RAM の容量が 1GB を超えていたりと、一昔前のノート PC 並にハイスペックなので、やはり同じ結論に到達します。

 

 

・ハイパーバイザーの作り方

 各種割り込み (内部割り込み・外部割り込み・メッセージシグナル割り込み) の一連の処理の流れについて解説し、ハイパーバイザー側でこれらの処理のうちどの処理を仮想化させてやるかという話について詳細に解説しています。

 先月の内容が割り込みの基本的な話に終始していたので油断していましたが、今回の内容は濃すぎます。VT-x が提供する諸所の機能について理解していないと、ここで書かれている内容には恐らくついていけないと思います。CPU の仮想化技術について知るいい機会なので、次回までにこの連載のバックナンバーをひと通りひと通り読み、それを踏まえて次回以降の記事を読み進めます。

 

 

・Monthly News from jus

 関西オープンソースフォーラム 2012 (KOF 2012) のレポートと KOF 2012 で行った jus 研究会の報告記事です。jus 研究会では、どうやら Mac を始めとする Apple 製品をひたすらに賞賛する内容の講演が大阪電気通信大学の魚井先生によって行われたようです。

 普段ブログでイベントのレポート記事を書いている僕が言うのも何ですが、こうしたイベントのレポート記事はうけるのでしょうか(見開き2ページで伝わる情報はいかほどかと)。jus ほどの歴史と権威を有する組織と言えど「俺達は毎月こうして社会的な活動をやっているんだぞ」と言わんばかりのアピールしないといけない事情でもあるんでしょうか。個人的には、過去に開催されたイベントについて紹介する記事よりも、当月ないしは翌月といった未来に開催されるイベントについて紹介された記事の方が読んでみたくなります。

 

 

・Hack For Japan

 地方エンジニアコミュニティ「エフスタ」についての紹介記事。地方特有のイベントの集客不足の問題に対してエフスタは、足を使って営業活動をし、地元の IT に興味のある人間達を集めるということをしているみたいです。おかげでエフスタコミュニティが開催するイベントには、地方開催にも関わらず多くの参加者が来るとか。

 勉強会というより、これはもはやこれは慈善活動でしょう。活動自体にも共感できるんですが、実際にやってのけちゃうところが凄いです。

 

 

・Software Designer

 就職してから退職するまで、生涯ソフトウェアエンジニアとして過ごした Chris Timossi という人のインタビュー記事です。氏の学生時代の話(コンピュータは DEC 製、プログラムは FORTRAN、そして入力はカードかテープ)から始まり、どうやってソフトウェアエンジニアとして生きてきたかといった話、そして若いプログラマに対してどのように生きたらいいかといった話について書いています。

 IT 業界は若い業界であると知られていますが、歴史的に(無事に)定年を迎えた IT 業界関係者が存在している事にちょっとだけ驚きです。しかし考えてみれば、IBM が System/360 を販売したのが 1964 年なので、当時 20 歳だったエンジニアも現在は 69 歳になる計算です。実は結構昔から、今のソフトウェアエンジニア的な人は居たんですね。

 それにしても「今後どのように生きるべきか」というテーマについては先月の SD の特集然り、皆さん「いろんな事に興味を持て、そしてやれ」という内容で見事に一致しています。これについて真っ向から否定するつもりはないですが、これだけで話を終わらせるのはちょっと乱暴です。

 Timossi さんも言及しているように、現在のソフトウェアエンジニアリングの世界は専門性がどんどん高くなっています。従って、一個人が有限の時間でカバー出来るフィールドは必然的に限られてきます。しかし専門性の高いフィールドに突っ走った結果、その分野の技術が陳腐化したり、他の分野の技術によって淘汰された際に困ってしまいます。なので、自分の専門性にある方向性を示しながらも幅を持たせるようにバランスを取るのがいいんじゃないかと思ったりしています。

 

 

・Inside Viewer

 現在行われている様々な広告配信の形態についての紹介と、マイクロアド社の取り組みについて紹介しています。記事では、広告配信の形態のうち RTB(Real Time Bidding)(Bid:入札)という形態と、これを実現するための即応性の高いシステムの構築手法について、ハードウェアとソフトウェアの両面について解説しています。最後に、マイクロアド社が現場のエンジニアを信頼する組織であるという紹介をしています。

 記事では FusionIO の ioDrive をかなり推しています(一瞬ステマかと思いました)。しかし、先月号で紹介された F2FS など RAW Frash ドライブ用のファイルシステムも整備されているわけで、ioDrive を商用で使うのは面白いです(決して個人では手が出ませんが)。更に KVS でパフォーマンスを出す取り組みとか胸熱です。

 記事の最後で触れられていた組織論についての話が気になります。現場を信頼するのがいい組織かどうかはわかりませんし、逆にトップダウンだからダメというのも変な話です。更に組織について議論すると必ず出てくるのが、大企業がダメでベンチャーが良いという話です。ある大学教授曰く、健全な組織であれば、何か間違っている or おかしい事象があったとき、それがどう間違っているかを論理的に説明でき、且つそれを合理的に解決する手法が提案された際には、その声が上まで届き、その案が実行するに値すると判断された際には最終的にその提案は実行される、そうした「パス」があるといいます。

 これに従うと、例え大企業だろうと現場の意見が係長→課長→部長→本部長→次長→専務→社長と登ってゆくパスが存在し、それがキチンと機能している組織は健全だと言えます。逆にベンチャーでも何か危なっかしいプロジェクトがあって、それについて何がどう危ないかをキチンと説明出来るのに、(手続き的に)誰にどうやって説明したらいいかわからないような組織は健全ではない事になります。一般的に、ベンチャーの方が上役に気軽に意見を言いやすい環境にあると思われるため、そうした大企業ダメ論が出てきたのだと思いますが、ベンチャーと言えど現場の意見が上に全く届かない不健全な会社もきっとあるんじゃないかと思います。最近、某検索サービス大手で IT の人材派遣所と揶揄されている某大企業のエンジニアと、今や飛ぶ鳥を落とす勢いの某ベンチャーのエンジニアと飲む事があり、この説の適例とも言える面白い話が聞けました。3年後に両社がどうなっているのか楽しみです。