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

apple.com

昨天寫了這篇〈M2 Pro 版 Mac mini:寫程式最佳選擇!我的心得與選購指南〉後,我發現,我對蘋果 M 系列晶片的讚揚,還遠遠沒有寫夠!

因此,我續寫了這篇,補充我對 M 系列晶片的看法——解釋為什麼我對它的評價如此之高,甚至接近「信仰」的程度。

這不僅僅因為它的高效能、低功耗,更重要的是,它讓我深刻理解到:原來(處理器)世界真的能夠被顛覆

而要充分表達其中的「感動」,還得從採用 Intel 處理器時代的 Mac 說起。

M2 Pro 版 Mac mini:寫程式最佳選擇!我的心得與選購指南

Cassiopeia A 超新星殘骸,直徑約 10 光年

今年 4 月,我入手了 M2 Pro 版的 Mac mini,至今已使用了快 3 個月。隨著配備 M2 Max 的 Mac Studio 發表,我認為是時候分享一下我的心得和選購指南——雖然這只是一個粗略的指南。

相關文章:Apple Studio Display 適合你嗎?——我的心得與選購指南


M3 系列簡評與選購建議(2023/11/02更新)

前 2 天,Apple 正式發表了 M3 系列(M3、M3 Pro、M3 Max)全新 Macbook Pro。雖然還沒有正式發售,不過從發表會的資訊來看,我們已經可以得出一些結論。

M3 系列簡評

三款晶片的 CPU 提升幅度不一,可謂命運大不同。想了解更多細節,推薦這部影片:

M3:合理的升級

M3 雖然換了 3nm 製程,但如同 iPhone 15 上的 A17 Pro 沒有帶給我們很大的驚喜,M3 也沒有。

總體來說,M3 的 CPU 性能提升幅度大約在 20% 左右,能勉強趕上 M2 Pro 基礎版。

算是一個不大不小的升級,我願意給個 70 分

M3 Pro:時代的犧牲品

既不是銷量主流,也不是性能號召的 M3 Pro,成了這次的「犧牲品」。

CPU 核心減少、記憶體頻寬降了 1/3,CPU 戰力和 M2 Pro 相比沒有明顯提升,難怪發表會上有關 CPU 提升幅度直接略過不提,令人失望。50 分,不及格

不過話說回來,單核效能提升仍有 20%,加上可配備 18/36 GB RAM,雖不如預期,但也不算太差啦。

M3 Max:贏家全拿

M3 Max 得到了三者之中最大幅度的提升。給 85 分

尤其是 CPU,以往的 M2 Max 只是 M2 Pro 的頻率提升版,核心數量完全相同,所以效能差距很小。

但這次高階版足足多了 4 個效能核心,提升幅度想必很可觀。

不過若要升到最高規的 16/40 核版本,價格提升也非常可觀😈


M3 系列選購建議

新版 M3 iMac,苦等許久的人可以買了。

考慮到 iMac 系列漫長的更新週期,相信至少 2 年內都不會過時。😂

M3 Macbook Pro

14 吋基本款

我覺得定位和 15 吋的 M2 Macbook Air 類似:尷尬

甚至我覺得它更加尷尬,因為它的價格比 15 吋 Macbook Air 還要高出一截。

完全不推薦這款——太貴了!除非你真的很想要那 14 吋的 Mini LED 螢幕。但就算如此,也應該買 M3 Pro 的版本。

14、16 吋非基本款

只能說是常態性升級,但價格又上了一階(主要是因為美元匯率),所以 CP 值不高。

對於已經擁有任一款 M 系列晶片 Mac 的人,恐怕不足以打動消費欲望。真要找一個購買的理由,只能衝著全新的黑色,或最高階的 M3 Max。

未來的 Mac mini、Mac Studio

真正在這次發表會後撥雲見日的,反而是 Mac mini 和 Mac Studio。

當然,它們都還沒有新版,只是對於「正在等待」的人而言,極具參考價值

Mac mini

一句話:「不用等了。

考慮 Mac mini 動輒一年半以上的更新週期,再看看 M3、M3 Pro 的表現,我覺得不用等了。直接買現在的 M2 版就好。

尤其是本來打算等待 M3 Pro 版 mac mini 的人,更不用等了,因為 M3 Pro 的表現實在差強人意。

Mac Studio

一句話:「值得等待!

會買 Mac Studio 往往就是衝著 Max 的強大效能,而這次 M3 Max 的提升幅度也確實可觀,所以我覺得值得等。

不過高階版的價格想必也會更高,所以如果你是預算有限但仍需要 Max 影像處理能力的人,直接買現在的 M2 Max Mac Studio 也不失為一個選擇。

小結

誇張地說,這次發表會的最大贏家,或許是下列兩種人:

  • 已經買了 M2 Pro 的人:M3 Pro 的表現不如預期,不會有太多的遺憾。
  • 正在等待 M3 Max(且預算充裕)的人:M3 Max 戰力不俗,值得耐心等待。

無論你是哪一種,隨著這次發表會的落幕,我們都已有了更明確的方向


本文主旨與目標讀者

本文主要寫給那些「想買 Mac mini 但還有所遲疑的人」作為參考,我不會特別鼓吹要買哪一款,這是一篇「平靜」的心得。

此外,這篇文章是以我的核心需求——軟體開發——為出發點,對同為軟體工程師的讀者而言,可能更具參考價值。

