淺談我對蘋果 M 系列晶片的看法——超新星爆發

昨天寫了這篇〈Mac mini 心得:寫程式的最佳選擇!〉後,我發現,我對蘋果 M 系列晶片的讚揚,還遠遠沒有寫夠!
因此,我續寫了這篇,補充我對 M 系列晶片的看法——解釋為什麼我對它的評價如此之高,甚至接近「信仰」的程度。
這不僅僅因為它的高效能、低功耗,更重要的是,它讓我深刻理解到:原來(處理器)世界真的能夠被顛覆!
而要充分表達其中的「感動」,還得從採用 Intel 處理器時代的 Mac 說起。

昨天寫了這篇〈Mac mini 心得:寫程式的最佳選擇!〉後,我發現,我對蘋果 M 系列晶片的讚揚,還遠遠沒有寫夠!
因此,我續寫了這篇,補充我對 M 系列晶片的看法——解釋為什麼我對它的評價如此之高,甚至接近「信仰」的程度。
這不僅僅因為它的高效能、低功耗,更重要的是,它讓我深刻理解到:原來(處理器)世界真的能夠被顛覆!
而要充分表達其中的「感動」,還得從採用 Intel 處理器時代的 Mac 說起。

今年 4 月,我入手了 M2 Pro 版的 Mac mini,至今已使用了快 3 個月。隨著配備 M2 Max 的 Mac Studio 發表,我認為是時候分享一下我的心得和選購指南——雖然這只是一個粗略的指南。
2024/10/31 更新)Apple 連續 3 天發表了 M4 版本的 iMac、Mac mini 與 Macbook Pro,簡評如下。
不是我的菜,因為我終始不能接受白色邊框!
超.級.想.買!但我不能買,因為我已經有 M2 Pro 版了。
這絕對是今年最值得買的 Apple 產品!注意,是所有的 Apple 產品中,最棒的升級。
對我而言,它有三大亮點:
這次 Apple 給 M4 Pro 的福利實在太多了!
單論 CPU 效能,M4 Pro 甚至還超越了 M3 Max,就知道這次的升級有多可怕。
我真的好想買啊!但我不能買😭
一樣,14 吋一律推薦 M4 Pro 版——尤其是今年的 M4 Pro 版,16 吋則看需求。
今年的 M4 Pro 非常強勢,M4 Max 的優勢剩下:
綜上所述,M4 Pro 版 Macbook Pro 是今年最值得買的 Macbook。
2023/11/02 更新)
2024/10/31更新:由於 M4 系列晶片與相關產品皆已發表,我將 M3 系列的簡評與選購建議移至 Notion 頁面。
本文主要寫給那些「想買 Mac mini 但還有所遲疑的人」作為參考,我不會特別鼓吹要買哪一款,這是一篇「平靜」的心得。
此外,這篇文章是以我的核心需求——軟體開發——為出發點,對同為軟體工程師的讀者而言,可能更具參考價值。

這是 Django Tutorial 系列連載的第 1 篇、Django ORM 外鍵教學的第 1 篇。
搭配學習的範例程式碼,可參考 GitHub 專案:Django-Tutorial。
- Django ORM 外鍵教學:設定一對一、一對多關聯
- Django ORM:反向關聯(Reverse relationship)介紹
- Django ORM 外鍵查詢指南
工作上使用 Django 近 2 年,卻很少發表關於 Django 主題的文章,是時候該來補一補了。
那就從 Django ORM 開始吧!因為 ORM(Django Models)可以說是無論你怎麼使用 Django(全端或前後端分離),都不得不學的核心部分。
怎麼說?我們先來看看,在「前後端分離」的開發趨勢下,Django 的三大核心——MTV——的重要性有哪些變動。

