AI Can't Even Fix a Simple Bug – But Sure, Let's Fire All Our Engineersa year agohttps://nmn.gl/blog/ai-scamGitHub Copilot AI向微软的.NET运行时提交了有缺陷的代码,尽管经过人工修正仍反复未能解决问题。企业CEO们正以AI技术进步为借口合理化裁员,掩盖疫情期间招聘热潮中的糟糕规划。AI工具能提升生产力但无法取代人类工程师,尤其在复杂问题解决和系统设计领域。开发者应精通AI工具,记录其局限性,并公开分享AI在现实应用中的成功与失败案例。最有效的方式是让熟练开发者将AI作为能力倍增器使用,而非替代人类专业知识的工具。
Developers spend most of their time figuring the system outa year agohttps://lepiter.io/feenk/developers-spend-most-of-their-time-figuri-7aj1ocjhe765...开发者大部分时间都在理解系统,维护和代码理解占据了大量时间。1979年和2018年的研究表明,代码理解和导航分别占开发工作量的很大比例(约58%和24%)。'理解系统'的时间是开发中最大的开销,但这一点常常未被明确讨论或优化。阅读代码是获取信息的主要方式,但这种方式效率低下且依赖人工,容易导致信息不全和不确定性。为此提出了可塑性开发(Moldable Development)作为解决方案,通过定制工具来适应问题上下文,减少人工阅读代码的需求。Glamorous Toolkit被引入作为一种可塑性开发环境,旨在为软件系统创建定制化工具提供支持。
The Copilot Delusiona year agohttps://deplet.ing/the-copilot-delusion/作者描述了一位与GitHub Copilot相似的同事带来的糟糕体验——动作迅速但鲁莽,不加理解地粘贴代码。Copilot在语法帮助和快速搭建框架时很有用,但缺乏细致考量,无人监督时可能带来危险。作者批评过度依赖AI工具的现象,认为这会削弱编程能力,导致代码臃肿低效。真正的编程需要深入理解系统、性能调优和动手解决问题,这些是AI无法复制的。文章警告软件开发中平庸化的趋势,即AI生成的代码正在取代真正的工艺精神。
The Myth of the 'Waterfall' SDLCa year agohttp://bawiki.com/wiki/Waterfall.html本文探讨了软件开发中瀑布模型的常见误解及其历史背景文章挑战了主流认知中的'冻结瀑布'解读,指出没有任何原始文献提倡这种僵化流程作者追溯瀑布模型起源至Herbert D. Bennington(1956)和Winston W. Royce(1970)的论文,但两人都未使用'瀑布'这一术语分析指出Royce提出的模型本质上是迭代且灵活的,与后来被强加的线性僵化流程截然不同虽然美国国防部DOD Standard 2167常被视为'冻结瀑布'的推手,但该标准本身其实支持迭代开发文章推测'冻结瀑布'的迷思可能源于销售人员和敏捷方法论推广者的刻意塑造Royce版瀑布模型的核心特征包括:详尽的文档记录、阶段迭代机制、全程客户参与作者强调没有放之四海皆准的开发方法,主张根据项目特性定制流程为消除'瀑布'一词的负面联想,文章建议采用'计划式开发'等替代术语最后通过改良的流程图解,展示了瀑布模型本应具备的迭代性与灵活性本质
On "Vibe Coding"a year agohttps://tante.cc/2025/05/23/on-vibe-coding/AI炒作周期从'推理模型'转向'代理型AI'和'氛围编程''氛围编程'指在不深入理解软件架构的情况下使用AI生成代码关于'氛围编程'的叙事鼓吹民主化与赋权,却忽视了软件开发的复杂性软件创作需要理解问题、领域和社会背景,而不仅仅是编写代码'氛围编程'可能催生未经测试、漏洞百出的软件,在管理压力下成为永久性技术债务通过AI实现的民主化使技能商品化,权力集中化,并损害个人成长与专业积累AI工具贬低专业价值,阻碍学习欲望,通过提供即时低质结果使用户幼稚化边缘群体因不透明、不可靠的AI生成解决方案而处于更不利地位未经测试的AI生成软件对用户和整个数字生态系统构成风险'氛围编程'趋势折射出对手工艺精神和长期问题解决能力的不尊重
I Let Google's Jules AI agent into my code, it did hours of work in an instanta year agohttps://www.zdnet.com/article/i-let-googles-jules-ai-agent-into-my-code-repo-and...谷歌的Jules AI代理能通过文本指令为软件添加新功能,显著缩短开发时间Jules目前免费开放,每日允许五次请求,在编码任务中展现出极高效率作者成功使用Jules在10分钟内为WordPress插件添加了「隐藏管理栏」功能该AI能自主规划并实施代码修改,几乎无需人工干预,但也引发监管担忧快速理解并修改完整代码库的能力,为软件开发带来机遇与风险并存初级开发岗位可能面临威胁,因为类似Jules的AI能以更低成本完成其工作作者强调仍需经验丰富的程序员审核AI生成代码,以防错误并确保质量Jules处于测试阶段,偶发服务中断和界面问题,预计将在未来版本中修复
Domain Modelers Will Win the AI Eraa year agohttps://www.0toreal.com/posts/domain-modelers-will-win/AI工具正在弥合'实施鸿沟',让领域专家无需深厚编程知识就能将构想直接转化为可运行代码瓶颈已从编码能力转向理解应该构建什么,这凸显了领域知识比语法更重要底层编码正在变得商品化,而定义实体、关系和约束的能力依然稀缺且珍贵AI可以生成代码,但若缺乏清晰的领域心智模型,输出可能存在缺陷或毫无意义领域建模专家——那些对特定领域有深刻理解的人——将在AI时代蓬勃发展,因为他们能利用AI快速构建和迭代例子包括医生建模工作流程、教师创建定制工具、物流专家自动化调度AI正在逆转专业化趋势,让我们重回问题解决者也能构建解决方案的时代向AI发出指令很简单,但有效的建模才能区分功能性产品和徒有其表的演示需要开发者来实现创意的时代正在消逝,因为AI使领域专家能够直接构建
The Myth of Developer Obsolescencea year agohttps://alonso.network/the-recurring-cycle-of-developer-replacement-hype/新技术常常承诺让开发者过时,但最终只是改变了他们的角色。NoCode催生了专业人员和后端集成专家,而非减少开发者数量。云计算将系统管理员转变为薪资更高的DevOps工程师。离岸开发导致了分布式团队,其成本比预期更高。AI辅助开发凸显出系统架构设计比编写代码更有价值。AI可以生成代码,但在系统架构和全局设计方面仍存在困难。随着AI的发展,管理和最小化技术债务的能力变得更为关键。系统架构设计是AI无法替代的技能。
As a developer, my most important tools are a pen and a notebooka year agohttps://hamatti.org/posts/as-a-developer-my-most-important-tools-are-a-pen-and-a...作者认为笔记本是软件开发者的最重要工具。书写和草图有助于将抽象想法转化为具体形式,帮助解决问题和设计。离开电脑使用笔记本能激发创造力,更好地理解问题。像向他人解释一样写下代码有助于发现不一致和错误。笔记本记录了思考过程,便于未来参考。作者邀请通过邮件讨论此话题,期待2025年进行更深入的对话。
Vibe coding for teams, thoughts to datea year agohttps://laughingmeme.org//2025/05/25/vibe-coding-for-teams.html大语言模型是自万维网以来对编程最具颠覆性的变革。写代码比理解代码容易,这一现状并未因大语言模型改变。每一行代码都是技术债,封装着当前可能存疑的认知。用大语言模型更新心智模型比与工程师协作更困难。说服工程师淘汰过时测试如同与幼童讲道理。大语言模型难以优先复用既有代码而非新建轮子。大语言模型常重复造轮子,导致代码库枝蔓横生。高效团队依赖深厚的工具链知识,这一实践正受大语言模型冲击。大语言模型降低编码成本,却增加了软件生态的多样性。当前趋势预示着大规模、复杂化、定制化代码库的未来。大语言模型在辅助代码阅读与逻辑推理方面存在简化复杂性的潜力。
Why GUIs are built at least 2.5 timesa year agohttps://patricia.no/2025/05/30/why_lean_software_dev_is_wrong.html文章对精益软件开发提出批评,认为其错误地将制造业隐喻套用在软件开发上。软件开发被比作设计工厂而非在工厂工作,程序本身才是'真正的工厂'。软件开发过程被描述为迭代式,需要通过深度理解和反馈循环来发现用户的真实需求。图形用户界面因其主观性体验被强调为设计难点,往往需要多次迭代才能获得可接受的解决方案。文章指出软件开发的经济模式与制造业不同,复制成本可忽略不计但初始设计成本极高。精益软件开发中的'浪费'概念因主观性受到质疑,可能破坏必要的创造性过程。作者建议理解软件开发需要认识其独特性,不能简单套用制造业或其他领域的类比。
What do software developers need to know to succeed in an age of AI?a year agohttps://arxiv.org/abs/2506.00202生成式AI已显现出提升软件开发人员生产力的早期迹象。人们担忧AI可能导致劳动力市场动荡和技能退化。研究涉及21位处于AI应用前沿的开发人员。研究识别出12个工作目标、75项关联任务及所需技能/知识。研究发现可提炼为5个关键洞见。成功的AI赋能开发者需具备四大领域技能:生成式AI运用、核心软件工程、相关工程领域及非工程领域能力。这些技能需应用于6步任务工作流中。保障开发者未来竞争力需要在职学习与更新的计算机科学学位课程。重新技能培训需同时注重'软技能'与技术能力,以实现技能升级并防止技能贬值。
Why I Wrote the Beam Booka year agohttps://happihacking.com/blog/posts/2025/why_I_wrote_theBEAMBook/作者在维护Klarna核心系统十年后撰写了《The BEAM Book》,该系统若出现15毫秒的BEAM延迟就会引发重大故障。项目始于2012年,初期乐观但后续遭遇挑战,包括工具切换(从DocBook转AsciiDoc)以及与O'Reilly和Pragmatic Bookshelf的出版合作问题。2017年将项目开源至GitHub后,社区反馈和贡献者的改进建议提供了持续动力。该书深入探讨BEAM核心机制,包括调度器、垃圾回收、内存管理及Erlang/Elixir系统性能调优等关键主题。主要经验包括:坚持优于完美主义、明确边界的重要性,以及社区参与的宝贵价值。该书平装版已在亚马逊上市,作者欢迎通过GitHub提交贡献,并提供BEAM内部原理研讨会服务。
10 Years of Betting on Rusta year agohttps://tably.com/tably/10-years-of-betting-on-rust作者回顾了使用Rust语言十年的历程,从早期版本兼容性问题与借用检查器挑战的艰难起步谈起。Rust生态系统因其编程'品味'、简洁性和健壮性广受赞誉,成为开发者钟爱的语言。早期采用Rust需要付出巨大努力,包括为缺失的标准库功能创建解决方案,但如今语言已日趋成熟。Rust的可靠性显著提升:编译器错误减少、依赖管理优化、crate生态系统更具可预测性。该语言以'程序员同理心'著称,提供出色的错误提示、代码检查、文档支持和IDE集成。展望未来,作者期待构建简易性、可移植性、常量求值、并发模型等领域的改进,以及更广泛的应用场景。Rust的未来被描绘为光明坦途,采用率与开发完善的正向循环将持续推动创新突破。
I Think I'm Done Thinking About GenAI for Nowa year agohttps://blog.glyph.im/2025/06/i-think-im-done-thinking-about-genai-for-now.html#...作者将自己的问题解决方式比作虚构侦探Monk——利用神经质倾向而非福尔摩斯式系统方法来破解谜题他们对生成式AI(genAI)表示怀疑,列举了负面审美体验、伦理担忧及软件开发中的实际低效问题作者探讨了genAI的经济与环境影响,包括高能耗和可能引发的行业性崩溃对genAI教育影响的担忧聚焦于作弊泛滥和学习成效下降隐私问题源于将敏感数据传送至云端AI模型,存在企业滥用的潜在风险作者谴责使用盗取训练数据的行为,以及AI生成内容的法律模糊性他们描述了参与genAI讨论的疲惫感,指出因技术复杂性和快速迭代而难以证实其缺陷文章以作者退出genAI争论的决定作结,承认反对该技术普及面临难以克服的挑战
How do you prototype a nice language?a year agohttps://kevinlynagh.com/newsletter/2025_06_03_prototyping_a_language/作者过去一个月一直在开发一种代码CAD语言的原型,在语法、解析器和求值器方面取得了进展。目前的演示效果平平,类似于游戏编程或硬件工程中的基础示例。目标是实现软件hygge(舒适感):即时加载、零崩溃和舒适的用户体验。正在探索双向编辑的概念,允许通过图形界面和源代码两种方式操作几何体。原型开发中的挑战包括在最小可行产品和忽视缺陷之间取得平衡。首次从零构建语言,在变量绑定、函数解析和求值机制方面遇到挑战。发现Nystrom的《Crafting Interpreters》很有帮助,同时使用Clojure的tools.analyzer进行数据处理。考虑过但最终放弃使用Tree-sitter进行解析,选择了熟悉的Instaparse等工具。正在探索语言实现与编辑器工具链统一化的方法。寻找已有编程语言中支持第一方LSP和双向编辑的参考案例。提及了Gleam、Lady Deirdre、Roslyn和ClojureStorm等多种资源工具。分享了个人兴趣领域,包括语言设计、3D打印和政府效率问题等阅读内容。
May 2025 (Version 1.101)a year agohttps://code.visualstudio.com/updates/v1_101Visual Studio Code 2025年5月发布(版本1.101),包含大量更新引入聊天工具集功能,用于分组和管理相关工具MCP支持扩展至提示词、资源、采样(实验性)和认证功能聊天界面优化:区分用户消息并新增撤销功能编辑应用效率提升,快捷键绑定更统一简化隐式上下文操作,可直接添加当前文件为聊天上下文自定义聊天模式(预览版)支持定制聊天行为和工具可用性现可通过GitHub Copilot修复任务配置错误无障碍改进:新增用户操作和代码操作的音效反馈编辑器体验更新:实时搜索和自定义菜单等功能进程浏览器现支持远程连接时的网页端查看Python扩展更新:新增聊天工具和模板项目创建功能扩展开发改进:包含MCP扩展API和密钥扫描功能升级至Electron 35(Chromium 134.0.6998.205 + Node.js 22.15.1)感谢贡献者提交的拉取请求和问题跟踪
Andrew Ng says vibe coding is a bad name for a real and exhausting joba year agohttps://www.businessinsider.com/andrew-ng-vibe-coding-unfortunate-term-exhaustin...吴恩达批评'氛围编程'这一术语具有误导性,强调AI辅助编程实际上是项极需智力的高强度工作尽管名称存疑,吴恩达仍支持AI辅助编程,指出其能有效加速软件开发进程吴恩达主张全民学习编程,认为这是人机交互的核心技能,与AI发展程度无关在其初创公司AI Fund中,跨岗位的编程知识普及带来了显著的生产力提升编程领域AI的兴起引发了关于软件开发未来方向与技术技能必要性的激烈讨论
Using Codex Well (Experiences so far)a year agohttps://messyprogress.substack.com/p/using-codex-well-experiences-so-farOpenAI的Codex代表了AI编程工具的重大进步,从辅助编写代码转向管理执行编码任务的AI智能体团队。有效使用Codex需要实施大量完整性检查来捕捉其偶发错误,同时利用其自身能力来建立这些检查机制。在调用Codex前确保代码整洁性可提升其表现,该工具本身也擅长进行必要的代码重构。编码标准的文档记录对于引导Codex产出理想输出至关重要,而Codex本身也能协助创建这类文档。建议将大型任务分解为定义明确的子任务,以避免Codex陷入停滞或产生意外结果。Codex在编写测试、清理代码和记录流程方面的辅助能力,完美诠释了用AI改进AI工作流程的原则。未来软件工程可能更侧重于管理AI智能体而非直接编写代码,这对初级开发者和资深工程师都将产生深远影响。
Signs Your Agile Process Sucksa year agohttps://www.miserablyemployed.com/blogs/rants/7-signs-your-agile-process-sucks每日站会变成了冗长低效的会议待办事项清单充斥着被忽视的任务且缺乏有效管理多个产品经理的优先级相互冲突,导致混乱和延误技术债务被忽视,代码质量持续恶化冲刺目标模糊不清,往往导致最后时刻的紧急修复复盘会议流于形式,感觉是在浪费时间尽管工作繁忙,但进展甚微,团队普遍存在倦怠现象