Matthias Endler

RSS: https://endler.dev/rss.xml
Matthias Endler 的个人网站,关于底层编程与后端开发的软件工程师。Rust 与 Go 语言。

我为什么仍然相信导师制度

Matthias Endler用乒乓球教练的故事说明导师的价值:多年的练习发现不了动作问题,一句旁观者的指点就能立刻纠正。他在文章中指出,很多时候关键问题不是你主动求教能发现的,而是需要有人观察你后指出。 这同样适用于技术工作——反复练习无法替代外部的有效反馈。
评论点赞收藏17 天前

给年轻开发者的建议

<p>最近有人问我,今天会给年轻开发者什么建议。我的回答出乎意料地和代码关系不大。我会重点关注以下内容:</p><h2>学习如何构建产品</h2><p>即使大部分代码由LLM编写,仍然需要能够理解用户需求、设计解决方案并根据反馈迭代的问题解决者。无论技术如何,这项技能始终有价值。</p><h2>学习如何学习</h2><p>如果信息是免费的,批判性思维和基于数据做出决策的能力就是一种超能力。你可以轻松击败那些只死记硬背事实、依赖“模式匹配”而不花时间理解底层原理的人。</p><h2>学习如何沟通</h2><p>能够解释想法并激励他人,能让你有个领先优势。这样,你可以通过让别人与你合作,而不是孤军奋战,从而放大你的影响力。</p><h2>成为问题解决者</h2><p>如果每个人都能使用相同的工具,那么你与众不同的是你快速且有效地解决问题的能力。选定一个问题,学习该领域,并创建一个快速反馈循环以迭代解决方案。<br><br>如果你能比任何人更快解决问题,你就会非常抢手。</p><h2>拥有多个技能</h2><p>如果你只会编程,你很容易被替代。试着把你的知识应用到你感兴趣的领域。例如,如果你对健身感兴趣,可以将编程技能与健康与养生知识结合起来。<br><br>这缩小了你竞争的范围。选择一个你自然被吸引且喜欢探索的领域,即使是在空闲时间也一样。有动力和好奇心,比单纯聪明和专注要好。<br><br>你的好奇心会比单纯的意志力更长时间地保持动力。</p><h2>根本没有任何改变</h2><p>我那一代人是最后一代只要会编程就能找到工作的,但实际上,这从来不仅仅是编程。他们一直是能够理解大局、有效沟通并解决问题的人。…</p>
评论点赞收藏37 天前

GitHub从来不只是代码托管

GitHub再次宕机,引发开发者反思:这个平台真正的价值不在代码托管,而在社区连接。作者引用HN热评指出,GitHub曾是特定人群的聚集地,带来社区外溢价值;如今稳定性和信任流失,社区正在消散。 对开发者而言,GitHub是看朋友项目、发现好仓库的地方,而不仅是Git仓库主机。
评论点赞收藏44 天前

其他链接检查器是如何实现递归的

本文核心看点不是技术教程,而是一个亲身经历了5年失败的工程师,带着好奇心去读别人源码后得到的发现:其他链接检查器并没有用什么高明trick实现递归,它们从一开始就是爬虫架构。 作者拆解了muffet(Go/WaitGroup)、LinkChecker(Python/无界队列+计数器)、linkinator(TypeScript/单线程onIdle)和broken-link-checker(JavaScript/双队列事件级联)四个开源项目,逐一呈现它们处理递归的核心组件——可变工作队列(frontier)、入队时原子标记的visited set、以及终止检测原语。 每段分析都附带作者对自己项目lychee的深刻反思:为什么一个Rust项目花了5年才走通这条路?因为lychee最初设计为单向流管道(stream),而递归需要回环(cycle),在异步channel模型中插入循环就是死锁的根源。 架构选择是命运级的——一开始是爬虫还是流,决定了未来五年的工程痛苦。
评论点赞收藏118 天前

五年磨一剑:为 lychee 链接检查器添加递归功能

Matthias Endler 分享了为其 Rust 开源链接检查工具 lychee 添加递归检查能力的五年历程。lychee 是作者 2020 年在家无聊时开始的项目,如今已被约 4 万个 GitHub 仓库依赖,用户包括 Google、AWS、Microsoft、Cloudflare 等。 递归检查是其最久悬而未决的 issue,长达五年未解决。文章讲述了这个看似简单的功能背后真实的技术挑战与决策过程,第一手的工程经验、具体的问题背景和长期维护者的视角,让这篇技术博文有真实的人味和讨论价值。
评论点赞收藏122 天前

自建个人邮件通讯的实践记录