上一篇〈AI 時代的生存指南(一)我對 AI 工具的投入與觀望〉並沒有真正進入「生存指南」這個核心主題,只能算是整個系列的前言。
為避免你忘記,我們再來回顧一下,前一篇所提出的,本系列的宗旨:
我期望這系列和一般談論 AI 文章的一個核心差別是:它們主要用來「降低」AI 資訊焦慮,而非增加。
更具體地說,這個系列是「我為了降低自己對 AI 的資訊焦慮,付諸過的實踐與行動記錄」,這樣才有趣。
而本篇要探討的,就是這系列最核心的「生存手段」:數位斷捨離。
數位斷捨離(Digital Declutter)作家卡爾.紐波特(Cal Newport)在其著作《深度數位大掃除》一書中所提出。
數位斷捨離是一種整理和簡化數位世界的方法,旨在減少干擾並提升專注力。通過過濾數位訊息和限制使用數位工具(尤其是社交平台),我們可以節省時間和精力,更好地專注於重要的事情。
這種方法有助於建立一個更有意義和平衡的數位生活。所以它不止是方法,也是一種「價值觀與實踐」。
概念理解上沒什麼困難,但實踐起來可遠遠不是如此。

2024/04/26:重新編輯全文,提升文字清晰與流暢度。2024/01/09:刪除部分內容,使文章更緊湊、好讀。
〈Python 套件管理器——Poetry 完全入門指南〉發表至今,已過了 2 年,這意味著我使用 Poetry 達 2 年了。
對我而言,Poetry 已是 Python 專案開發不可或缺的要素。
它不僅提供了更加便捷的套件管理和版本控制。而且,Poetry 以 pyproject.toml 作為設定檔,讓我可以同時透過 pyproject.toml 管理其它工具,比如 Mypy、Ruff 等。
這是我喜歡的方式。
- Python 套件管理器——Poetry 完全入門指南
- Poetry + pyenv 教學:常用指令與注意事項
- Docker 教學:用 Multi-stage build 建立 Poetry 虛擬環境

2024/05/21:重新編輯全文,增加了一些新的觀點與例子。
相關文章:別依賴「試誤法」寫程式
我常常覺得,軟體工程師可能是最能體現「當你手裡只有鎚子,看什麼都會像釘子」的一群人😂
我們在工作中,有時會陷入一種被稱為「路徑依賴」的困境。
本文將探討「路徑依賴」在軟體工程師的工作與職涯發展中,所造成的各種影響,以及「受困者」會有的具體表現。
或許會讓你感到有點熟悉。
「路徑依賴」是個社會科學的概念,用來描述一種現象,即一旦人們在某一方面選擇了特定的路徑或方式,他們就可能變得過度依賴這條路徑,並且可能難以改變。
這種依賴性可能源於各種因素,包括習慣、成本、學習曲線等,並可能在多個層面上產生影響,包括個人的行為、團隊的運作,甚至是整個社會的結構和制度。
在這裡,我們將專注於討論「軟體工程師常見的路徑依賴」。
以下的內容主要是基於我個人在工作上的觀察,可能帶有一點偏見,所以閱讀時請保持批判性思考。

isort 是一個 Python 套件兼命令列工具,可以幫開發者自動排序 Python imports,以符合 PEP 8 規範。這種排序也可以讓程式碼更加易讀且易於維護。
之前已有數篇文章介紹過,可參考本站的「isort 標籤頁」。
isort 會自動將 import 分為「Python 標準函式庫」、「第三方套件」、「本地模組」等三大區塊,並依字母順序排列,同時為你在三個區塊之間空一行。
isort 有一個 bug(我也不確定是不是 bug),就是對於本地模組的「排序判斷」,有可能發生錯誤。
這會造成什麼結果?通常的影響是,本來應該排在第三區塊的 import,排到第二區塊去了。總之就是 import 放錯了區塊。
這樣除了不符合 PEP 8 規範,更重要的是,它還可能對開發者造成「誤導」。而且會使用 isort 的人,往往就是在乎 import 排序的人,當然不能接受這樣的錯誤。