Amen, Jobs...
retired to die ... とは思わなかった。
Macが無くなったわけではないけれど、今後のアップル製品がどのような魅力を醸し続けるのか、株価のように暗い気持ちになっている。パソコンの、事実上最後のAlternative、いやそう言ってはLINUXの開発者に失礼か、だが商業上は最後の選択肢を失った気がしている。願わくばAppleプログラマが奮起してくれんことを。
私も一応元マカーであり、今でも屋根裏にSE/30が眠っている。私にとってアップル社とはiPhoneでもiPadでもなく、Macintoshなのである。…いや、昔話はやめておこう。これからの同社がどのようなカラーを残していくのか。それを楽しみにしている。きっと彼もそう思っている。
後日追加:
「昔話はやめておこう」と言う理由を考えてたら少々話が広がったので少し追記。
この業界は、ポルシェではないけれど「最新のPCが最良のPC」と「信じて」仕事をしなければ遅れを取る世界だと思う。だから昔話はナンセンスなのである。ことMacintoshに被れたプログラマは、プログラムを文芸作品と勘違いした言動がよく見られ、アンチマック派の格好の標的になっている。また、Windowsプログラマでも最近の情報技術を学んできた人には、やれ構造化とかオブジェクト化の方法論をまず念頭にプログラムをするケースが多い。中には「俺のプログラムを読む奴には仕様書は要らない。」と言って憚らない方も多い。
ここからテーマが変わる。
私の場合、プログラムは工業製品と捉えている。1に安全、2に性能、3に機能、4に価格、5に使いやすさ、6に見た目、である。プログラミングの方法論は趣味だけの世界。必要であれば私は2000行先のステップにすらJUMPする。無論プラットフォームはお客様のお好み次第。PCだマックだLINUXだで一々騒いでいるようでは学生の戯れである。
1の「安全」は、全てのプログラマが見落としてはならない絶対条件である。それはマスプロダクトされるパッケージ製品であっても例外は無い。「命に関わる」プログラムは結構多いのだ。わかりやすいのは医療関係に使われるプログラム。オフィス系でもDB系でも誤りがあれば投薬量を誤ったりすれば危険は明白である。もっと端的に言えば、昔、私が作った試作プログラムを動かしていたPCから煙が出たことがある。これは2を優先させ過ぎた結果プロセッサに過負荷がかかって発熱したためである。この出来事に「ソフトウェアは関係ない」と言うプログラマは信用できない。これはハードウェアメーカとソフトウェアメーカ双方が同じ責任を負担して解決すべき問題である。ハードを壊すプログラムは比較的容易に作ることができる。…無論これらの事故はPCとプログラムの使用許諾書によって免責事項として記載されていることが多い。しかし、それはプログラマには関係ない。
忘れてならないのは、1の「安全」には安定性も含まれる。安定しないプログラムは危険だから。
2,3については言葉を要する。2はそのプログラムは本質的に何をするものなのか、を押さえられていると仮定した上での優先事項である。3は使われない機能や設定事項が多いのは見苦しい。プログラムを買うお客様が何を思ってそのプログラムを選択するのか。その勿体を外したり、翳られてはならない。末端の機能はあとから付ければ良いのだ。
4以下のものに私はあまり関心が無い。少々疲れたのでここらd筆を置こう。
プログラムは芸術作品じゃない。その品質はあくまで合理的に評価される工業製品である。だがそれは進化する。時を隔ててプログラムを作れば当然進化したものになるし、またそうでなければならない。理想を言えば、そこに存在しないかのようなプログラムが理想だ。まあ、そんな仕事をしても報われないんだけどね。