Mac

Macとは

GUIワークスペースのオリジナル的存在

Macは、当時Apple IIのようなホビーコンピュータを作っていたAppleスティーブ・ジョブズが、Xeroxパロアルト研究所アラン・ケイの考え方を視察し、それを持ち帰ってLisaから続くMacintoshを作ったことで生まれたコンピュータです。
アラン・ケイダイナブック構想という「個人のデスクトップで使うコンピュータ」を考えた偉大なコンピュータ科学者で、そこにはウィンドウやメニュー、アイコン、ボタン、そしてマウスのようなポインティングデバイスで操作する、画期的(ある種革命的)な新しいコンピュータの操作体系がありました。
スティーブ・ジョブズはこの考え方をAppleに持ち帰り、現代のWindowsに代表される「ウィンドウ操作」のOS環境を作ったのです。
当時はBASICやDOSの時代だったため、人々は好奇な目でMacを見ました。同様のコンピュータ環境として、MicrosoftWindowsやコモドールのAmigaなどがあります。Windowsが成功したのは、IBM PC/AT互換機でMS-DOSを作っていたMicrosoftの作った「IBM PCで動くGUI環境」だったからであって、本当はWindowsはオリジナルでもなんでもなく、適当なMacのコピーです。ですが、それが受け入れられたのは、Appleの貢献によるところも大きく、Microsoftビル・ゲイツMac好きであることで有名で、「Windowsを作っているのにビルゲイツ本人はMacを使っている」などと良く分からない噂が立つこともありました。
当時のMacは、進んでいるだけであまり成功しませんでしたが、その後Appleからスティーブ・ジョブズが追い出され、NeXT社をジョブズが設立すると、今度はAppleがNeXTを買収して「新しいUNIX互換のMac」を作り、その技術を持ち帰って現在に続く新しいMac OS X(最近ではiOSと名称を統一してmacOSと呼ぶようになった)が生まれました。この頃、Macには後継OS問題というのがあり、旧MacのクラシカルなOSの存続としてCoplandというプロジェクトがありました。ですがCoplandプロジェクトは挫折に終わり、他社の技術を導入することになりました。BeOSが有力だと言われている中でAppleジョブズによるNeXTを買収しました。ジョブズは早い年齢で亡くなりましたが、今ではAppleGAFAと言われるだけの大サービス企業です。Macは浮き沈みの激しい会社で、Netscapeに買収されるかもしれないなんて話もありましたが、今のMacUNIX的に安定し、GUI的にオリジナルで、デザイナーやプログラマーから支持されるコンピュータになっています。
Macに対する批判としては「デザインと目新しさ優先でユーザーのことを考えていない」と言う意見がありましたが、最近はユーザー指向のままで新しいもの好きな人に受け入れられており、それだけではなくUNIX環境だったNeXTSTEPの技術を導入したことで、「Cocoa APIUNIXも使える賢いOS」になりました。今、一番賢いOSだと思います。
ハードウェア的には、長い間IBMPowerPCプロセッサを採用しており、「IBM PC/AT互換機とは全く違う独自仕様」であることで有名でしたが、今ではIntelプロセッサを使っており、「IBM PCと何も変わらず、面白みがひとつ消えた」といって嘆くファンもいます。昔から高スペックかつ高価であり、普通のパソコンよりは豪華な仕様ですが、ユーザーが中を空けて改造することができず、ハードウェアも多くが純正を使う必要があるなど、ハードウェア的な課題はあります。ですが、UNIXを使っていることで、ネットワークにも強くなり、カーネルDarwinというMachマイクロカーネルFreeBSDのユーザーランドを組み合わせたオープンソースカーネルを使っており、HTMLレンダリングエンジンのWebKitKDEKHTMLベース)などを通じてオープンソースにも貢献しています。付属開発ツールとしてXcodeがあり、Xcodeをインストールするとgccなどもインストールされるなど、「正統派UNIX」として、一時期は「サーバー用途にも使えるのではないか」と言われていました。

金のある物好きとプロの仕事用