一位开发者分享了重新启动个人博客邮件通讯的经历。他没有使用任何第三方通讯平台,而是用 Git 仓库中的 Markdown 文件管理内容,自建了后端注册系统和 CLI 发送工具。 文章讲述了从过去长期未更新到重新运转的过程,以及在此过程中学到的经验教训。对于正在考虑是否自建通讯系统、想摆脱平台依赖的开发者来说,这是一篇有真实参考价值的一手实践记录。
评论点赞收藏132 天前

论品味

<p>我已将这篇博客的设计不断优化了整整二十年。<br>随着每一份新版本的推出,我越来越清楚自己想要什么。</p><p>结果发现,我的设计往往随着时间推移而变得愈发简洁。<br>到如今,几乎全都是字体排版和留白。<br>我越来越擅长分辨自己真正珍视的事物,以及哪些可以舍弃。</p><p>清理杂乱能带来喜悦。<br>也许这正是人类内心深处最真实的需求?</p>
评论点赞收藏152 天前

现在正是开始写博客的时候

核心看点:AI 能下赢人类三十年,但大家还是爱看人类下棋——个人博客也是同理,AI 生成内容越泛滥,真实的人类声音反而越珍贵。作者从国际象棋的复兴切入,指出人们追求的不是"最优解",而是人的思考过程、个性表达和不完美中的真实感。 文章鼓励读者别再犹豫,趁 AI 内容充斥互联网、同质化严重的时候,用个人博客发出自己的声音;不需要完美,不需要宏大,有观点、有经历、有态度就行。 作者还分享了自己运营技术博客的体会:写给自己、写得真诚、保持更新频率但不必苛求每篇都是爆款。这不是泛泛的"内容创作指南",而是一篇带着鲜明立场和亲身观察的鼓动文章,适合正在犹豫要不要开始写点东西的人看。
评论点赞收藏247 天前

两种软件构建哲学:自底向上与打磨雕琢

作者以多年实践经验,提炼出两种互补的软件系统构建方式:"自底向上构建"——从一个极小的核心逐步叠加功能;"打磨雕琢"——从一个粗糙想法出发,反复迭代精炼。 文章指出两者并无优劣之分,更多取决于团队风格和问题域的熟悉程度。这是一篇充满个人体悟与工程智慧的方法论文章,不教条、不模板化,适合对软件架构和团队协作方式有思考的读者,能引发不同技术倾向者的讨论与共鸣。
评论点赞收藏334 天前

关于选择Rust

本文是Rust领域知名博主Matthias Endler对近期Rust在成熟软件中应用争议的个人思考。他以git内核线程中Rust破坏性变更讨论和sudo-rs重写的安全问题为例,指出Rust虽然能提升内存安全性,但在大型成熟项目中引入Rust会带来集成复杂性、维护负担等现实挑战。 文章核心观点:Rust不是银弹,sudo-rs重写后仍出现类似原始版本的漏洞就是明证。作者主张以务实态度看待Rust adoption,避免技术狂热,根据项目实际情况做出权衡。 内容有具体案例支撑,带有个人经验和立场,适合关注系统编程语言和软件工程实践的读者。
评论点赞收藏369 天前

如何审查代码

资深工程师 Matthias Endler 分享二十余年代码审查实战心得。他目前 50-70% 工作时间用于审查代码,文中讲述了自己从新手到专家的关注点演变——不再只抠细节 bug,而是更注重大局观、架构设计和可维护性。 文章来自一线真实经验,有具体的方法论转变和可复用的审查思维,适合开发团队和希望提升代码质量的工程师参考。
评论点赞收藏420 天前

重复你自己

一位资深软件工程师反思DRY(不要重复自己)原则,直言顶级程序员其实经常复制代码。他结合亲身观察,指出适度重复代码能降低耦合、减少过早抽象带来的复杂度,让修改更灵活。 这篇文章挑战了编程圈的经典教条,提供了一个反套路、接地气的实操视角,值得任何写过代码的人停下来想一想。
评论点赞收藏464 天前

Watching Millionaires

I watched the Champions League final the other day when it struck me: I’m basically watching millionaires all the time. The players are millionaires, the coaches are millionaires, the club owners are...
评论点赞收藏481 天前

水管工保罗

用寓言故事隐喻AI编程工具(如Copilot)与传统手艺的矛盾。熟练工匠保罗的朋友马里奥用一台"神奇机器"快速修水管,但机器干活粗糙——密封不严、接头错位、还凭空添加多余部件。 马里奥依赖机器后失去了自主修管能力,客户因质量问题又回头找保罗。故事生动刻画了"AI快速但不可靠、生成幻觉内容"的痛点,核心观点明确:好工作需要时间打磨,捷径往往带来更多麻烦。 文末带CodeCrafters推广链接。叙事有画面感、有立场、有讨论入口,适合开发者人群引发关于AI辅助编程利弊的碰撞。
评论点赞收藏484 天前

