关于
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个月
- Refactoring English(《重构英语》):第14个月
- Eversource 电动汽车返利计划泄露马萨诸塞州客户数据
- 我作为独立创始人的第八年
- 重构英语:第13个月
- 《重构英语》第 12 个月
- 我对 MeshCore 离网消息传递的初体验
- 跨 6 个屏幕点击 26 次,即可在 OPNsense 中添加一个 VLAN
- 重构英语:第 11 个月
- 暂缓使用 Litestream 0.5.0
- 用 JavaScript 读取我的博客
- 《重构英语》:第 10 个月
- 以 2 倍分辨率获取 xkcd 漫画
- 2倍分辨率 xkcd 漫画列表
- 我曾在 The Old New Thing 上露过脸
- Refactoring English:第9个月
- 送给配偶一份礼物:夫妻共用邮箱域名
- 从命令行给 AirGradient ONE 刷固件
- 《重构英语》第 8 个月
- 将 ZFS 池从 RAIDZ1 迁移到 RAIDZ2
- 重构英语:第 7 个月
- goHardDrive 泄露了数千名客户的个人数据
- 我对 Gleam 的第一印象
- 从 Gleam 调用 Elixir 库的简单示例
- 重构英语:第 6 个月
- 我该为 Web 开发学习哪门新语言?
- 西蒙·威利森在 Software Misadventures 访谈的笔记
- Refactoring English(《重构英语》):第 5 个月
- 我作为自出版技术作者拿到的 6000 美元预付款
- 不要与播客托管平台绑定:自行托管你的播客订阅源
- 英语重构:第 4 个月
- 我的新书预售勉强成功了
- 我不再最喜欢的 Git 提交
- Refactoring English:第三个月
- Never Pay the First Bill(《永远不要先付第一张账单》),Marshall Allen(马歇尔·艾伦)著
- 我的 VS Code Zig 配置
- Refactoring English(《重构英语》): 第 2 个月
- 在免费的 Oracle Cloud 虚拟机上安装 NixOS
- 我作为自筹创始人的第七年
- Cline AI 助手令人着迷
- 如何在 OPNSense 中解析本地主机名
- 提高你发给我的冷邮件的回复率
- 克服三星 Secure Erase 中的各种坑
- Refactoring English(《重构英语》):第 1 个月
- if got, want:编写更优雅 Go 测试的简单方法
- 《开放边境的论据》——约翰·华盛顿(John Washington)著
- 陪产假:第 4 个月
- 我对 Hello Base 的反馈
- 在 NixOS 上运行一个简单的 Go Web 服务
- 陪产假:第三个月
- 删除静态博客中的时间戳
- 创建 Nix 工作流来对 netconsd 进行模糊测试
- 我第一次退出的教训
- Charles Marohn《逃离住房陷阱》要点摘录
- 与 Nemotron 的一次失败实验
- 用 Nix 对 PDF 解析器进行模糊测试(第一部分)
- 使用 Nix 对 PDF 解析器进行模糊测试(下篇)
- 马萨诸塞州居民可以起诉在线商家发送垃圾邮件
- 陪产假:第 2 个月
- 陪产假:第 1 个月
- 我依然对 Base 感到困惑
- 诺亚·布拉格的首次 Stoke Fire 直播
- 教育产品:第二个月
- 图形界面是反社交的
- 想收购 Is It Keto 吗?
- 教育产品:第一个月
- 在 Nix 下配置 Git Shell 提示符
- 重置月
- 加入我的六周博客写作课程
- 重整之月
- 我卖掉了 TinyPilot,我的第一家成功企业
- 招聘:自由职业博客漫画师
- 通过 Ollama 体验 Llama 3
- TinyPilot:第 45 个月
- 搭建我的第一个家庭实验室机架
- 为什么一个多余的构建步骤让我的 Zig 应用快了 10 倍?
- TinyPilot:第 44 个月
- TinyPilot:第43个月
- 自力更生创业的第六年
- 坚强城镇
- ArchiveBox 超级酷
- 如何转载或改编本站内容
- TinyPilot:第 42 个月
- 使用 Nix Flake 而不将其添加到 Git
- 使用 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 个月
- 在树莓派 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编程蓝图》)by Mat Ryer(马特·瑞尔)
- TinyPilot:第 29 个月
- TinyPilot:第 28 个月
- 从 Cypress 迁移到 Playwright
- TinyPilot:第 27 个月
- 我应该投资 iBonds 吗?
- TinyPilot:第 26 个月
- 面向自力更生型企业的求职者跟踪系统(ATS)评测
- 修复我的 Golang Web 应用中的内存耗尽 Bug
- TinyPilot:第25个月
- 在不解锁的情况下备份加密的 ZFS 数据
- 我后悔花4.6万美元改版网站
- TinyPilot:第 24 个月
- TinyPilot:第 23 个月
- 打造一台预算型 Homelab NAS 服务器(2022 年版)
- TinyPilot:第 22 个月
- TinyPilot:第21个月
- TinyPilot:第 20 个月
- TinyPilot:第19个月
- 自力更生创业者的第四年
- TinyPilot:第 18 个月
- TinyPilot:第 17 个月
- TinyPilot:第 16 个月
- 《Badass:让用户变得了不起》,作者:Kathy Sierra
- TinyPilot:第15个月
- TinyPilot:第 14 个月
- 戴尔·卡耐基《人性的优点》:如何停止忧虑,开始生活
- TinyPilot:第13个月
- TinyPilot:第 12 个月
- 《目标》——Eliyahu M. Goldratt(艾利·高德拉特)
- TinyPilot:第 11 个月
- TinyPilot:第 10 个月
- Litestream 如何让我以每月 0.03 美元的成本摆脱数据库服务器
- TinyPilot:第 9 个月
- Shoe Dog(《鞋狗》) 作者 Phil Knight(菲尔·奈特)
- 与我合作的自由职业开发者指南
- TinyPilot:第八个月
- TinyPilot:第七个月
- 独立开发者生涯的第三年
- TinyPilot:第 6 个月
- 《如何做一名反种族主义者》,作者 Ibram X. Kendi(伊布拉姆·X·肯迪)
- 如何让你的代码审查者爱上你
- TinyPilot:第 5 个月
- Bowling Alone(《独自打保龄》) by Robert D. Putnam(罗伯特·D·帕特南)
- TinyPilot:第 4 个月
- 搭建家庭实验室 VM 服务器(2020 版)
- TinyPilot:第 3 个月
- TinyPilot:第 2 个月
- 《Traction》——Gabriel Weinberg 与 Justin Mares 著
- 我如何从一个不守规矩的商家那里收回欠款
- TinyPilot:第 1 个月
- 《高效能人士的七个习惯》——Stephen R. Covey(史蒂芬·R·柯维)
- TinyPilot:花不到 100 美元打造一台 KVM Over IP
- Is It Keto:第 13 个月
- Key Mime Pi:把你的 Raspberry Pi 变成远程键盘
- 乔丹·梅克纳创作《波斯王子》
- Is It Keto:第 12 个月
- 我历时八年将45盘录像带数字化的经历(下篇)
- 我历时八年将 45 盘录像带数字化的漫长历程(上篇)
- 使用 MediaGoblin 编辑和分享家庭视频
- Nonviolent Communication(《非暴力沟通》) by Marshall B. Rosenberg(马歇尔·B·卢森堡), Ph.D.
- 这符合生酮饮食吗:第 11 个月
- 更新:Stripe 对用户跟踪的回应
- Stripe 正在悄悄记录其客户网站上的用户行为
- 一个意外的重启月
- WanderJest:第 2 个月
- WanderJest:第 1 个月
- 我作为独立开发者的第二年
- 追寻我热爱的生意
- 使用 Vue + Nuxt 构建一个简单的预渲染 Web 应用
- 马尔科姆·格拉德威尔《异类》
- 我大概是在拖延
- 消除社交媒体、电子邮件和 StackOverflow 带来的干扰
- Is It Keto - 第10个月
- PyGotham 2019 随笔
- Is It Keto——第9个月
- 招聘内容作者:第四部分——与作者合作
- 招聘内容作者:第二部分——撰写详细的职位描述
- 招聘内容写作者:小企业指南
- 招聘内容写手:第一部分——寻找写手
- 招聘内容写手:第五部分——终止与写手的合作
- 招聘内容写手:第三部分——筛选候选人
- Is It Keto——第 8 个月
- 我外包过的最蠢的一项任务
- 做成了什么——第 3 个月
- The Mom Test(《妈妈测试》) by Rob Fitzpatrick(罗布·菲茨帕特里克)
- 完成了什么——第 2 个月
- 通过向无人发送状态更新来保持动力
- What Got Done - 第一个月
- 如何快速增长,却永远赚不到钱
- Chaos Monkeys(《混沌猴子》) by Antonio García Martínez(安东尼奥·加西亚·马丁内斯)
- 复苏月
- 端到端测试 Web 应用:轻松无痛的方法
- PyTexas 2019 见闻笔记
- Is It Keto:第 7 个月
- Is It Keto:第6个月
- 这算生酮吗:第5个月
- 我作为独立开发者的第一年
- Is It Keto:第4个月
- 从一个笨拙的骗子身上,我学到了关于 Upwork 的这些事
- 无需修改代码,将应用改造为使用云存储
- Is It Keto:第 3 个月
- Start Small, Stay Small(《从小做起,保持小规模》)——Rob Walling(罗布·沃林)
- 为什么优秀的开发者会写出糟糕的单元测试
- 我如何骗过自己,迟迟未能发布产品
- Fooled by Randomness(《随机致富的傻瓜》),Nassim Nicholas Taleb(纳西姆·尼古拉斯·塔勒布)
- Cal Newport 的《深度工作》
- 让一座沉寂的库重获新生:第三部分——康复
- Zestful:第5个月
- 让一座“死去的”代码库重获新生:第二部分——稳定化
- Happy City(《幸福城市》)作者 Charles Montgomery(查尔斯·蒙哥马利)
- 让一座死去的库重获新生:第一部分——复苏
- Zestful:第4个月
- 辞职后我都在做些什么
- 后续,以及 Space Duck
- 我为什么辞去 Google 的工作,选择为自己工作
- 如何雇用漫画家,让你的博客不再无聊
- KetoHub 更新:第 3 个月
- 将 MVP 外包的种种陷阱
- KetoHub:第2个月
- Sia-Minio 集成事后复盘
- 像人一样做代码审查(第二部分)
- 像人一样做代码审查(第一部分)
- 使用 Sia 和 Nextcloud 创建自己的低成本云存储应用
- 我如何为自己的博客聘请了一名自由编辑
- GreenPiThumb:一款 Raspberry Pi 园艺机器人
- 我是如何偷走你的 Siacoin
- Siacoin 挖矿新手指南
- 搭建 Homelab 虚拟机服务器
- 外包历险:用 TaskRabbit 做饭
- 使用 ProsperBot 实现 Prosper 自动化投资
- 使用 Selenium 测试 Ansible Web 应用角色
- 使用 Ansible 自动部署 ClipBucket
- 通过 Docker 在群晖 NAS 上运行 Sia