はじめてMacの世界へ踏み込みます…
2024/10/30 Appleが公式に、M4 Mac miniを11/8に販売を開始を発表しました。
待ってました!とばかりに、Apple Storeで予約を入れ、Macの世界へ踏み込むことが確定しました。
なぜ、今からMacの世界に踏み込むの?
40年の開発経験の中で、Macベースの開発経験は全くありませんでした。
元々は、Z80 8bit CPUベースからプログラミングをはじめ、もっぱらIntelベースOSの上で開発を行ってきました。
途中で、UNIX/LinuxなどのOSベースで、Intel以外の環境でも開発を行っていました。
Appleも、Intelチップベースになった時期はありましたが、当時は、Windowsでの開発中心で、Macに触れる機会はありませんでした。
ある意味、Microsoft信者ではないのか?といえるくらい、Microsoft/Intelしか見えていませんでした。
会社をリタイヤし、自分の興味でプログラミングを続けているなかで、人に使ってもらうものを作るためには、ユーザとインタフェースを持つ領域を作れることは重要で、そのためにフロントエンド実装に取組まなければなりません。
もちろん、バックエンドで有益なサービスを提供するものを作ることも素晴らしいのですが、個人とか小規模な開発においては、フロントエンドとして見せられるものを作るという意義は、重要なことだと考えています。
最近のアプリケーションは、例えば、Windowsだけで動くモノというより、ブラウザで利用するものや、モバイル端末で利用するものという辺りで、使えることが重要だとすると、TanaKafeWorksの開発環境に不足しているものは、Apple Macの開発環境だったということです。
iPhone/iPadで動くアプリのためには、Macが必要なのです。iPadでも可能な部分もありますが、やはりMacは必要です。
iPhone/iPadアプリ開発の為だけではなく…
最近、AI連携を意識せざるを得ない状況が、巷に溢れています。
実際に、仕事で情報利活用を行うために、統計処理、機械学習、ディープラーニングをアプリで使うことが当たり前になり、LLMなどのAI連携を避けて通れない状況になると、今までのような、システムやアプリのロジックをプログラミングするという観点では、ITエンジニアリングとしては成り立ちません。
機械学習/ディープラーニングを使い、AIを組合わせたシステム/アプリを作るために、データを学習するために、それなりの計算資源を利用できる環境を持つ事は、技術者としては重要になってきていると考えています。
Windowsで開発環境を作っているなら、高性能なCPUだけでなく、高性能なGPU環境のPCを使うことが重要です。
TanaKafeWorksのメイン開発PCでは、Intel 12世代 Core-i9/AMD Radeon RX 6700 XT/32GB Memoryで行っています。
しかし、AI開発のGPUとしては、NVIDIAを使う方が情報も得やすく、望ましいと最近強く感じています。そこで、Google Colaboratoryを使い、モデル学習などを行うことで、ローカル環境の非力さを補ってきました。
そこで、MacでAI開発(単にモデル学習なのかも)を行えないかと目論んでいます。
開発環境をバージョンアップしていくことは、仕事には必要なことで、通常なら、Windows PCを高性能化していくのですが、今年は、Intel 13/14世代Core-i9,7,5の問題で、Intel PCの購入には踏み切れません。
このような時に、AppleがM4 Chipを搭載した製品を発表したので、Mac miniで開発環境で、iPhoneアプリとAI連携アプリ開発も、TanaKafeWorksの開発範囲へ広げるチャンスと捉えたというわけです。
Mac miniで何をしようとしているのか?
まずは、Macアプリを作って、Macに慣れていくことが必要です。
これから、作りたいアプリは次のようなものです。
- iPhone/iPad スタンドアローン nativeアプリ
- iPhone/iPad GStreamer連携アプリ
- iPhone/iPad GStreamr/OpenCV/物体検出-追跡連携アプリ
- iPhone/iPad WebRTC nativeアプリ
- 機械学習/ディープラーニングモデル開発
- 多様なLLM評価と連携アプリ
アントニオ猪木さんの『道』の心境です
私の今の心境は、アントニオ猪木さんの『道』という詩に従ってみようと思います。
『道』
この道を行けばどうなるものか
危ぶむなかれ
危ぶめば道はなし
踏み出せば
その一足が道となり
その一足が道となる
迷わずいけよ
行けばわかるさ
やったことのない世界を知ることは、楽しみもあります。