Macは、高価かつ高スペックで、美しいインターフェースとUNIXの環境を備えているため、「金のある物好き」には良いでしょう。
ですが、Macにも対応している一部のアプリケーションを除いて、Windowsアプリケーションは動きません。また、ハードウェア的な制約もあり、ハードウェアを使うためのドライバーがないことが多く、純正ハードウェアを購入しなければならないこともあります。
あとは、プロのデザイナーやプログラマーが自分の仕事に使うための「仕事用機器」としては良いパフォーマンスを発揮します。特にAdobe製品を使うデザイナー(僕を含む)や、Objective-CやSwiftなどの革新的な言語を使ってiPhoneiOS用のアプリケーションを作りたいモバイルプログラマにとっては、価値あるマシンとなります。ですが、一般のオフィス用途には使えないと思って良いでしょう。また、サーバーやエンタープライズで使えるほどの安定性はなく、そのためにはUNIXLinuxを使う必要が出てくると思います。あとは、UNIXGUIの融合した「美しい設計と実装」に興味のあるマニア向けのOSだと思います。

プログラミング入門にはWindowsよりMacという意見も

ネット上には、プログラミング入門にはWindowsよりもMacの方が良いという意見もあるようです。プログラミング言語処理系などの開発環境が導入しやすくテストサーバーも簡単に立てられるという特徴があるのかもしれません。
ただし、デザイナーの僕の意見では、Adobe製品を使うならWindowsでもMacでも同じです。PerlPHPを使いたい場合、Windowsは環境を構築するのが難しいという場合は、オンラインでコードを書いて実行できるPaiza.ioがおすすめです。特に、プログラミングに慣れていない人のコンピュータで小さなコードを書く時は、PerlをインストールするよりもPaiza.ioでPerlのコードを書くと楽に実行できます。

僕はこう見えてMacユーザー

実際のところ、僕はこう見えてMacユーザーです。その根拠は、作業所のデザイン業務でMacを使うからです。
普段使うパソコンはWindows 7+Illustrator CCを使っていますが、Photoshop CCを使う必要がある時は普段指導員の方が使っているMacを使って写真補正などを行います。
僕が使うのはFinderとIllustratorPhotoshopだけなので、Windowsとあまり変わりませんが、昔はPerlのゲームを作るためにも使っていたことがあります。
標準のテキストエディットではダブルクオーテーションが強制的に変換されてしまう問題があるため、テキストエディタにはAtomを使います。
また、WebブラウザにはGoogle Chromeを使います。
また、僕は結構Apple製品も使います。iTunesVLCを音楽プレイヤーに使うほか、iPodは自宅の音楽用途に、iPhoneはカメラ用途に使います。
そういうわけで、僕はMacユーザーです。ほかにも、Windowsも使います。Linuxは以前使っていましたが、遊び用途にしか使わず、久しく触れていません。それでも昔はLinuxの内部システムの研究をたくさんしていました。そのため、最近のLinux情勢には詳しくありません。
最近はGoogleによるマイナーブラウザ排除問題がでており、KonquerorやFalkonなど一部のWebブラウザGoogleにブロックされてアクセス・ログインできなくなったりしていますが、僕はGoogleは嫌いですがGoogle Chromeは使わざるを得ません。最近使っていたMozilla FirefoxGoogle Chromeに戻しました。Mozillaは不安定で僕のWindows 7ではきちんと動かなくなったためです。

職場でMacを主に使うことになった

最近(2020.03.03)、職場に新しいMacbookが入って、そのMacを僕が使うことになった。
またネットワークの設定もできていないが、Illustrator CCやPhotoshop CCなどAdobe Creative Cloud製品が一通り入っていて、面白そうである。
今まではMacもたまに使いながらWindowsを使っていたのだが、これからはMacメインとなるため、これを機にMacの使い方をマスターしたいと思う。

macOSWindows 10と同じく永続更新される

MacのOS(macOS)はWindows 10やArch Linuxと同じく永続的に更新されます。そのため、買い替える必要はありません。

操作性

FinderやDockが使いやすい

Macでは、macOSに付属しているFinderというファイルマネージャを使いますが、縦三段に分かれたFinderのインターフェースは使いやすいです。
また、Windowsのように常に出ているタスクバーではなく、マウスを画面最下部に持ってきた時に表示されるDockという斬新なインターフェースを持っています。
そして、アプリケーションメニューは統一的に画面最上部に表示します。
後日注記:アプリケーションメニューは、フォーカスの当たっているアプリケーションが有効になる。なので、Finderで新しいウィンドウを開こうとして、前面に開いていたPhotoshopのキーボードショートカットを実行してしまったりすることがあるので注意してほしい。
後日注記:Finderは三段表示だけではなくツリー表示などもできて使いやすい。だがハードディスクのアイコンまで名前変更できてしまうのはちょっと嫌だ。*.epsファイルを開く時にIllustratorで開いてほしい時とPhotoshopで開いてほしい時があるのだが、これの設定はいちいちFinderの「情報を見る」から設定する必要がある(右クリックでアプリケーションから選択して開くことはできる)。またDockはドラッグ&ドロップで削除したり追加したりすることができる。ディスプレイの解像度の設定はやけに分かりづらい。

