Amo Chen

免費開源的 macOS 工具 — Later

Later 是能夠 1 鍵隱藏/關閉所有視窗的工具。 ​ Later 的應用場景很簡單, Later 可以讓使用者要開會之前或者進行其他工作之前,先把桌面上所有視窗存起來之後,並將

Posted on  Jun 16, 2024  by  Amo Chen  ‐ 1 min read

全新品種的 Shell — Nushell

Nushell 是 1 個相對新的 Shell, 與其他 shell 相比,它更強調把各種指令的輸出變成結構化資料,如此一來就可以像查詢資料庫一樣,搭配同樣是 Nushell 開發的 where, filter, sort-by 等指令,讓操

Posted on  Jun 15, 2024  by  Amo Chen  ‐ 1 min read

用 Python 學網路程式設計重要概念 — 從 I/O 多工再到多執行緒以及 Thread Pool

在「用 Python 學網路程式設計重要概念,從單執行緒到 I/O 多工(I/O multiplexing)」 1 文中,我們利用多個 Python 範例程式學會 I/O 多工的 3 種 syscall, 分別是 select() , poll() 以及 epoll() ,藉由 I/O 多工讓程式即使只有單執行緒也能同時處理多個連線。

本文將從 I/O 多工開始,進一步延伸學習多執行緒以及 Thread Pool 這 2 個經典的網路程式設計架構。

Posted on  Jun 14, 2024  in  Python 程式設計 - 中階  by  Amo Chen  ‐ 8 min read

淺談 UTF-8 編碼方式

很多人都知道 Python 3 開始預設使用 UTF-8 編碼(encoding),但如果問你 UTF-8 編碼是怎麼運作的?應該很多人會說不出個所以然。

例如,為什麼在 Python 使用以下程式碼會得到長度為 16:

>>> len('生日快樂🎂'.encode())

這背後的原因就跟 UTF-8 有關!

Posted on  Jun 13, 2024  in  Encoding  by  Amo Chen  ‐ 3 min read

好文分享 — Python's many command-line utilities

我知道 python 有模組可以用 -m 參數直接變成命令列工具使用,但我是認真沒想到 Python 有「非常多」模組都可以使用 -m 參數,甚至還有彩蛋! p.s. 解釋一下 -m 的作用, -m 會

Posted on  Jun 12, 2024  by  Amo Chen  ‐ 1 min read

如何使用 Claude 打造 AI Agent

相信大家都知道 Apple 推出 Apple Intelligence, 這件事除了宣告行動裝置與 AI 整合應用大戰開打之外,我相信給相關軟體應用開發者所帶來的啟示是—— 「不會開發 AI 沒關係,但至

Posted on  Jun 11, 2024  by  Amo Chen  ‐ 1 min read

具體說明 HTTP 標頭(header) ETag 是如何運作的

談到瀏覽器的快取,最眾所皆知的是 Cache-Control 。

但其實還有 1 個也經常被提到,那就是 ETag 。

可真要解釋 ETag 具體在做什麼、是如何運作的,以及為什麼需要 ETag, 卻又很難講得清楚(偏偏面試又會被問)。

本文將從實際的範例出發,帶你徹底了解 ETag 並提供 Python 程式碼,讓你在家也能玩!

Posted on  Jun 9, 2024  in  HTTP headers  by  Amo Chen  ‐ 5 min read