🌘 Folklore.org:計算器建構套件
➤ 追求完美:史蒂夫·喬布斯與麥金託電腦計算器的設計故事
https://www.folklore.org/Calculator_Construction_Set.html
本文講述了蘋果早期員工克里斯·埃斯皮諾薩為麥金託電腦設計計算器的故事。他最初的設計未能獲得史蒂夫·喬布斯的認可,不斷受到批評。最終,克里斯靈機一動,創造了一個可自定義參數的“史蒂夫·喬布斯自製計算器建構套件”,讓史蒂夫·喬布斯得以自行調整,最終設計成為麥金託電腦標準計算器,並沿用至OS 9。
+ 史蒂夫·喬布斯對細節的執著真是令人印象深刻,連計算器都要親自調整!
+ 這個故事很有趣,讓人瞭解到蘋果早期設計的過程,以及史蒂夫·喬布斯在其中的角色。
#蘋果歷史 #軟體設計 #史蒂夫·喬布斯
Folklore.org: Calculator Construction Set

🌕 是否應為不穩定的網路環境設計?
➤ 低頻寬時代的軟體設計考量
https://bytes.zone/posts/should-we-design-for-iffy-internet/
這篇文章探討了美國網路普及率及連線品質的問題,指出即使在2025年,仍有部分地區的居民無法享有穩定且快速的網路服務。作者分析了聯邦通訊委員會(FCC)和國家教育統計中心(NCES)的數據,顯示約有3%的美國家庭網路連線速度低於25Mbps下載及3Mbps上傳,且延遲可能較高。文章強調,軟體開發者在設計應用程式時,不應過度假設使用者擁有優質網路環境,特別是針對B2C產品,應考量低頻寬及流量限制的使用者需求。此外,文章也提及學生網路普及率的數據,顯示低收入家庭的網路普及率仍然偏低。
+ 很有趣的數據分析,讓我意識到網路環境對使用者體驗的重要性。原來連線品質的差距這麼大!
+ 這篇文章提醒我,在設計手機應用程式時,要特別注意流量的使用,避免使用者因為網路速度慢而感到不便。
#網路基礎設施 #軟體設計 #使用者體驗
Should we design for iffy internet?

Around 97% of US households have internet access, but bandwidth and latency are likely worse than you expect.

bytes.zone
🌕 《可塑軟體:在封閉應用程式的世界中重拾用戶自主權》
➤ 從工業化量產軟體邁向使用者主導的數位工藝革命
https://www.inkandswitch.com/essay/malleable-software/
本文探討當代軟體僵化問題,主張開發可讓用戶自由重塑的「可塑軟體」,重現個人運算原始承諾。
+ 終於有人說出心聲!每次為遷就軟體修改工作流程都覺得本末倒置
+ 理想很豐滿,但安全性和技術門檻如何解決?普通用戶真能駕馭可塑軟體嗎?
##科技創新 #軟體設計 #用戶賦權
Malleable software: Restoring user agency in a world of locked-down apps

The original promise of personal computing was a new kind of clay. Instead, we got appliances: built far away, sealed, unchangeable. In this essay, we envision malleable software: tools that users can reshape with minimal friction to suit their unique needs.

🌕 蘋果推出令人驚豔且優雅的新軟體設計
➤ Liquid Glass:打造流動且引人入勝的使用者體驗
https://www.apple.com/newsroom/2025/06/apple-introduces-a-delightful-and-elegant-new-software-design/
蘋果公司預覽了全新的軟體設計,運用名為「Liquid Glass」的新材質,為應用程式和系統體驗帶來更豐富的表現力與愉悅感。此設計將跨足 iOS 26、iPadOS 26、macOS Tahoe 26、watchOS 26 和 tvOS 26 等平臺,在保持各平臺獨特之處的同時,實現更和諧的統一。Liquid Glass 材質具有半透明特性,能根據周圍環境和內容動態變化,提升使用者介面的活力,並使互動更加直觀和流暢。
+ 蘋果的設計一直很領先,這次的Liquid Glass概念真的很有意思,期待實際使用起來的效果!
+ 跨平臺統一設計是個好趨勢,希望這次的更新能帶來更一致的使用體驗。
#蘋果 #軟體設計 #Liquid Glass #iOS 26 #macOS Tahoe 26
Apple introduces a delightful and elegant new software design

Apple previewed a new software design, crafted with Liquid Glass, that makes apps and system experiences more expressive and delightful.

Apple Newsroom
🌕 設計壓力
➤ 隱形之手塑造你的程式碼
https://hynek.me/talks/design-pressure/
這篇文章探討了軟體設計中難以察覺的潛在問題,即使遵循最佳實踐,專案架構仍可能變得複雜。作者Hynek Schlawack分享了他在PyCon US 2025的演講內容及相關參考資料,涵蓋了耦合、物件導向設計、領域驅動設計、測試以及API設計等面向。核心觀點在於,軟體設計涉及許多權衡取捨,需要意識到不同類型的類別和模型的差異,並避免過度簡化問題。
+ 這篇文章提醒我,即使有經驗的開發者也需要不斷反思自己的設計,避免陷入不必要的複雜性。
+ 推薦書單和影片列表非常有價值,可以幫助我更全面地瞭解軟體設計的各個方面。
#軟體設計
Design Pressure