Macのキーボード

キーボードは、Ctrlキーの代わりにCommandキーを使います。また、AltキーはOptionキーを使います。
後日注記:MacではCommand+Deleteでファイルの削除。単にDeleteだけでは削除できない。また、テキスト編集中のDeleteはWindowsパソコンでのBackSpaceと同じ。また、Enterでファイルの名前変更ができる。半角/全角ではなく英数キーとかなキーで日本語変換を切り替える。また、PhotoshopIllustratorを使う場合は、WindowsMacにはあまり違いがない。ほとんどのキーボードショートカットが共通。
後日注記:Macで切り取りを行うには、通常のコピー(Command+C)を行った後でAlt+Command+V。慣れないと使いづらい。

スクロールが逆

Macではマウスホイールのスクロールが逆になります。慣れないととても使いづらいですが、慣れましょう。

全てのウィンドウを閉じてもプロセスが生き続ける

Photoshopなどを使う時の注意点として、単に全てのウィンドウを閉じただけではプロセスは終了されない。プロセスを終了させるにはDockのアイコンを右クリックして終了を選択する必要がある。

ターミナルが賢い

また、Macの優れた点はUNIXコマンドラインがそのまま使えること。特にduコマンドなどは何の問題なくMacで動くため、普通に実行してawkやsortに渡すことができて便利である。

ティーナディスプレイがめちゃくちゃ綺麗

また、Macは単にUIが透明感があってスタイリッシュなだけではなく、レティーナディスプレイがめちゃくちゃ綺麗です。
デザインをやる上で、これは少し問題があるかもしれません。画面上で「綺麗だ」と思っても、印刷するとそうでもないことが多いのです。
デザイナーはレティーナを素晴らしいと言いますが、レティーナに騙されないように注意しましょう。紙面のデザインはインクにしてみなければ分かりません。

余談

ApplemacOSのstable(安定)ブランチを作るべき

僕がAppleに言いたいことは、「革新性とイノベーションだけではなく、安定した使えるOSを作れ」ということだ。
Appleが革新性とイノベーションの会社なのは分かる。だが、現状のAppleは、確かに革新的なOSは作れているが、それはアイディアの実験場のようなものであり、安定化された使えるOSは作れていない。
だから、僕はApplemacOSに対して、「stableブランチ」を作るべきだと思う。
今の時代、Windowsが何も進歩できていない。誰もが、Windowsに代わるOSを求めている。だが、Appleは革新性とイノベーションばかりで、使えるOSが作れていない。
僕は、macOSを今、安定化されたもの(=stableブランチ)にして、それをWindowsなどの走るPC/AT互換機でも動かせるようにし、無料でオープンソースにすれば、きっとmacOSが標準の地位を奪還できると思う。
最近、macOSがどういう位置づけや価格にあるのか、僕はニュースを見ていないから詳しく知らないが、一度無料アップデートが可能になったこともあったはずだし、LLVMWebKitなど、準Appleの技術にはオープンソースなものもどんどん加わっている。そもそも、Mac OS Xは*BSD系のUNIX資産とマイクロカーネルMachをベースにした、本当のUNIXとなったが、AppleはそのコードもDarwinとして公開している。
だから、Appleは、たとえば10年間サポートするstableブランチを作って、安定化された長く使えるOSを作って、その上でハードウェアを販売し、また正当なブランチである「developブランチ」で革新性やイノベーションを試せるようにして、それをクローズドに会社で開発すれば良いと思う。
本当は、そんなことを言わなくても、今ではAppleは一流のオープンソース貢献者だ。だから、Googleと一緒に仲良くやってほしい。オープンソースは、競争と金儲けだけのITソフトウェア業界に、「オープンによる非競争の協力と共有」という概念をもたらした。それによって、AppleGoogleが同じコードベースでブラウザのレンダリングエンジンを開発するという、半ばあり得ないことを実際に起こさせた。それはとても良いことだと、僕は感じている。出来ることなら、MSにはOfficeやVisual Studioのコードをオープンにし、gccと一緒に切磋琢磨にコンパイラを開発してほしいと思っている。
後日注記:AppleGoogleは上手くいっていないところがあって、AppleによるWebKitに対してGoogleはBlinkをforkした。また、iOSAndroidでも争っている。だが、GAFAと呼ばれながらもGAFA感の薄いAppleには、Googleのような闇の企業にならないように頑張ってほしい。
後日注記:僕が実際のMacを触って思ったことですが、「Macはとても安定している」ということです。UNIXをベースとしているからか、Macは安定しています。むしろ、stableブランチよりも、「最小ブランチ」を作ると良いと思います。標準で要らないものが何も入っていない代わり、必要なアプリケーションだけを揃えることのできるMacがあるととても良いと思います。