Reinvent the Wheel

One of the most harmful pieces of advice is to not reinvent the wheel. It usually comes from a good place, but is typically given by two groups of people: • those who tried to invent a wheel themsel...
评论点赞收藏494 天前

无论如何,都要一起吃饭

一个家庭坚持了近二十年的铁律:无论发生什么,每天晚上全家必须一起吃饭。作者回忆,这条规矩在9/11那天和母亲住院时都未被打破。 他反思这条看似简单的规则带来的涟漪效应——它强制全家人为彼此留出时间,塑造了家庭的节奏感和凝聚力。一篇真诚的个人回忆,核心看点不在方法论,而在于习惯如何在不妥协的坚持中成为家庭默契的基石,读来温暖且有共鸣。
评论点赞收藏535 天前

我认识的那些最优秀的程序员

一位资深开发者基于多年亲身观察,总结出最优秀程序员身上的共性特质。不是技术清单,而是思维习惯、工作方式和职业态度层面的洞察——比如如何做决策、如何对待不确定、如何持续成长。 文章来自个人真实经历和一手观察,有具体可借鉴的经验,不是泛泛的"十大习惯"模板文。对开发者尤其是初级和中级程序员,是一份有启发性的路线参考。
评论点赞收藏544 天前

信息的本质

用分拣袜子这件日常琐事,生动讲解并行计算的核心概念。作者从真实体验出发,把"一堆袜子"变成理解并行处理、资源竞争、开销与死锁的绝佳模型,层层递进引出任务队列、协议分工等解决方案。 文章有具体数字(1人60分钟、2人30分钟),有失败场景(100人抢100只袜子导致死锁),有优化思路(按颜色分工会遇到负载不均),最终落脚到信息科学的本质不是编程,而是寻找解决一类问题的通用方法。 个人叙事清楚、逻辑递进自然,读来轻松却有干货,适合对计算机科学感兴趣的普通读者。
评论点赞收藏620 天前

我热爱编程

一篇发自内心的编程热爱宣言,有人味、有温度,不是冷冰冰的技术教程。作者从自动化赋予的超能力、编程比打游戏更爽、分享代码的满足感、优雅解法的艺术性、与机器对话的奇妙、站在巨人肩膀上的谦卑等几个侧面,讲述编程为何令人着迷。 这不是"三天学会XX"的速成文,而是一位有经验程序员写给犹豫者的真诚邀请——鼓励读者放下对智力的自我怀疑,勇敢尝试。文章有真实的个人热情和审美判断,但整体观点较常见,深度有限,且结尾附带了CodeCrafters推广链接(有佣金),略有营销痕迹。 总体属于合格可读的随笔,信息量不大但读起来舒服。
评论点赞收藏620 天前

想开一个技术播客吗?——我的实战经验分享

作者Matthias Endler分享运营Rust in Production播客一年的真实经历(月活约5000听众,位居播客前5%)。文章从个人经验出发,覆盖技术播客从零启动到持续运营的关键环节,包括内容定位、嘉宾邀请、制作流程与推广策略。 有具体数据支撑和一手观察,不是空泛的趋势预测或SEO拼凑,对计划或正在运营技术播客的从业者有参考价值。
评论点赞收藏726 天前

跟随黑客的脚步

核心看点:如果你想预判明天的关键技术走向,最有效的做法不是读行业报告,而是看黑客今天在折腾什么。作者提出一个朴素但有力的观察角度——黑客(技术极客/早期采用者)对某样东西的热情程度,往往比市场分析更早预示技术浪潮。 短文中没有机构式说教,而是基于个人观察给出一个可操作的认知框架:关注黑客社区的兴趣流向,比追热点更接近技术真相。观点明确、有讨论入口,适合引发技术读者关于技术趋势判断方式的讨论。
评论点赞收藏753 天前

保持简单

作者发现自己生活的简单并非偶然,而是有意识的主动选择。他观察到,如果不加干预,生活会自动变得复杂——房贷、订阅服务、保险、无数浏览器标签页、繁忙的工作,甚至一条狗,不知不觉就堆满了日常。 基于"时间和健康是幸福的最佳代理"这一信念,他选择持续简化生活。一篇简短但有真实个人观点和共鸣点的随笔,适合引发读者对自身生活方式的反省和讨论。
评论点赞收藏758 天前

登录芦苇

登录后关注作者、收藏内容和参与讨论。