少数の開発者と Cocoa の環境
数年ぶりに Mac を日常的に使うようになって驚くのが、非常にセンスのよいソフトウェアがフリーウェア、シェアウェア問わずにたくさん存在することだ。Mac のインターフェースを好きと、嫌いと感じるかは人それぞれだろうが、僕は Aqua インターフェースの上で構築されたプログラムには洗練されたものを感じる。
http://macslash.org/article.pl?sid=05/04/18/0942222 という記事を見つけた。まさに Mac の世界で起こっているこの現象について軽くだけど触れている。タイトルのとおり、Cocoa (Mac OS X 上のフレームワーク)と少数のデベロッパという組み合わせが今までにない現象を作り出しているというものだ。
Microsoft Office や Adobe Photoshop のような大手ソフトウェアが幅を利かせている中で、
the real innovation is happening on the fringe, where small developers are taking advantage of the remarkably powerful tools Apple has put at their disposal. The Objective-C language and the Cocoa frameworks, combined with the free XCode and Interface Builder tools, are the HyperCard of the object-oriented programming world.
本当のイノベーションは、少数の開発者たちが Apple の用意した強力なツールのアドバンテージを利用しているところにあるという。それは Objective-C 言語であり、Cocoa フレームワークであり、それらの開発環境である Xcode と Interface Builder だ。著者はこれらをまとめてオブジェクト指向プログラミングにおける HyperCard とまで言っている。
この強力な環境が作り出したものは、たとえば NetNewsFire、Delicious Library、Adium、Transmit、Comic Life なのだという。
Objective-C を使う時点で、基本的にそのソフトウェアは Mac OS X 向けに限定されてしまうから、やはり大手ベンダーはあえて上記の環境を使うことは出来ないのだろう。Objetive-C が使えなければ、Interface Builder による GUI の構築の旨味もないから、そうなると自社開発の GUI フレームワークによって開発することになる。だから残念なことに、大手になればなるほど Mac OS X の強力な開発環境を利用することはできない。
その裏で、クロスプラットフォーム性なんか考えないでも良い開発者たちは、Apple の用意した環境を存分に利用して短時間でシンプルながらも洗練されたプログラムを生み出していく。先ほど記事で挙げられていたソフトウェアはほんの一部で、僕が日常的に利用しているものでも SubEthaEdit や NewsFire も Cocoa がなければ存在しなかったであろう素晴らしいソフトウェアだ。
今回の記事にはこの現象に関してこれ以上のコメントはないため、あまり深く考えることもないのだが、やはり Mac OS X で面白いことが起きていることに違いはない。Tiger がもうすぐ登場する。今度のバージョンは Core Data と Core Image が付いてきて、ついに QuickTime の Objective-C フレームワークもある。わくわくせずにはいられない。
もう Debian やめる
一昨年の秋に、研究室のサーバー三台を Windows から Linux にした。そのとき Debian を選んだ。すでに当時の Debian (woody) もけっこうレガシーな代物だったが、勝手にそろそろ次のバージョンがリリースされるだろうという予想をして、Debian を選んだのだ。それから今に至が、相変わらず Debian のバージョンは woody だ。いくら安定したシステム優先といったって、もうすべてが古すぎ。すでに研究室のサーバーに入れてあるいくつかのパッケージは stable のものだと使えないので backport されたものとか、test のものとかを入れている。そんなわけでメンテナンスがちょっと面倒。いい加減に woody 疲れた。
ということで、あまっているマシンに Gentoo 環境を構築中。順次、サーバーのバックアップをとったりなんだりして、Debian 捨てて Gentoo に移行する予定。FreeBSD とかも魅力的な選択肢ではあるのだが。サーバーの HDD もそろそろ年代ものになってきて怪しいのでついでに新しいやつに換装する。Gentoo にして不安な点といえばマシンの CPU が VIA の C3 と非力なのでコンパイルが多くなるようだと実際の運営に支障を来すのではないかと。幸い三台ともマシンのスペックは同じなので distcc で分散コンパイルしてパッケージ作ってしまえば、他の二台にもそのままインストールできる。まあ大丈夫だろうと思う。
そんで、まあ、Debian ってこの先どうなるんだろう。最近は全然 Debian ネタは追いかけていないのだけど、Debian の魅力って今となっては何なのか不明。