標準のテキストエディットでプログラムの開発はできない

標準のテキストエディットを使うと、プログラムの開発で行き詰ります。特に、ダブルクオーテーションの"を入力することができません。始まりの"と終わりの"で文字が変わってしまいます。
Macの標準アプリケーションは先進的で面白いのですが、Windows同様にきちんと考えられていません。テキストエディタにはAtomなどサードパーティのものを使いましょう。
後日注記:スマート引用符は設定でオフにできますが、いろいろと便利なのでAtomを導入することをおすすめします。

Macの優れた点と劣った点

Macの優れた点として挙げられるのは、「最初からUNIXの便利ツールが入っていること」です。
たとえば、PerlPythonが最初から入っています。これはとても便利で、Windowsのように開発環境をインストールしなくても、簡単にPerl/Pythonの開発ができます。
ですが、Appleはそう甘くありません。gccLLVMのclangは、入っている時と入っていない時がありますが、入っていない場合にはXcodeのインストールを推奨されます。これはMacIDE統合開発環境)です。インストールには手間と時間がかかります。
また、Macの劣った点として、「ハードウェアが標準規格と違う」ということが挙げられます。Windowsで使えるようなハードウェアが、Macでは使えないのです。それどころか、ハードウェアの自作や分解も出来ないことが多いです。
Macはとても面白い環境で、技術的にも先進的で、最近はiPhoneの普及などがあり、全くニッチなだけの市場ではなくなりました。しかし、カリスマだったスティーブ・ジョブズは亡くなってしまいました。これからどうなるのかは分かりませんが、時代はMacUNIXの行く方向に向いているような気がします。

ジョブズが死んで、IT業界のイノベーションリーダーが居なくなった

僕は、スティーブ・ジョブズが死んだことで、今までIT業界のイノベーションリーダーだったAppleの役割が後退したと思います。
新しいティム・クックCEOは、iPhoneなどの成功もあって、かつてないほどAppleは成功しています。Macなども好調で、特にMacは以前の不人気から復活して巻き返しています。
ですが、僕はスティーブ・ジョブズの死は全く、賢い人間を失ったと思います。
以前のAppleは、Windows全盛期だったこともあって完全に負けており、「目新しさ優先」で開発していましたが、そのことが、このIT業界を引っ張ってきた「牽引役」だったと思います。
Appleはただの普通の会社になっただけではなく、最近はテレビCMで愚劣な洋楽を流しているように、悪い会社になりました。僕はとても残念です。
僕はMacApple製品は良く使います。特に作業所のデザインの仕事は、WindowsだけでなくMacも使いますし、あるいは、iPodに音楽をiTunesで同期して使いますし、iTunes Music Storeも何度か使いました。
Appleには頑張ってほしいですが、僕はジョブズが居なくなったことでIT業界はほとんど終わりだと思います。最悪の企業しか残っていません。ジョブズは本当に偉大でした。IT業界全てをひっぱっていくカリスマでした。

MacMacであることと、人々に使われることの両立が課題

僕は、MacMacであることと、人々に広く使われシェアを得ることの、両立あるいはバランスが大切だと思います。
AppleによるMacが、オープンなハードウェアやCPUで動くようになり、macOSWindowsに近いものになることで、人々に広く使われるようになることも、Appleならできるでしょう。
ですが、そうなった時点で、MacWindowsと同じもの、あるいはWindows以下のものになってしまい、Macではないものになってしまいます。
そう、Macとは一種の芸術作品のようなもので、「Macらしさ」が失われればそこで終わりなのです。簡単に変えることのできないMacというブランドの中で、どのような「目新しさ」を作っていくか、ということが、Apple創業者のスティーブ・ジョブズが作り上げた、MacというOSとAppleという会社だと思います。
ジョブズルーカスフィルムのコンピュータ・アニメーション部門を買収して映画産業に参入し、ピクサーのCEOにも就いた極めて稀な人物でした。ピクサーが2006年にディズニーに買収されると、ジョブスはディズニーの筆頭株主になりました。
まさに、今のAppleの株価もうなぎのぼりです。ジョブズは死去しましたが、今からのAppleMacがどうなるのか、作業所でMacを使っている僕としては、いちMacユーザーとして応援し、期待しています。

