開封したばかりのMacBook Air M1

ついにMacを使い始めました。初めてMacを使った感想は、Windowsが栓抜きからドライバーまで色々なツールが内蔵されたアーミーナイフとすると、Macは国宝級の修繕をする宮大工が使うカンナみたいな道具に見えました。

App Storeは下火だった

iPadが出た当初、AppStoreには色々なツールがあり、毎月何千円もアプリ購入している人が僕の周囲にも沢山いたことを覚えています。あの頃は色々なツールがありました。でも最近は、ランキングに表示される定番ツールばかりで、そのツールも「Macとの同期がうまくいかない」、「動かなくなった」といったメガティブな評価が目立っていました。

実際にMacが届いてAppStoreを真剣にみるまで気づかなかったのですが、よく考えると、大手楽器メーカーが提供したツールですらメンテナンスせず、放置状態されている中、ソフトハウスなどでチームを組まない個人が5年以上メンテナンスし続けることは困難だと思います。

なんか、Evernoteも最近はアップデートのたびに使いにくくなり、永遠に使い勝手がいいと思えるようなソフトはないなぁとも感じています。

ソフト開発者の裏事情

僕が結構ハマっている、Oxygen Not IncludedというSteamにあるMacでも動くWindowsゲームのMacフォーラムに、Mac M1 CPUへネイティブ対応について、開発者のコメントなどに書いてあったのですが、Appleが作り出すハードウェアやCPUに合わせて、プログラムの再コンパイル以外にも様々な修正が必要になるということが書かれていました。シェアが多いアプリの開発者にはAppleから特別に開発ツールが提供されるそうです。

コンパイルとはプログラムコードを新しいハードウェアやOSに最適化した機械語などの実行コードに置き換える、翻訳ツールみたいなものです。

その開発ツールは、コンパイラーであったりするのですが、実際に動く環境として、M1 CPUを搭載したMacBookが出る1年ぐらい前から、iPad Proに搭載されたA12X(Z) Bionicが搭載されたMac miniが提供されていたと書かれていました。

一方で、一般のApp開発者に対しては、Appleが正式発表した後にようやく、新しい仕様のコンパイラーやドキュメントが配布されるらしいのです。となると、大変です。

裏事情と書いておきながら、多分、ソフト開発をしている人にとってみたら、当たり前のことかもしれません。どちらかというと、家庭用ゲーム機のような開発環境のような気がしました。

Macはプロのツール

そんな中、AppleStoreの整備済製品で販売されていた500万円越えのMacProがいつの間にかなくなっていました。最初に見た時に、売られているということは買った人いるんだぁと感心したのですが、まさかこんなに早く売り切れるとは想像もできませんでした。

Mac Proで動かすソフトは本当にプロ仕様で、3DCG関係の仕事でよく使われるAutodeskのMayaなど年間ライセンスが20万円以上のものばかりではないかと感じました。

Mayaに関してはバージョンアップするたびに使い勝手が変わっていくオープンソースのblenderを採用するより教育費がかからないため、経営者にとってみたら結果的に安上がりと考えていると3DCG関係の雑誌記事で読んだことがあります。世界トップレベルの報酬に比べたら30万円以上の年間ライセンス契約料なんて安いと考えられれているそうです。

MacOSがMacでしか動かない強み

Apple製品はApple製品を使う限り安定していると、もう30年ぐらい前にMacを使っていた人に聞いたことがあります。ソフトハウスの立場で見ると、Windowsの場合は色々な種類のパーツが使われるため、対応に苦労するけど、MacProの場合は、取り付けられる部品が限られているため検証の手間がかからず、安定性がより高いのだと思いました。

もう20年も前の話ですがWindowsのプログラムを書いていたとき、一番最初にフレームワークのバージョンチェックや使えるAPIやハードウェア機能が使えるかという条件文による大量のフラグを使い、プログラムを切り替えたりする処理を書いていた記憶があります。些細なバージョン違いで動きが変わることも多く検証が大変でした。プログラムコード上は問題がなくても、タイミングが悪いと動かないことはWindowsプログラムではよくあることです。

M1 CPUを生かすプログラミング

