關於
Michael Lynch 是一位獨立開發者、技術作家與部落客。他畢業於哥倫比亞大學電腦科學系,曾先後在 Microsoft 與 Google 擔任軟體工程師,並在 NCC Group 擔任安全工程師。
2018 年,他從 Google 離職開啟全職獨立創業生涯。他從零創辦了知名的開源硬體 KVM 產品 TinyPilot,並在營運四年後成功出售。他著有面向軟體工程師的英文寫作指南《Refactoring English: Effective Writing for Software Engineers》。
自離職創業以來,他長期在個人網站 mtlynch.io 上以高度公開透明的方式記錄每月創業複盤(Monthly Retrospectives),分享關於獨立產品營運、代碼審查(Code Review)實踐、網路安全與軟體工程思考的深度文章。
你還可以在這些地方發現 Michael Lynch 的蹤跡
- 個人網站: https://mtlynch.io
- Twitter: @deliberatecoder
- GitHub: mtlynch
- Bluesky: @mtlynch.io
- Mastodon: m.mtlynch.io/@michael
- YouTube: https://www.youtube.com/@mtlynch
- Email: [email protected]
文章
- 重構英文:第 20 個月
- Refactoring English(《重構英文》):第 19 個月
- 重構英文:第 18 個月
- Refactoring English(《重構英文》):第 17 個月
- Refactoring English(《重構英文》):第 16 個月
- Claude Code 發現隱藏 23 年的 Linux 漏洞
- Refactoring English(《重構英文》):第 15 個月
- 重構英文:第 14 個月
- Eversource 電動車補助計畫外洩麻薩諸塞州客戶資料
- 我作為自籌創辦人的第八年
- 重構英文:第 13 個月
- Refactoring English:第 12 個月
- 我對 MeshCore 離線傳訊的第一印象
- 只要 26 次點擊、橫跨 6 個畫面,就能在 OPNsense 上新增一個 VLAN
- Refactoring English(《重構英文》):第 11 個月
- 先別急著升級到 Litestream 0.5.0
- 用 JavaScript 閱讀我的部落格
- 重構英文:第 10 個月
- 提供 2 倍解析度的 xkcd 漫畫清單
- 以 2 倍解析度取得 xkcd 漫畫
- 我曾出現在《The Old New Thing》上
- Refactoring English(《重構英文》):第 9 個月
- 送給另一半一份禮物:夫妻共用的電子郵件網域
- 透過命令列刷寫 AirGradient ONE
- 《重構英文》:第 8 個月
- 將 ZFS 儲存池從 RAIDZ1 遷移至 RAIDZ2
- Refactoring English(《重構英文》):第 7 個月
- goHardDrive 洩漏數千名顧客個資
- 我對 Gleam 的第一印象
- 從 Gleam 呼叫 Elixir 函式庫的簡易範例
- 重構英文:第 6 個月
- 為了網頁開發,我該學哪個新語言?
- 來自 Simon Willison(西蒙·威利森)在 Software Misadventures 的訪談筆記
- Refactoring English(《重構英文》):第五個月
- 我身為自費出版技術書作者的 6,000 美元預付金
- 別跟 Podcast 託管平台綁死:自行託管你的 Podcast Feed
- 重構英文:第 4 個月
- 我的新書預售驚險達標
- 不再是我最愛的 Git Commit
- 重構英文:第 3 個月
- Never Pay the First Bill(《永遠別付第一張帳單》)by Marshall Allen(馬歇爾·艾倫)
- 我在 VS Code 上的 Zig 設定
- Refactoring English(《重構英文》):第 2 個月
- 在免費的 Oracle Cloud 虛擬機上安裝 NixOS
- 我作為自籌創業者的第七年
- Cline AI 助理令人著迷
- 如何在 OPNsense 中解析區域網路主機名稱
- 如何提高寄給我的開發信回覆率
- 克服 Samsung Secure Erase 的各種陷阱
- Refactoring English(《重構英文》):第 1 個月
- if got, want:撰寫更佳 Go 測試的簡單方法
- The Case for Open Borders(《開放邊界論》) John Washington(約翰・華盛頓)著
- 育嬰假:第 4 個月
- 我對 Hello Base 的回饋
- 在 NixOS 上執行簡易 Go 網頁服務
- 育嬰假:第 3 個月
- 從你的靜態部落格中刪除時間戳記
- 建立用於 Fuzz netconsd 的 Nix 工作流程
- 我第一次出場學到的教訓
- 摘自 Charles Marohn(查爾斯·馬洛恩)《Escaping the Housing Trap(《逃離住房陷阱》)》的重點整理
- 與 Nemotron 的一次失敗實驗
- 使用 Nix 對 PDF 解析器進行模糊測試(下篇)
- 使用 Nix 對 PDF 解析器進行模糊測試(上篇)
- 麻薩諸塞州居民可因垃圾郵件起訴線上商家
- 育嬰假:第二個月
- 育嬰假:第 1 個月
- 我還是搞不懂 Base
- 諾亞·布拉格的首次 Stoke Fire 直播
- 教育產品:第二個月
- GUI 是反社交的
- 想買下 Is It Keto 嗎?
- 教育產品:第 1 個月
- 在 Nix 下設定 Git Shell 提示字元
- 重置之月
- 參加我的六週部落格寫作課程
- 重置之月
- 我賣掉了 TinyPilot,我第一個成功的事業
- 徵才:特約部落格漫畫家
- 透過 Ollama 試玩 Lllama 3
- TinyPilot:第 45 個月
- 為什麼多餘的建置步驟會讓我的 Zig 應用程式快 10 倍?
- TinyPilot:第 44 個月
- TinyPilot:第 43 個月
- 我作為自籌創業者的第六年
- 強韌城鎮
- ArchiveBox 超酷的
- 如何轉載或改作本內容
- TinyPilot:第 42 個月
- 如何在不將其加入 Git 的情況下使用 Nix Flake
- 使用 Zig 為 C 應用程式撰寫單元測試
- 使用 Zig 呼叫 C 程式碼:字串
- TinyPilot:第 41 個月
- 使用 Llamafile 與 LLaVA 1.5 的粗淺實驗
- 從 Zig 呼叫 C 函式庫的簡單範例
- TinyPilot:第 40 個月
- 在 TrueNAS Core 上安裝 Jellyfin
- 使用 Nix 打造以專案為單位的開發環境
- TinyPilot:第 39 個月
- 在 Proxmox 上執行 NixOS
- TinyPilot:第 38 個月
- 在 Nix 中從 URL 匯入
- Aardvark'd:Fog Creek 紀錄片,18 年後回顧
- TinyPilot:第 37 個月
- 在 Raspberry Pi 4 上安裝 NixOS 的失敗嘗試
- 在 Raspberry Pi 4 上安裝 NixOS
- TinyPilot:第 36 個月
- 在我的 TP-Link 管理型交換器上除錯 VLAN
- 我對 Nix 的第一印象
- TinyPilot:第 35 個月
- 從 Cory Zue(柯瑞·祖伊)2023 年 5 月現場實作直播的心得整理
- 在 Fly.io 雲端伺服器上部署 Syncthing
- 向潛在的 3PL 廠商該問哪些問題
- TinyPilot:第 34 個月
- TinyPilot:第 33 個月
- 設計理想的自籌式企業
- TinyPilot:第 32 個月
- TinyPilot:第 31 個月
- 我作為自籌創業者的第五年
- TinyPilot:第 30 個月
- Go Programming Blueprints(《Go 程式設計藍圖》)— Mat Ryer(馬特·萊爾)著
- TinyPilot:第 29 個月
- TinyPilot:第 28 個月
- 從 Cypress 遷移至 Playwright
- TinyPilot:第 27 個月
- 我該投資 iBonds 嗎?
- TinyPilot:第 26 個月
- 自籌資金小企業的應徵者追蹤系統調查
- 修復我的 Golang 網頁應用程式中的記憶體耗盡錯誤
- TinyPilot:第 25 個月
- 無需解鎖即可備份加密的 ZFS 資料
- 我後悔花 4.6 萬美元改版網站
- TinyPilot:第 24 個月
- TinyPilot:第 23 個月
- TinyPilot:第 22 個月
- TinyPilot:第 21 個月
- TinyPilot:第 20 個月
- TinyPilot:第 19 個月
- 我自籌創業的第四年
- TinyPilot:第 18 個月
- TinyPilot:第 17 個月
- TinyPilot:第 16 個月
- Badass: Making Users Awesome(《打造厲害使用者》) 作者 Kathy Sierra(凱西·席艾拉)
- TinyPilot:第 15 個月
- TinyPilot:第 14 個月
- How to Stop Worrying and Start Living(《如何停止憂慮,開創人生》) by Dale Carnegie(戴爾·卡內基)
- TinyPilot:第 13 個月
- TinyPilot:第 12 個月
- The Goal(《目標》) by Eliyahu M. Goldratt(艾利·高德拉特)
- TinyPilot:第 11 個月
- TinyPilot:第 10 個月
- Litestream 如何以每月 0.03 美元的成本淘汰我的資料庫伺服器
- TinyPilot:第 9 個月
- Shoe Dog(《鞋狗》) by Phil Knight(菲爾·奈特)
- 與我合作的接案開發者工作指南
- TinyPilot:第 8 個月
- TinyPilot:第七個月
- 作為獨立開發者的第三年
- TinyPilot:第 6 個月
- How to Be an Antiracist(《如何成為反種族主義者》) by Ibram X. Kendi(伊布拉姆·X·肯迪)
- 如何讓你的程式碼審查者愛上你
- TinyPilot:第 5 個月
- Bowling Alone(《獨自打保齡》)— Robert D. Putnam(羅伯特·D·普特南)
- TinyPilot:第 4 個月
- 打造 Homelab VM 伺服器(2020 年版)
- TinyPilot:第 3 個月
- TinyPilot:第 2 個月
- Traction(《牽引力》)—— Gabriel Weinberg(蓋布瑞爾·溫伯格)與 Justin Mares(賈斯汀·馬雷斯)著
- 我如何向無良商家討回欠款
- TinyPilot:第一個月
- The Seven Habits of Highly Effective People(《與成功有約:高效能人士的七個習慣》) Stephen R. Covey(史蒂芬·R·柯維)著
- TinyPilot:不到 100 美元自製 KVM over IP
- Is It Keto:第 13 個月
- Key Mime Pi:將你的 Raspberry Pi 變成遠端鍵盤
- 喬丹·麥可納的《波斯王子》製作秘辛
- Is It Keto:第 12 個月
- 我耗時八年將 45 卷錄影帶數位化(下)
- 使用 MediaGoblin 編輯與分享家庭影片
- 我的八年征途:數位化 45 捲錄影帶(上篇)
- Nonviolent Communication(《非暴力溝通》) 作者 Marshall B. Rosenberg(馬歇爾·B·羅森堡)博士
- Is It Keto:第 11 個月
- 更新:Stripe 針對使用者追蹤的回應
- Stripe 正悄悄記錄你在其客戶網站上的瀏覽行為
- 意料之外的重整之月
- WanderJest:第二個月
- WanderJest:第一個月
- 身為獨立開發者的第二年
- 追求我所熱愛的事業
- 使用 Vue + Nuxt 打造簡單的預渲染網頁應用程式
- Outliers(《異數》)by Malcolm Gladwell(麥爾坎·葛拉威爾)
- 我大概只是在拖延吧
- 擺脫社群媒體、電子郵件與 StackOverflow 的干擾
- Is It Keto - 第 10 個月
- PyGotham 2019 筆記
- Is It Keto - 第 9 個月
- 聘請內容寫手:第五部分——終止與寫手的合作
- 聘請內容寫手:第三部分——篩選候選人
- 聘請內容寫手:第二部分——撰寫詳盡的職務說明
- 聘請內容寫手:小型企業指南
- 聘用內容寫手:第四部分——與寫手合作
- 聘用內容寫手:第一部分——尋找寫手
- Is It Keto — 第 8 個月
- 我外包過最蠢的一件事
- What Got Done — 第三個月
- The Mom Test(《媽媽測試》)— Rob Fitzpatrick(羅伯·費茲派翠克)
- What Got Done - 第二個月
- 靠把進度更新寄給沒人來保持動力
- What Got Done - 第一個月
- 如何快速成長卻始終無法獲利
- Chaos Monkeys(《混亂猴子》) by Antonio García Martínez(安東尼奧·賈西亞·馬丁內茲)
- 復原之月
- 無痛搞定網頁應用程式的端對端測試
- PyTexas 2019 筆記
- Is It Keto:第七個月
- Is It Keto:第 6 個月
- Is It Keto:第 5 個月
- 我作為一人開發者的第一年
- Is It Keto:第 4 個月
- 從一個笨拙騙子身上學到的 Upwork 經驗
- 零程式碼修改,為應用程式加裝雲端儲存
- Is It Keto:第 3 個月
- Start Small, Stay Small(《小而美》)— Rob Walling(羅伯·沃林)著
- 為什麼優秀的開發者會寫出糟糕的單元測試
- 我是如何自欺欺人,導致產品太晚才上線
- Fooled by Randomness(《隨機騙局》)by Nassim Nicholas Taleb(納西姆·尼可拉斯·塔雷伯)
- Deep Work(《深度工作力》)by Cal Newport(卡爾·紐波特)
- 讓已死的函式庫起死回生:第三部——復健
- Zestful:第 5 個月
- 讓已死的函式庫起死回生:第二部——穩定化
- Happy City(《快樂城市》)by Charles Montgomery(查爾斯·蒙哥馬利)
- 讓已死的函式庫起死回生:第一部——急救復甦
- Zestful:第 4 個月
- 離職後,我都在做些什麼
- 後續追蹤與 Space Duck
- 為什麼我辭去 Google 的工作,選擇為自己工作
- 如何聘請漫畫家,讓你的部落格不再無聊
- KetoHub 更新:第三個月
- 外包你的 MVP 的陷阱
- KetoHub:第 2 個月
- Sia-Minio 整合事後檢討
- 如何像人一樣做程式碼審查(下)
- 如何像真人一樣進行程式碼審查(上篇)
- 使用 Sia 與 Nextcloud 打造專屬的低成本雲端儲存應用程式
- 我如何為部落格聘請一位特約編輯
- GreenPiThumb:Raspberry Pi 園藝機器人
- 我如何偷走你的 Siacoin
- Siacoin 新手挖礦指南
- 打造 Homelab VM 伺服器
- 外包歷險記:用 TaskRabbit 下廚
- 用 ProsperBot 自動化 Prosper 投資
- 使用 Selenium 測試 Ansible 網頁應用程式角色
- 使用 Ansible 自動部署 ClipBucket
- 透過 Docker 在 Synology NAS 上執行 Sia