我的软件北极星

Lobsters Hottest 新闻

摘要

作者提出了一套软件开发的优先级列表:对最终用户的有用性、正确性、可维护性和效率,认为所有工作都应致力于最大化用户效用。

<p><a href="https://lobste.rs/s/g6lkw1/my_software_north_star">评论</a></p>
查看原文
查看缓存全文

缓存时间: 2026/06/03 21:49

# 我的软件北极星 来源:https://kristoff.it/blog/north-star/ 在我制作软件时,这是我的优先级排序列表: 1. **软件应对最终用户有用**,并努力成为**你能够爱上的软件**(https://softwareyoucan.love/)。 2. **软件应具有正确性**,因为故障软件会削弱用户能从中获得的实用性。 3. **软件应具备可维护性和高效性**,以免在试图从中获取更多价值时浪费人力和计算资源。 如果你的区块链没有漏洞,但它是一场“抽地毯”骗局¹(https://kristoff.it/blog/north-star/#fn-1),那也无济于事。 如果你的语言是**内存安全**的(https://joshlf.com/posts/memory-safety-life-and-death/),但你并未**为正确性而设计**(https://tigerstyle.dev/),也没有一个能最终**修复所有漏洞**的过程(https://kristoff.it/blog/fix-your-asserts/),那也毫无意义。 如果你的软件是一个**美丽的抽象层华盖**(https://www.youtube.com/watch?v=wo84LFzx5nI),但运行起来像坨屎,且无人能维护,更别提添加新功能了,那同样毫无意义。 *有时我会力竭,有时会走错路,有时还会故意绕道而行,但没人能骗我把次要的星星误认为真正的目的地:我确实关心自己的开发者体验,但仅仅局限于它帮助我交付更多你能够爱上、我和他人也能享受的软件这一精确范围内。* 最终目标是最大化对最终用户的实用性;其他一切的存在都是为了服务这一目标,而这正是我制作软件的北极星。

相似文章

软件内部机制读书俱乐部

Hacker News Top

本文介绍了一个面向资深开发者的全球性电子邮件读书俱乐部,专注于阅读有关数据库、分布式系统和软件性能的技术书籍,目前正在研读《操作系统导论》(Operating Systems: Three Easy Pieces)。

学习软件架构

Hacker News Top

一位软件工程师分享了学习软件架构的见解,强调组织架构与激励机制优先于代码本身,并结合 rust-analyzer 与科学计算代码的实例进行了说明。

为变更优化,而非应用性能

Hacker News Top

本文指出,软件团队常常过度优化微性能基准测试,却牺牲了开发者体验和工程吞吐量,而这两者才是长期交付速度与可维护性的真正瓶颈。