オープンソースカンファレンスに行ってみた
event

オープンソースカンファレンスに行ってみた

2014.10.30

ent72_img01.jpg

10月18/19日、オープンソースの文化祭「オープンソースカンファレンス(以下OSC) 2014 Tokyo/Fall」が開催された。

今回の会場は、明星大学日野キャンパス。かつて、オープンソースを広めたい、プロプライエタリなビジネスから脱却したい、といったエンジニアの想いによって大いに盛り上がったOSCだが、オープンソースの活用が当たり前、というかオープンソース抜きでは成り立たなくなったIT業界、そして都心から遠く離れた場所での開催とあって、筆者としては「盛り上がるのだろうか?」と多少心配しつつ、バイクをとばして行ってみることにした。(鶴田展之

明星大学に到着。構内は多摩にあるキャンパス特有の一種無機的でサイバーな雰囲気だが、OSCの会場である28号館に足を踏み入れた途端、周囲の景色が一変する。結論から言うと、心配は杞憂であった。今年は1550名と多くの方が来場しており、2階から4階まで、各教室は様々な展示とセミナーで大賑わい。昔に比べても、萌えキャラをフィーチャーする展示ブースが増えたり、メイド服のお姉さんが闊歩していたり、アイドルユニットがチラシ配っていたりと、オープンソースの「文化祭」らしい(?)華やかな盛り上がりを見せていた。

ent72_img02.jpg

もちろん、各ブースの展示は大真面目である。オープンソースハードウェアあり、ERPパッケージあり、統合監視ソフトウェアあり、地図・地理データあり、クラウドサービスあり、と、オープンソースの活用が広まった分、適用分野も広がり、より困難な問題の解決に向けた技術の深化が進んでいる様子が垣間見えた。

■ Open usp Tukubai

一通り全体を眺めた後、予約しておいたセミナー「UNIX基礎とシェルコマンドを便利に学ぼう! ~簡単便利なTukubaiコマンド10選~」を聴講した。講師はUSP研究所の岡田健氏である。

ここ数年、MacOS XやLinuxをメインに使う人が増加したことで、UNIXコマンドやシェルスクリプトの重要性が増している。が、ほとんどのユーザは、ターミナル上で一般的なUNIXコマンドに多少触れるぐらいで、複雑なデータ処理や規模の大きなアプリケーションにシェルを使う機会は多くないだろう。我々の間では、大規模なデータを処理するにはデータベース=RDBMSが必須、というのがなんとなく暗黙の了解のようになってしまっている感がある。かくいう筆者も、業務の中心はMySQLやPostgreSQLを用いた業務アプリケーションの開発が中心である。

USP研究所は、RDB中心の開発手法とは異なる別の道として、「ユニケージ開発手法」を提唱する。小さく汎用的なコマンドを組み合わせてシェルスクリプトを記述することで、ソフトウェアの無用なレイヤの増加によるパフォーマンスの劣化も防げる、移植性も確保できる、というのが、ユニケージ手法の中心的な考え方だ。データも、「フィールド形式」と呼ばれるファイル形式が利用されるが、実際のところフィールド形式は単なる「空白区切りテキスト」である。

<<フィールド形式の例>>
0000000 浜地______ 50 F 91 59 20 76 54
0000001 鈴田______ 50 F 46 39 8 5 21
0000003 杉山______ 26 F 30 50 71 36 30
0000004 白土______ 40 M 58 71 20 10 6
0000005 崎村______ 50 F 82 79 16 21 80

ユニケージエンジニアのコミュニティ「UEC - usp engineers' community」のサイト上にある「ユニケージエンジニアの作法 心得三箇条」という文書には、

● 「業務システムは人間の手作業を自動化したもの」
● 「人が理解できるレベルでの処理をPCにやらせるのに、これまでの担当者が理解できないような高度な技能が必要となるようなやり方をする必要はない。これまでと同じレベルでの難しさで開発および操作できる必要がある。」

とある。オーバーテクノロジ化、複雑化を続ける情報システムに対するアンチテーゼとして、シンプルでユーザ・オリエンテッドなアプリケーションを目指すユニケージ開発手法は、ひとつの明快な答えといえるだろう。かつて、データマイニングツール「MUSASHI」を開発した関西学院大学の羽室行信氏も、同様にRDBの設計手法を「神の視点であって現実的でない」と批判されていたことがある。本当に巨大な「ビッグデータ」を扱うようなケース、ビジネス・インテリジェンスやデータマイニングの分野には、むしろユニケージ手法のようなスタイルの方が適しているのかもしれない。

さて、岡田氏のセミナーは、このユニケージ開発手法で使われる便利なコマンド群「usp Tukubai」から、いくつかの基本的なコマンドと実際の使用例を紹介するものだった。Tukubaiの各コマンドでは、フィールド形式のデータから「◯列目」を取り出す「self」、桁揃えを行う「keta」、同じキーの行数を数える「count」など、UNIXコマンドを駆使すれば可能だがちょっと面倒、といった処理が、コマンドひとつで容易に行える。これにより、業務の手順を直感的にシェルスクリプトとして記述でき、メンテナンス時の可読性も高まるだろう。実際の適用例として紹介されたのが、時間の都合もあって「Webアクセスログの解析」「Jリーグ対戦成績の分析アプリケーション」のみだったのが残念だが、いずれも大量データ処理を瞬時に行える高い性能が伺えるものだった。

ent72_img03.jpg

なお、フルスペックのusp Tukubaiは有償だが、Pythonで再実装されたオープンソース版の「Open usp Tukubai」は誰でもダウンロードして使うことが可能だ。本格的にユニケージ開発手法にトライしてみるもよし、日常のルーチンワークに取り入れてみるもよし、UNIX系のプラットフォームを使っている方は、是非一度試して頂きたいコマンド群である。

◆ UEC - usp engineers' community site
https://uec.usp-lab.com

◆ USP研究所(有限会社ユニバーサル・シェル・プログラミング研究所)
https://www.usp-lab.com/

原稿:鶴田 展之
qnote代表取締役。オープンソースソフトウェアを用いたシステムインテグレーション及びコンサルティングの傍ら、技術書を中心に多数の著述活動を行う。
なお、オフィスには7匹の猫がいる。

この記事はどうでしたか?

おすすめの記事

キャリアを考える

BACK TO TOP ∧

FOLLOW