2作者: nomilk大约 1 个月前原帖
与大约两年前AI编码工具普及之前的时代相比,如果要给出一个数字,你认为作为软件工程师(SWE)的生产力变化了多少? 我经常思考这个问题,也很想听听其他人的看法。对我来说,简短的回答是:大约提高了2倍(即比大型语言模型(LLMs)出现前快100%)。详细来说: 当我充分理解领域(即我正在解决的业务逻辑和现实世界问题)并熟悉技术栈时,我的编码速度大约提高了10倍,同时代码质量相同或更好。 当我不理解领域时,提示会变得模糊或不充分,LLM会进行猜测,虽然它能在一天内完成一个月的工作,但我接下来的三周会花在重构上,并意识到代码的糟糕程度,这都是因为提示的不佳。总的来说,这可能仍然比AI出现前更快,但会带来一种令人沮丧的心理现象,让你以为某个任务快完成了,结果却花了几周时间进行调试、重构,常常还得把它扔掉重新开始。 在不熟悉的技术栈中,我并不总能发现明显的错误(由AI或提示引起的错误),因此生产力降低,风险增加。 生产力提升的10-15%归功于开发环境的改善。我会打开大约~/.dotfiles,告诉它我遇到的问题或请求特定的改进。它通常会修改.zshrc、.vimrc或类似文件(如果第一次尝试不成功,会进行必要的迭代)。由于这个过程非常快速(例如5分钟),我已经做了大约20个小调整,这些调整之前并不值得花时间去做。它们确实让我更开心,也稍微提高了我的生产力。 但总体而言,综合考虑所有因素,我可以说我现在的生产力大约是大型语言模型出现前的2倍。
1作者: AzeniqTech大约 1 个月前原帖
我一直在使用我自己开发的一个小写作助手,叫做 Rephrazo,并且我觉得分享一些实现细节和迄今为止的错误可能会很有用。 这个想法很简单: * 高亮你正在写的文本 * 按下一个快捷键 * 在一个小弹窗中获取 AI 释义 * 一键插入回去 目标是消除“复制 - 打开 AI 工具 - 粘贴 - 重写 - 再粘贴”的循环,以便进行小的编辑。 这篇文章将讨论我如何实现这个功能,哪些技术上有效,哪些无效。 ### 设计约束 从一开始,我就试图在几个约束条件下进行设计: * 一个快捷键 → 一个主要操作 * 保持在当前应用内(不使用浏览器,不要大侧边栏) * 最小化用户界面:单一建议,一键插入 * 延迟“感觉瞬时”,否则就不会被使用 每当我打破这些约束(增加额外的选择、提示等),在使用过程中就会下降。 ### 高层架构 大致分解如下: * 桌面客户端: * 监听全局快捷键 * 获取当前文本选择 * 发送到 API * 在选择附近的小覆盖层中显示返回的释义 * 后端 API: * 接受选定的文本 + 一些最小的上下文 * 调用大型语言模型(LLM) * 应用固定的提示(“使其更清晰,尽量保持语气/声音”) * 返回单一建议(目前没有多选) 目前没有复杂的基础设施,只是尽量缩短“按键”到“返回文本”的路径。 ### 文本捕获和插入 出乎意料的棘手部分不是 LLM,而是: * 可靠地捕获选定文本 * 不干扰用户的剪贴板 * 在不破坏格式的情况下插入重写的文本 第一版实际上滥用了剪贴板: * 保存剪贴板 * 复制选择 * 发送到后端 * 通过粘贴结果替换选择 * 恢复剪贴板 这有效……直到它不再有效: * 一些应用忽略模拟的按键 * 有时剪贴板在此过程中被其他内容覆盖 * 感觉脆弱且“黑客” 我正在慢慢朝着更具应用意识的集成方向发展(在可能的情况下),同时保持通用的后备方案。 ### 延迟和用户体验 延迟比我预期的更重要。大致分类如下: * < 500 毫秒 → 感觉瞬时,人们很满意 * 1-2 秒 → 如果建议明显更好则可以接受 * > 3 秒 → 人们后悔按下快捷键,使用频率降低 一些小的用户体验改进有帮助: * 在选择附近立即显示一个小的“加载”状态 * 立即渲染弹窗(骨架状态),然后在响应到达时填充内容 * 在失败时,显示简短而诚实的信息,而不是默默无声 如果你在构建 AI 工具,这些可能不会让你感到惊讶,但当你看到自己的用户在几次缓慢响应后犹豫时,感觉就不一样了。 ### 出现的问题 * 我在早期过度构建了自定义选项: * 语气下拉框 * 多种模式(“更短”、“更长”、“更正式”) * 额外的切换 人们忽视了这些选项,或者感到决策疲劳。 * 我低估了在不同应用中选择/插入的边缘情况有多少。 * 我在最初的构建中没有记录足够的数据,因此不得不重新添加遥测以了解实际使用情况。 如果你感兴趣,当前的早期版本在这里: [https://rephrazo-ai.app/](https://rephrazo-ai.app/)
1作者: kenshozone大约 1 个月前原帖
嘿,HN, 我一直在不断尝试构建东西,但每次发布时都失败。这次我构建了一个能强制我保持自律的系统:一个生产力系统,它会在你专注工作太久而没有休息时,物理上阻止你继续工作。 它的功能: - 集专注计时器、冥想追踪器和任务管理器于一体的终端美学界面 - 强制10:1的专注与休息比例——工作100分钟,必须休息10分钟,计时器才能再次解锁 - 完成任务需要反思日志(每完成5个任务写1个反思)——不允许积压日记 - ASCII进度条,单间距字体,所有操作都有括号标记:`[ START_FOCUS ]` - 没有游戏化,没有连续性焦虑,没有“你可以做到!”的加油 我为什么要构建它: 我会工作4小时,周三就精疲力竭,然后连续3天沉迷于无意义的刷屏。每个生产力应用都让我继续工作。我需要一个能阻止我并强制我恢复的东西。 这种美学是故意的——残酷主义的终端用户界面,去除多巴胺刺激。黑色背景,功能性颜色(青色/琥珀色/红色),没有圆角,没有庆祝。只有自律。 当前状态: - 7天免费试用,无需信用卡 - 网络应用(Flutter + Supabase) - 在移动设备上可用,但设计以桌面为主 - 我是唯一的日常用户(经典创始人问题) 我在构建这个过程中学到的: - 强制休息是有争议的——一些测试者讨厌被阻止 - 人们想要“再做一个任务”的覆盖功能——我拒绝添加 - 终端美学过滤效果明显:开发者喜欢,普通用户却不感兴趣 - 我不知道如何在不显得说教的情况下进行市场推广 现场演示:[https://app.kensho.zone](https://app.kensho.zone) 来源:尚未开放(如果有兴趣会考虑) 这是我第五次失败的商业尝试。通常我会发布一次,然后想知道为什么没人使用。此次尝试不同:诚实面对挣扎,并在放弃之前寻求严厉的反馈。 我缺少什么?你真的会使用这个吗,还是它只是解决了我一个人的问题?