Django ORM:一對一、一對多外鍵教學(上)前言與關聯設定

Let's Django!

這是 Django Tutorial 系列連載的第 1 篇。

搭配學習的範例程式碼,可參考 GitHub 專案:Django-Tutorial。更多 Django 教學,請見「Django 文章總覽」。

系列:Django ORM 外鍵教學

  1. Django ORM:一對一、一對多外鍵教學(上)前言與關聯設定
  2. Django ORM:一對一、一對多外鍵教學(中)反向關聯

工作上使用 Django 近 2 年,卻很少發表關於 Django 主題的文章,是時候該來補一補了。

那就從 Django ORM 開始吧!因為 ORM(Django Models)可以說是無論你怎麼使用 Django(全端或前後端分離),都不得不學的核心部分。

怎麼說?我們先來看看,在「前後端分離」的開發趨勢下,Django 的三大核心——MTV——的重要性有哪些變動。

19,AI 時代的生存指南(二)數位斷捨離

上一篇〈17,AI 時代的生存指南(一)我對 AI 工具的投入與觀望〉並沒有真正進入「生存指南」這個核心主題,只能算是整個系列的前言。

為避免你忘記,我們再來回顧一下,前一篇所提出的,本系列的宗旨:

我期望這系列和一般談論 AI 文章的一個核心差別是:它們主要用來「降低」AI 資訊焦慮,而非增加。

更具體地說,這個系列是「我為了降低自己對 AI 的資訊焦慮,付諸過的實踐與行動記錄」,這樣才有趣。

而本篇要探討的,就是這系列最核心的「生存手段」:數位斷捨離。

數位斷捨離(Digital Declutter)作家卡爾.紐波特(Cal Newport)在其著作《深度數位大掃除》一書中所提出。

數位斷捨離是一種整理和簡化數位世界的方法,旨在減少干擾並提升專注力。通過過濾數位訊息和限制使用數位工具(尤其是社交平台),我們可以節省時間和精力,更好地專注於重要的事情。

這種方法有助於建立一個更有意義和平衡的數位生活。所以它不止是方法,也是一種「價值觀與實踐」。

概念理解上沒什麼困難,但實踐起來可遠遠不是如此。

Poetry + pyenv 教學:常用指令與注意事項

from Pixabay

2024/04/26:重新編輯全文,新增、刪除若干段落,提升文字清晰與流暢度。
2024/01/09:刪除部分內容,使文章更緊湊、好讀。

Python 套件管理器——Poetry 完全入門指南〉發表至今,已過了 2 年,這意味著我使用 Poetry 達 2 年了。

對我而言,Poetry 已是 Python 專案開發不可或缺的要素。

它不僅提供了更加便捷的套件管理版本控制。而且,Poetry 以 pyproject.toml 作為設定檔,讓我可以同時透過 pyproject.toml 管理其它工具,比如 Mypy、Ruff 等。

相關文章:Python 開發:pyproject.toml 介紹 + 使用教學

這是我喜歡的方式。

系列:Python Poetry 三部曲

  1. Python 套件管理器——Poetry 完全入門指南
  2. Poetry + pyenv 教學:常用指令與注意事項
  3. Docker 教學:Dockerfile 多階段建構 Poetry 虛擬環境(待發表)

18,論軟體工程師常見的「路徑依賴」問題(上)

我常常覺得,軟體工程師可能是最能體現「當你手裡只有鎚子,看什麼都會像釘子」的一群人😂

我們在工作中,有時會陷入一種被稱為「路徑依賴」的困境。本文將探討「路徑依賴」在軟體工程師的工作與職涯發展中,所造成的各種影響和受困者會有的具體表現。

或許會讓你感到有點熟悉。

前言:何謂路徑依賴?

路徑依賴」是個社會科學的概念,用來描述一種現象,即一旦人們在某一方面選擇了特定的路徑或方式,他們就可能變得過度依賴這條路徑,並且可能難以改變。

這種依賴性可能源於各種因素,包括習慣、成本、學習曲線等,並可能在多個層面上產生影響,包括個人的行為、團隊的運作,甚至是整個社會的結構和制度。

在這裡,我們將專注於討論「軟體工程師常見的路徑依賴」。以下的內容主要是基於我個人在工作上的觀察,可能會帶有一點偏見,但絕大部分都是基於事實。

確保 isort 正確排序本地模組:pyproject.toml 與 pre-commit 設定

isort 是一個 Python 套件兼命令列工具,可以幫開發者自動排序 Python imports,以符合 PEP 8 規範。這種排序也可以讓程式碼更加易讀且易於維護。

之前已有數篇文章介紹過,可參考本站的「isort 標籤頁」。

isort 會自動將 import 分為「Python 標準函式庫」、「第三方套件」、「本地模組」等三大區塊,並依字母順序排列,同時為你在三個區塊之間空一行

isort 本地模組排序錯誤

isort 有一個 bug(我也不確定是不是 bug),就是對於本地模組的「排序判斷」,有可能發生錯誤。

這會造成什麼結果?通常的影響是,本來應該排在第三區塊的 import,排到第二區塊去了。總之就是 import 放錯了區塊。

這樣除了不符合 PEP 8 規範,更重要的是,它還可能對開發者造成「誤導」。而且會使用 isort 的人,往往就是在乎 import 排序的人,當然不能接受這樣的錯誤。