修复 Enlightenment E16 潜伏20年的致命Bug:牛顿法实现缺陷引发无限死循环
本文详细记录了修复 Linux 窗口管理器 Enlightenment E16 中一个长达20年 Bug 的过程。该问题导致系统在处理特定长文件名时完全卡死,经排查根源在于文本截断逻辑错误地实现了牛顿迭代法,且缺乏必要的迭代次数限制与边界保...
标签索引 / 第 5 页
这个标签下有 178 篇文章。按时间回看相关判断与实践记录。
标签精选
本文详细记录了修复 Linux 窗口管理器 Enlightenment E16 中一个长达20年 Bug 的过程。该问题导致系统在处理特定长文件名时完全卡死,经排查根源在于文本截断逻辑错误地实现了牛顿迭代法,且缺乏必要的迭代次数限制与边界保...
本文犀利地指出敏捷开发定义模糊,其所谓的创新其实早在上世纪70年代就被工程界实践。随着AI大语言模型的普及,由于AI无法有效处理模糊指令,软件开发范式正在发生根本性逆转。行业正从敏捷推崇的“可运行软件优于详尽文档”,转向由LLM驱动的“详尽...
本文以Jellyfin项目为例,深入探讨了开源社区普遍存在的PR(拉取请求)长期积压问题。作者指出,这不仅仅是由于维护者人手不足,更是缺乏流程控制的系统性问题。文章结合排队论(Queuing Theory)指出,当资源利用率接近100%时,...
随着生成式 AI 的深入应用,开发者发现现有 Agent 框架(如 Superpowers)虽能显著提升代码编写速度,却在“测试与验收”环节面临严峻挑战。本文记录了使用 AI 进行企业开发的真实困境:Code Review 不稳定、单元测试...
随着 ChatGPT 和 Agent 技术的飞速演进,软件工程正经历一场深刻的范式转移。文章基于 OpenAI 提出的“Harness Engineering”概念,指出工程师角色正从代码编写者转变为 AI 的辅助者。核心变革包括:启动速度...
文章深入剖析了如何通过技术手段将Firefox的构建速度提升17%。针对传统编译器缓存(如ccache)无法处理Python脚本生成WebIDL绑定代码的痛点,作者利用buildcache工具独有的Lua插件系统,编写了自定义包装器,成功将...
这篇文章深入剖析了现代软件团队的经济逻辑,指出大多数组织对研发成本与产出比缺乏清晰的财务视野。文章以数据为据,指出一个8人工程师团队的月成本极高,且内部平台组往往需要通过3-5倍的价值产出才能覆盖实际风险与维护成本。作者认为,过去十年的低利...
这篇文章借由Perl创始人Larry Wall提出的程序员“懒惰”美德,深刻反思了LLM(大语言模型)时代的编程现状。真正的“懒惰”是指为了避免未来重复劳动而投入精力构建高效系统,但在当下,过度依赖LLM生成代码可能使开发者从“聪明的懒惰者...
本文深入探讨了代码复杂度的多维评估标准,指出传统的计算复杂度仅衡量机器资源消耗,而忽视了开发者的认知成本。文章对比了圈复杂度和Halstead复杂度等经典指标,并创新性地引入心理语言学概念(如平均依存距离、困惑度),探讨如何利用LLM作为概...
本文详细介绍了如何利用形式化规范语言(Quint)和模型驱动测试(MBT)来建模并验证《龙与地下城》极度复杂的战斗规则系统。作者通过状态机精确处理了“反法术链”、借机攻击中断等高交互场景,并利用MBT发现了大量人工测试难以覆盖的逻辑漏洞。此...