标签
文章指出,尽管科技界关注同理心和愉悦,但软件通过剥夺用户自主性和控制权而变得不尊重用户,最终使用户幼稚化。它呼吁以尊重而非怜悯来设计。
文章认为,AI编程加速了开发速度与系统重要性的脱钩,导致关键系统变得脆弱且故障波及范围广,并倡导实施强制谨慎设计的‘慢速软件’。
一篇博客文章讨论了 Go 中过度的空指针检查如何可能表明代码不清晰和错误处理实践不佳,主张早期失败并显式建模不可用的依赖。
Kent Beck 澄清了 YAGNI 原则并非关乎节省编码工作量,而是为了避免在代码尚未需要时构建推测性结构所带来的成本。他指出,即使是正确的猜测也会产生代价,因为它剥夺了将来构建正确结构的可能性。
一份实用的指南,介绍如何编写有效的软件设计文档,概述关键组成部分和最佳实践,这些经验来自作者在 Google 和 Microsoft 的工作经历。
本文以 SCSS(一种基于 Scheme 的 CSS 预处理器)为例,探讨 Lispy 领域特定语言的设计。讨论了 SCSS 如何将 CSS 表示为一等值及其实现的局限性。
作者探讨了当AI智能体成为常规用户时,软件设计可能需要如何演变,讨论了持久状态、协作规则、权限和审计追踪等需求。
这篇评论文章尖锐指出,类似Claude的AI智能体缺乏真正软件架构所需的上下文判断力和说“不”的能力,警告人们不要让它们在缺乏人类监督的情况下设计系统。
作者详细介绍了为非技术分析师设计一种自定义查询语言的过程,用于过滤车辆维护数据,并概述了用户需求、数据模式以及具体用例。
一位软件工程师分享了学习软件架构的见解,强调组织架构与激励机制优先于代码本身,并结合 rust-analyzer 与科学计算代码的实例进行了说明。
本文推荐 Peter Naur 的著作《编程即理论构建》,主张编程的本质在于构建和传达对软件的心理模型,而不仅仅是编写代码。