MacOSXによるUNIX系開発
私がプログラミングの仕事をする際には、8割以上、最近だと9割以上UNIX系OSで、C言語を使ってネットワークプログラムを作ります。最近ではEclipsやVisualStudioなどのような統合開発環境を使う開発も多いと思いますが、私は昔ながらの、viエディターとmakeで仕事をしてます。この開発スタイルの場合、端末エミュレータでtelnetやsshで開発機にログインすれば、開発機の目の前で作業せずに仕事ができますし、今時のネットワークは高速なのでリモートで作業してもほとんどストレスを感じません。統合開発環境を使う場合はリモートデスクトップなどで画面イメージを飛ばして遠隔作業ができますが、それはさすがに今時のネットワークでも結構重たい感じになります。
まあ、それはさておき、端末エミュレータを使うことを考えると、Windowsより断然MacOSXです。なにしろOSXはBSDがベースですから、元々UNIX系で、端末エミュレータというより、ターミナルがそのまま使えます。WindowsでDOSプロンプトを使ってtelnetするのとは快適さが全く違います。WindowsならTeraTermを使うことが多いと思いますが、それよりもさらに快適です。ただし、OSX標準付属のターミナルより、iTermの方がさらに快適です。たまーにiTermは死んでしまうことがあるのが玉に瑕ですが。。
さらに、GUIのプログラミングはUNIX系であってもOSによる違いも多いのですが、ネットワークプログラミングは、非常に低レベルな部分を直接扱う場合以外はほとんど共通ですので、OSXで開発したソースをほとんどそのまま他のUNIX系OSで使えます。Solaris用のプログラムをOSXで開発を進めることも現実的にほとんどの場合で可能です。
OSXは独自の優れたGUIの操作性ももちろん人気なのですが、実はUNIX系OSとの親和性の高さもポイントなのです。それならLinuxでいいじゃないか、という意見もあると思いますが、プログラミングのみならLinuxで良いのですが、普段の作業でやっぱりOSXの優れたUIの操作性やそれを活かした便利なアプリケーションが使いたいのでOSXが好きなのです。もちろん、Appleのハードウェアの作りの良さも理由の一つになるでしょう。キーボードの使いやすさもたまりません。なにしろ、HHKで有名なW先生も今やMacBookAirのキーボードをそのまま使っていると先日お会いしたときにおっしゃってたくらいですから。
いまや私にとってWindows出なければならない場面は、どうしてもオリジナルのMS-OFFICEのドキュメントを扱わないと駄目な時と、OSX用プリンタードライバがないプリンターを使う時、VisualStudioを使わないとならないとき、Windows版のゲームをするとき、BlueRayの映画を見るときくらいでしょう。OFFICEはOpenOfficeのバージョン3系がOSXでも快適に使えます。
今年の2月にMacBookAirを買うまでは、実は一度もAppleのPCをまともに触ったことが無かった私でも、半月もしないうちにWindowsPCはほとんど使わなくて困らなくなりました。Appleも実はMS同様、完全にオープンなスタンスではないのは気になるものの、純粋に使っていて快適です。食わず嫌いの人は是非一度だまされたと思って触れてみてはいかがでしょうか。