ゲーム開発者から見ると、AppleのM1 CPUの演算能力は非力で、やはり消費電力=パワー(処理能力)ということだそうです。思い返してみると、初期のパソコンはメモリー容量も少なく、プログラムを厳選して設計されていました。2000年代になりメモリーの容量よりも作りやすさやコードの読みやすさといったメンテナンスが優先される世情になっていました。

現代において、M1 CPUに最適化するには、処理を厳選し限られたCPUパワーの分配をよく考えないといけないようです。確かに処理能力は向上しているけど、大量のメモリー空間と100Wの電力でガンガン処理するCPUよりは、使えるメモリーも少なく絶対的な処理能力はAppleが主張するほど強力なCPUではないようです。

しかし少ないメモリー空間と高速と省エネの2種類のCPUを使い分け、処理を最適化するプログラミングには、かつての職人技のようなテックニックが求められてくるかもしれません。

それでも、どんなハードウェアやバージョンで動かされるかが不定なこともあり、ハードウェアやソフトの機能確認のコードがやたらと長くなりがちな、Windowsプログラミングと違って、売られているMacの種類が少なくある程度決め打ちできるMacのプログラムコードから無駄な処理が減りことによった最適化は楽かもしれません。

そういうリソースを振り分けながら組み立てるプログラム開発はちょっと面白そうです。とはいっても、個人のちょっとしたツールにそこまでの最適化は必要ないとは思います。しかしロマンがあります。

近年はパワー処理が必要なものはネイティブなコードより、Pythonを使うのが一般的かもしれません。XCodeはUIが綺麗に作れるのがメリットかもしれません。

Macがカンナみたいに感じる理由

今回僕が買ったのは、Appleでは一番入門的なMacBookAirなのですが、すごく気に入ってしまいました。メーカー製のWindowsであっても画面の明るさの変更といったことも、キーボードのショートカットボタンでコントロールできないことがあるのですが、しっかり動きます。

狙った動きが正確にできる、ということはすごい安心感につながります。節がない樹齢500年以上の希少な木材を削るに、時々失敗するような電動工具を使うことは考えられません。やっぱり、宮大工が長年使い信頼できるカンナ以外に考えられません。そういうニュアンスで、Macはカンナのようなパソコンだと思ったのです。

ズブの素人がよく切れるカンナを使っても、宮大工のようなオガクズは出ません。一方、いくら腕の立つ宮大工であったとしても、おもちゃのカンナではいつものように削ることはできません。素人こそ良い楽器で練習した方が上達が早いと実感としても感じています。それは変な癖や挙動がないからかもしれません。プロのツールこそ素人が一番初めに使うのに良いパソコンだと思うのでした。

一方で、プロ仕様の道具は、多くの場合お手軽簡単ポンのオートマチック機能がほとんどないため、その道を極めようとしない人にとってみると、やりたいことがすぐにできない、使いにくいソフトのようにも感じます。

パソコンの所持が1台しか許されなかったらMacBook Airを持っていく

余計な機能が一切つかず、省エネなMacBookAirは、メインパソコンが故障したり、Windowsパソコンの納期がかなり先になる状況にならなければ、絶対に買うことがなかったパソコンですが、ベストバイでした。

緊急避難などで、パソコンの所持が1台しか許されない状況になったら、多分僕は、MacBookAirを持っていくと思います。

今まで、毎時100W以上の電力を消費しなければ動かすことができなかった、FL-Studioが。。。たった10Wで、しかも繋いだMIDIキーボード入力に対してレテンシー(遅れ)を全く感じることなく使うことができるのです。Windowsの時には、AudioIOを接続しないと、音ズレを感じていたのですが、全然違います。

音声入力も、音声読み上げもでき、Webサイトのコンテンツ作りなら、MacBook Airで十分対応できます。しかも、文字が綺麗。もう、Windowsノートを使う理由がなくなってしまいました。

さらに、Mac用のソフトを開発できるXCodeが使えるのです。Windowsよりはるかに簡単にソフトが作れるのは魅力的です。

ほんとに、いいツールです。本当にMac買ってよかったと思っています。