Macはサーバーには不向きだがプログラミングには良い

僕が最近Macを職場でメインで使うようになった感想として、「サーバーには不向きだがプログラミングの練習には良い」ということが言えます。
Macの/usr/binなどを見ると、gccperl/python/rubyなどが標準的に入っていて、何も設定を変えなくても、すぐにプログラミングに使えます。
/binにはbashzshなども存在し、awkなども動作するため、UNIXコマンドラインを学習するにはとても素敵な環境です。
これで、美しいレティーナディスプレイを使うことができ、Adobe PhotoshopIllustratorまで動くのは、「最高のデザイン環境」と言えます。
ですが、ひとつ、注意が必要です。それは、最初から何でもかんでも含まれすぎている、ということです。なぜか、railsやgitなども最初から導入されています。railsが最初から入っている、というのは、ミニマム化の原則からあまり良いことではないように僕は思います。セキュリティの問題を考えれば、本番のサーバーにはやはりUbuntu Serverを導入するべきでしょう。
後日注記:railsやgitが最初から導入されていると言ったのは勘違いでした。/usr/binにはrailsやgitがありますが、これはファイル名が用意されているだけのようで、実際にはコマンドを実行した段階でXcodeやgemsのインストールを求められます。よって、Macには最初からrailsやgitは導入されていません。安心してください。

関連OS

BeOS

BeOSは、BeBox、Power MacPC/AT互換機で動作する、マルチメディアに長けたOSで、POSIXとも互換性がある。
当時のPowerPCで動くMacより、はるかに高速に動作し、「PowerPCの真価を発揮した」と世界を驚かせた。
特徴は、
マイクロカーネル
オブジェクト指向の優れたAPI
・並列性
ジャーナリングのあるデータベースのような64bitファイルシステムBFS
・シングルユーザー
UNIXのコードベースを採用せず、一から作り直された

NeXTSTEP

Apple社を追われたスティーブ・ジョブズが作ったNeXTという会社によるオブジェクト指向UNIX互換OS
ユーザーインターフェースに独特のDockを採用し、オブジェクト指向のクラスAPIを備える。
独特で斬新なさまざまなGUI要素を開発し、「次のステップ」という名前の通りの優れたOSだった。また、美しいクラス設計は評価が高かった。
後にAppleに戻ったジョブズがそのAPIMac OS Xへと持ち帰った。
Linuxで動くフリーなクローンとしてGNUstepがある。これは単にウィンドウマネージャというだけではなく、GTKのようなツールキット・開発環境として使用できる。

BeOSを開発する者は居ないか

僕は、日本のIT企業に、BeOSのような優れたOSを開発してほしい。
僕が思うに、どうにかしてBe社のBeOSの遺産を継承できないかと思う。
BeOSオープンソース版としてHaikuというプロジェクトがあるが、彼らに何らかの形で協力するように、日本企業が努力することができないかと思う。
僕は個人的にBeOSがどのような操作性を持った環境かは知らない。だが、目にする内容では、「理想のパーソナルOS」ではないかと思う。
僕にもう少し技術力があれば、Haikuに協力することも考えられたかもしれない。

簡単な説明

その他のOS

  • その他のOS
    • Mac
      • 僕はデザインの職場ではMacをメインに使っている
      • ティーナディスプレイが美しいのは素晴らしい
      • いろいろとおかしな点が多い。ホイールによるスクロールが逆なのだけは好きになれない。
      • 壊れた時にハードウェアを簡単に分解できないのだけはどうにかしてほしい。
      • macOS
      • iOS
      • Objective-C
      • Swift
      • Xcode
      • Cocoa
      • X11.app
      • Quartz
      • Darwin
    • BeOS
      • かつてあった素晴らしいパーソナルOSだったが成功しなかった
    • NeXTSTEP
    • Amiga
    • Android
      • Googleによるスマホ向けのOSで、JavaLinuxカーネルをベースにしている
      • タッチパネルによる操作と、簡単に導入できる「アプリ」が便利で、モバイルで使えるインターネット端末として、ただの携帯電話を超えた「新しいコンピュータ」の形態を確立しつつある