KOF2008:関西オープンソース2008 に参加した

今日、KOF2008:関西オープンソース2008に参加した。11/7、11/8と2日あったが、11/8だけ参加した。印象に残った講演会、企画は以下。

はてな流大規模データ処理

僕にとってのメインイベント。はてなの伊藤直也さんが、大量のデータを扱うWebサービスにとって必要となる技術、注意点などを話してくれた。

かなり具体的な技術寄りお話だった。お話を聞いていると、「ここは**というオープンソースのアプリケーションを使っています」「ここは**という技術を使っています」という風に、色んなテクニックが話題に出てきた。

たぶん、様々な試行錯誤の結果に有効な方法を見つけたんだと思う。泥臭いやり方とも言える。何でも解決できる魔法のテクニックがあるわけではなくて、一つ一つの問題に地道に取り組み、解決するしかないということだ。

お話の最後に印象的なメッセージがあった。細かい表現までは覚えていないが、こういう内容だった。

「問題を解決するのに必要な方法は、結構古典的なアルゴリズムだったりする。その論文を読み、身につけることは別に難しくない。そうではなく、目の前にある問題をそういう既存の技術に結びつける道筋を見つけることが難しいし、それができる会社こそが本当に技術力があると言える」

実際、何か困ったことがあっても、どこから手をつけていいのかさっぱり分からないことも多いと思う。そこから既知の問題に帰着させる力こそがその人の技術力ということだ。今後の自分の目標としよう。

出張版Ruby初級者レッスン

Ruby関西で毎回行っているという初級者向けセミナー。実際にPC上でコードを書き、初級者から中級者になることを目指す。僕はRubyは未経験だったので、試しに参加してみた。

50分のセミナーだったが、時間が短くて物足りないと思った。逆ポーランド記法の電卓を作るという課題だったが、数字2個の足し算ぐらいまでで、電卓というほどのものは完成しなかった。

ただ、このレッスンの目的の一つとして「テスト駆動開発の体験」が上げられていた。test/unitを使用してまずテストを作り、それにパスするように本体を実装する、という流れだった。

僕は、恥ずかしながらこの手のテストを先に作る方法はやったことがなかった。とりあえず欲しいものを実装し、後でテスト(というか動作チェック)をする、という素朴なやり方ばかりだった。

今回のように先にテストを作ると、何が必要なのか明確になり、シンプルな実装にすることができる。それに、test/unitでテストを作るのは意外と簡単だった。全然面倒くさくない。むしろ先にテストを作った方が楽になる。

これはすごい。良い経験になった。

今後参加したいと思った勉強会

勉強会の紹介もかなりあった。そのなかで「これは参加せねば」と思ったのは以下。

Ruby勉強会@関西

今回初級者レッスンに参加し、物足りないと思ったから。あと、Rubyは普通に便利そう。次回は12月にあるらしい。

まっちゃ139勉強会

セキュリティ関連の勉強会らしい。セキュリティは業務でもプライベートでも大事なので、参加してみる。次回は2009/1/17(土)にあるらしい。

Ubuntuオフラインミーティング@東京

Ubuntuは僕のメインOSで、便利に使いこなしたいから。場所は東京だけど1回参加してみたい。まだWebページは無い(と思う)。IRCのログにログが残っていた。2008年内にあるらしい。

2008/11/26 追記: Ubuntuオフラインミーティングは2009/1/17 (土) に行われるようです。参考