Ever had this weird gut feeling that something is off in your code, but couldn’t put the finger on why? Are you starting your projects with the best intentions, following all best practices, and still feel like your architecture turns weird eventually?

Hynek Schlawack
🌗 PuTTY 工具圖示研究
➤ PuTTY圖示的歷史與演變
https://www.chiark.greenend.org.uk/~sgtatham/quasiblog/putty-icons/
本文回顧PuTTY工具的圖示設計歷程,探討其起源及演變過程,涵蓋了從手繪時代到腳本化時代的各個工具圖示設計,包括PuTTY、PSCP、PSFTP和Pageant等工具的圖標變化。
+ 這篇文章真有趣,讓我瞭解了這個廣為使用工具的背後故事!
+ 這麼多年的演變真讓人驚訝,設計選擇也很有意思,尤其是為什麼電腦顯示器是藍色的!
#軟體設計
Iconography of the PuTTY tools

Good Code Design From Linux/Kernel | Leandro Moreira

Link📌 Summary:
這篇文章探討 Linux/FFmpeg 程式碼是如何組織以實現類似「多型」的擴展性設計。文章介紹了良好軟體設計的核心概念:通過抽象和弱連結的組件來建立可維護且易於擴展的系統。文章分析了不同程式語言(Ruby、Golang、C 語言)下實現多型的方式,並深入探討 Linux「一切皆檔案」的設計理念和 FFmpeg 的擴展性架構,說明如何透過設計抽象介面來輕鬆整合新的編解碼器和格式。

🎯 Key Points:
- 良好的軟體設計依賴於弱連結(low coupling)和高內聚(high cohesion)的組件。
- 動態類型語言(如 Ruby)可透過隱含的操作集合實現多型。
- 靜態類型語言(如 Golang)通過明確定義介面來實現類似功能。
- Linux 的「一切皆檔案」設計透過 file_operations 結構提供統一介面,讓不同資源(如一般檔案、網路連接)可使用相同操作。
- FFmpeg 使用 AVInputFormat、AVCodec 等抽象結構,讓不同格式和編解碼器都能透過相同介面整合。
- 這種設計使得新功能(如 DAV1d AV1 解碼器)能夠輕鬆整合到現有系統中。
- 公共介面(契約、API)讓程式碼能夠在不修改核心結構的情況下進行擴展。

🔖 Keywords:
#軟體設計 #多型 #抽象介面 #低耦合 #FFmpeg

Good Code Design From Linux/Kernel

Learn how Linux/FFmpeg C partial codebase is organized to be extensible and act as if it were meant to have “polymorphism”. Specifically, we’re going to briefly explore how Linux …

Leandro Moreira
🌗 優秀的軟體設計表面平淡無華
➤ 簡單操作的力量
https://www.seangoedecke.com/great-software-design/
優秀的軟體設計往往看似簡單,因為它在設計階段消除了很多潛在的失敗模式。最有效的減少失敗模式方法是避免進行過於複雜的操作,重點是消除重大風險如數據不一致性,儘管這可能會在其他方面造成一些不便。
+ 這篇文章讓我重新思考了我對軟體設計的看法,簡單往往是最有效的。
+ 我以前認為複雜的解決方案纔是好設計,但現在我明白了簡單的設計能降低風險,真是有啟發性!
#軟體設計
Great software design looks underwhelming

--

🌘 振盪之解剖 - 作者凱特·貝克
➤ 泰迪先生,還是挻清潔?
https://tidyfirst.substack.com/p/anatomy-of-oscillation
文章探討了系統在極端之間擺動的現象,比如室內溫控系統、獵食者和獵物之間的相互作用,以及文檔撰寫等議題。
+ 透過簡潔的例子舉證,深入剖析問題本質。
+ 貝克的觀點獨特,引人深思,對軟體設計帶來新的思考。
#軟體設計
Anatomy of Oscillation

I was at first astonished, then angered, then resigned when I saw smart people calling for the return of waterfall thinking.

Software Design: Tidy First?
🌗 數獨事件
➤ 軟體設計的思維與實踐
https://explaining.software/archive/the-sudoku-affair/
本文回顧2006年Ron Jeffries對數獨解算器的構建過程,並對比彼得·諾維格的即時解決方案,揭示了兩者在設計思路和程式碼表達上的差異,並探討了這一事件在軟體開發界的影響。
+ 這篇文章讓我思考了編程背後的邏輯,特別是在設計選擇時,視角真的很重要。
+ 諾維格的實作與Jeffries的對比讓我更理解如何選擇適合的數據結構,這對解決問題真的是關鍵。
#軟體設計
the sudoku affair

Software design is a deliberate process, and requires deliberate effort.

Explaining Software Design