« 2006年05月07日 | top | 2006年05月13日 »

2006年05月08日

ソフトウェア開発と、作業場の音環境

連休中、1日だけ京都に行くことがあったのだが、
そのとき「有次」という老舗の刃物鍛冶屋に立ち寄った。

その店でいろいろな刃物を見ているとき、さまざまな「作業の音」が耳に入ってきていて、
それが店の雰囲気を作っていることに気づいた。刃物鍛冶屋では、
鍋の底を金づちでカンカン叩く音、回転やすりのゴーゴーと回る音、
大根おろしを作るために金属の針で金属板をギリギリひっかく音、
包丁を紙やすりでシュッシュッと仕上げる音、万力をコリコリと調整する音など、
さまざまな音が混ざった状態で聞こえてくる。
お客さんに対応している年長の職人は、お客さんと話しをしつつも店の音に聞き耳をたてていて、
若いエンジニアが作業手順を間違っていないかどうかチェックしているようだ。

ソフトウェア開発の現場は、鍛冶屋とは異なり、みんなが集中していればしているほど、静かだ。
音といえば、キーボードを叩く音とPCのファンが回る音ぐらいのもので、
ちょっと離れると聞こえなくなるほど小さいし、PCのファンはずっと一定の音を出しているので、
変化としてはとらえることができない。ゲーム開発の現場でも
テスト用モニターの音量は最小にしておくのが通例だ。

音は、光と異なり、音源の方向を向いていなくても感知でき、
さらにちょっと意識すれば音源の方向を把握できるという、
独特の特徴を持っている。作業場(オフィス)においては、
仕事仲間の動きを、自分の手を止めたり、視線を動かさずに、
「なんとなく知る」ために、作業音が役に立っている可能性がある。
仮にソフトウエア開発の現場に、作業音による状況把握のしくみを
持ち込むとしたらどんな感じだろうか。試しに、鍛冶屋になぞらえて想像してみる。

やはり、ソースコードをバリバリ書いているときは、
金槌でガンガン叩いているだろう。これは8時間のうち最大でも1時間ぐらいだろうか。
デバッガを使ってメモリの内容を微修正しているときは、
紙やすりでシュッシュっと微修正だ。例外が発生したら、金属板をペキッと割った音がする。
エディタを開閉すると箱を開閉する音がする。でかいファイルだと音もでかい。
もちろん、エディタの種類によって音が異なる。
コンパイル中は機械が活躍しているので、エンジンの音がしても良い。
Warningが出たら、バックファイアのパンパンという音が出てしまう。
巨大なコンパイルをするとエンジンは高回転になる。
プロファイラを利用してベンチマークを調べているときは、
メジャーをカリカリと伸ばす音がする。UNIXコマンドを入力しているときは、
ドライバーでねじを回す音がする。
コードをばっさりと削除したら、ノコギリでぎこぎこ。削除した量によって音の長さや大きさが変化する。
ファイルを削除したら、くしゃくしゃと紙を丸める音がする(macosはそうだった。)
数ギガもあるディレクトリを削除したときは、ドドドという音とともに流れていく。

ソフトウェアの場合は、鍛冶屋ではなく、建設現場のような雰囲気のほうが合っているかもしれない。

こういった音を発生するデバイスをすべての端末につけて、
自分ではなく自分とは反対の方向に音が出るように設置しておく。
作業場がうるさすぎるとストレスになるから、
音量や音の内容には注意する必要があるが、
音量は各自がその日の気分や担当などに応じて、自由に調整したらよいだろう。
あるいは、若いエンジニアは、まだ学習途上だから、
あえて音を大きく聞こえるようにして、年長者のアドバイスを
もらいやすい環境を作るのも良いかもしれない。
ステルス作業をして、ほかのスタッフを驚かせたい場合は、無音に設定してもよいだろう。

音による情報共有は、まだまだハックされてないのではないか。

Posted by ringo : 08:54 | TrackBack

« 2006年05月07日 | top | 2006年05月13日 »