本文以創用 CC 姓名標示-非商業性-相同方式分享 4.0 國際授權釋出
讀者您好
The Mediocre Programmer 是作者 Craig Maloney 職業生涯的感悟,從「平凡程式設計師」的視角,剖析職涯中常見的各種困境:技能不足帶來的挫折、倦怠、迷惘。作者分享了自身的經驗,並提出實用的心法,例如尋求他人協助、享受學習歷程、正視自己的平凡、保持專注,甚至鼓勵讀者勇於跳脫舒適圈。這是一本助人找回熱情的誠懇之作,幫助程式設計師以更健康的心態面對未知,在平凡中持續精進。
🔹Llm.c
Llm.c 是一個僅有 1000 行左右的純 C 語言 GPT-2 實作,無需安裝 PyTorch 或 cPython,可以立即編譯與執行。對大型語言模型有興趣的開發者,可以透過此簡單的專案了解如何實作與訓練。
🔹Aider
Aider 是一款終端機結對開發工具,使用者可以與 GPT-3.5/GPT-4 一起編輯本機 git 倉儲中的程式碼。它支援多種程式語言,可以自動修改原始碼並產生 git 提交。使用者可以請求新功能、改進、重構等,aider 會直接修改原始碼檔案。它還能透過 git 倉儲映射來理解和修改大型程式碼庫。
🔹Ripl
Ripl 是一個 2D 繪圖函式庫,提供統一的 API,支援 Canvas 和 SVG 渲染。它專注於高效能和互動式資料視覺化,模仿 DOM/CSSOM,使開發者易於使用。Ripl 還提供縮放、幾何、插值、顏色、資料連接和緩動等功能,無執行時期相依性,完全模組化,使用 TypeScript 嚴格型別。
🔸簡單背後的驚人旅程
當我們開始學習寫程式時,通常會從一個簡單的 Hello World 程式入門。然而,這個看似簡單的程式在現代電腦系統中的執行過程卻遠比我們想像的複雜。本文將帶領讀者探索 Hello World 程式的執行過程,揭開其背後的神秘面紗。
為了分析 Hello World 程式的執行過程,作者檢查編譯後的執行檔,使用各種工具查看其結構和內容。透過反組譯,他找到程式的進入點,並追蹤其執行流程。接著,作者研究 C 語言標準函式庫的原始碼,試圖理解 printf 等函式的實作細節。他發現,puts 函數是透過系統呼叫將字串輸出到終端機的。系統呼叫是使用者程式向作業系統核心請求服務的機制,核心需要處理來自各種不同來源的輸出請求,並將結果回傳給程式。這個看似簡單的過程,實際上涉及了現代作業系統和硬體的諸多方面,展現出了驚人的複雜性。
透過對 Hello World 程式的深入剖析,我們得以一窺現代電腦系統的複雜內部世界。本文展示了即使是最簡單的程式,其執行過程也絕非表面上看起來的那樣簡單。這種複雜性造就了我們今日強大的數位世界,但也使得完整理解整個系統的運作變得極具挑戰。
🔸用指尖看見世界
這篇文章採訪了一位僅能感知陽光和強烈光線的盲人開發者,他自述和其他的開發者並無不同,一樣從事全端網站開發工作,除了在他的桌上看不到螢幕和滑鼠之外。
這位盲人工程師使用運行 Windows 10 系統的普通筆記型電腦,透過名為螢幕閱讀器的輔助軟體來使用電腦。螢幕閱讀器以每分鐘 450 字的速度,將螢幕上的資訊通過點字或語音的方式傳達給他。由於看不見,他主要使用鍵盤進行操作,很少使用圖形介面程式。
在閱讀程式碼時,他會逐行瀏覽,並在腦中對程式碼的重要部分進行抽象化。適當的縮排和整潔的編碼風格,能夠幫助他更好地理解程式碼結構。儘管視力受限,他仍能夠參與 Angular、React 等前端框架的開發工作。他的經歷表明,視力障礙並不會阻止一個人成為出色的開發者。透過使用輔助科技和特殊的工作方式,視障人士也能夠在軟體產業佔有一席之地。
以上就是本期的內容,喜歡的話請給❤️,分享或轉寄本電子報給有興趣的朋友。如果您有想要介紹的開源專案,也請來信與我們分享,或是在 X (前 Twitter) 留言給我們,感謝!