Zed AI 通过内联转换、工作流和上下文构建工具增强开发人员的文本转换能力
- • 内联转换: Zed 允许您使用 AI 直接修改助手面板中的文本。这意味着您可以优化代码片段、调整文档,甚至可以在同一空间内尝试不同的编码风格。
- • **递归功能:**您可以反复应用内联转换,迭代优化上下文和提示。将其视为一个反馈循环,其中 AI 可帮助您为自己制定更好的指令。
- • **多光标支持:**同时对多个选择应用相同的转换,加快重复任务。
- • **工作流程 ( /workflow ):**此命令弥补了助手面板和项目文件之间的差距。它允许您根据 AI 建议安排复杂的代码更改。Zed 解释模型发出的标签并直接在代码库中应用相应的转换。
- • 情境构建工具:
- • **/project:**快速将相关项目信息插入助手面板,加快上下文设置,同时保持透明度和控制力。
- • **/auto:**即将推出的一项功能,可根据您当前的任务自动插入上下文。插入的上下文仍然可见且可编辑,允许您根据需要查看和修改它。
- • 透明度和控制: Zed 优先考虑用户对 AI 交互的理解和控制。所有转换和上下文插入都清晰可见且可修改。
- • 开放且可扩展: Zed 通过自定义斜线命令、快速微调和扩展来鼓励社区做出贡献。目标是创建一个协作环境,让用户塑造 AI 辅助开发的未来。
Slack AI 易受间接提示注入攻击,导致数据从私人渠道泄露
间接提示注入:核心问题是“间接提示注入”,攻击者操纵Slack中的数据(如文件或消息)以诱骗 Slack AI 执行有害命令。这与直接将恶意代码注入提示不同。
利用引文: Slack AI 的引文功能存在漏洞。攻击者可以制作看似无害的消息,其中包含引文中的隐藏指令。当用户查询 Slack AI 时,它会在不知情的情况下执行这些隐藏的指令。
数据泄露示例:研究人员演示了攻击者如何通过在引文中嵌入恶意指令来窃取敏感信息(例如关键直接下属的姓名)。当用户向 Slack AI 询问该用户共享的消息时,隐藏的指令将被执行,从而泄露机密数据。
文件注入风险:一个主要问题是 Slack AI 处理来自频道和 DM 的文件的新功能。这大大扩大了攻击面。攻击者可以将恶意指令隐藏在看似无害的 PDF 文件中(例如,使用白色文本)。如果用户上传此文件,Slack AI 可能会执行隐藏的指令,从而可能导致数据泄露或其他有害操作。
Slack 的回应:虽然 Slack 在负责任的披露过程中迅速做出了回应,但他们最终认为证据不足。他们辩称,从公共渠道访问信息是故意的行为。然而,PromptArmor 强调了漏洞的严重性及其对 Slack 内部机密数据的潜在影响。
公开披露理由:由于 Slack 的使用范围广泛,间接提示注入带来的巨大风险,尤其是在添加文件提取功能后,PromptArmor 决定公开披露此漏洞。这让用户可以采取必要的预防措施(例如禁用 Slack AI 的文件处理功能)来降低风险。
Toast 的用户体验很差
- • 马克斯·施密特 (Max Schmitt) 认为,toast 通常会带来糟糕的用户体验,因为它们远离交互点,从而扰乱用户流程。
- • 他举了一个 YouTube 示例,点击“保存”会触发一个模式,然后在下角出现延迟的确认提示。由于操作和反馈之间的距离,这会产生不和谐的体验。
- • 施密特建议彻底取消toast,重新设计互动方式:
- • 在“保存”按钮下方直接显示播放列表,而不是使用模式。
- • 保存更改时使用加载指示器,其消失即表示保存成功。
- • 他又举了两个不需要toast的例子:
- • 在 Gmail 中存档电子邮件已经意味着通过将电子邮件从列表中删除而成功。
- • 复制按钮通常包含内置确认功能,因此无需再使用toast功能。
- • 施密特承认,toast 对于撤消功能和键盘快捷键反馈很有帮助。
- • 他最后指出,虽然祝酒比没有反馈要好,但应谨慎使用,并且只在真正必要时使用。
通过设定截止日期和撰写产品规格来克服拖延症,完成个人项目
- • 作者努力完成项目,经常陷入改进的循环中,永远无法达到让他们感到舒服地分享自己作品的地步。
- • 他们质疑“完成”的含义,并提出当一个项目有用或足够好到可以与他人分享时,它就完成了。
- • 这种思维转变反映了作者作为一名程序员日益增强的信心,从专注于学习和实验转向构建对他人有实用价值的东西。
- • 作者列出了完成项目的常见障碍:
- • 设置登陆页面、文档以及与外部服务集成的“无聊”工作。
- • 怀疑该项目的价值并质疑是否有人会关心。
- • 他们强调了公开分享工作的重要性:
- • 负面影响很小,但有显著的上升潜力(发挥作用、与他人建立联系、甚至取得商业成功)。
- • 它具有治疗作用,迫使你更严格地处理你的想法并测试你的想法的可行性。
- • 它通过完成艰巨的任务和培养纪律来塑造性格。
- • 作者提出了两种策略来提高他们完成项目的能力:
- • 提前编写详细的产品规范,以明确目标、识别潜在挑战并定义最小可行产品。
- • 为项目设定严格的截止日期(理想情况下为 2-4 周),以保持专注并避免陷入不必要的细节。
好的重构与坏的重构
- • 什么是重构? 重构就像清理和重新组织代码而不改变其实际功能。可以把它想象成整理房间——所有东西都各归其位,但更整洁,更容易找到东西。
- • 为什么要重构?
- • **可读性:**使您和其他人更容易理解您的代码。
- • **可维护性:**简化未来的更改和错误修复。
- • **效率:**有时可以提高性能。
- • 黄金法则: 重构时切勿破坏现有功能!务必进行彻底测试,以确保一切仍按预期运行。
- • 如何安全地重构:
- • **理解代码:**在进行任何更改之前,花点时间真正了解代码的工作原理。
- • **小步骤:**将大型重构分解为更小、更易于管理的部分。这样可以更轻松地发现和修复问题。
- • **测试是关键:**编写测试来验证重构没有引入错误。
- • 工具和技术:
- • **Linting 工具(Prettier、ESLint):**帮助强制执行一致的代码风格并捕获潜在错误。
- • **代码审查:**在合并更改之前获取其他开发人员的反馈。新人可以发现您可能忽略的问题。
- • **测试框架(Vitest、React 测试库、Storybook):**确保重构后的代码行为与原始代码相同。
- • 人工智能辅助: Visual Copilot 等工具可以帮助您在重构时保持编码风格和一致性。
Pragtical 是一款轻量级、跨平台、可扩展的代码编辑器,专注于性能和定制
- • **Pragtical 是一款轻量级代码编辑器,**可在各种设备上流畅运行。它只需要 30 MB 的 RAM 和 5 MB 的磁盘空间。
- • 尽管占用空间很小,但 Pragtical 提供了强大的功能:
- • 各种编程语言的语法突出显示。
- • 支持多个光标,允许您同时在多个地方编辑代码。
- • 用于快速访问编辑器功能的命令面板。
- • 通过插件兼容语言服务器协议 (LSP) 和其他高级功能。
- • **Pragtical 具有高度可扩展性:**您可以使用 Lua 脚本及其 C API 自定义和增强其功能。提供全面的文档来指导开发人员扩展编辑器。
- • 跨平台兼容性: Pragtical 基于 SDL、C 和 Lua 构建,可在 Windows、Linux 和 macOS 上无缝运行。其架构使得移植到其他操作系统相对简单。
- • 用户友好界面: Pragtical 具有图形设置管理器,可简化配置任务。您可以轻松调整编辑器设置、颜色主题、键绑定和插件配置。
- • 免费且开源: Pragtical 采用 MIT 许可证发布,确保透明度,并允许任何人自由使用、修改和分发。重要的是,Pragtical 尊重用户隐私,不进行遥测或数据收集。
人工智能正在失去炒作
人工智能热潮正在降温:投资者对人工智能的热情正在减退,导致涉及该领域的主要科技公司的股价下跌。
采用有限:尽管投入巨大,但目前只有一小部分美国公司(4.8%)将人工智能用于生产。这一数字实际上比今年早些时候略有下降。
质疑大型语言模型:人们对 ChatGPT 等大型语言模型的能力越来越怀疑,而这些模型正处于当前人工智能热潮的前沿。
投入数十亿美元,回报不确定:大型科技公司已投入数百亿美元开发人工智能模型,预计投入的资金还会更多。然而,这些投资的实际收益和盈利能力仍不明朗。
麻省理工学院图书馆通过拆分爱思唯尔期刊实现成本节约和开放获取
- • **成本问题:**麻省理工学院图书馆发现,传统的“大宗”期刊订阅费用越来越高。他们希望探索更具成本效益的方式,让研究人员能够访问他们所需的文章。
- • 替代访问策略: 麻省理工学院实施了多种方法,以确保即使没有直接订阅 Elsevier 也可以访问文章:
- • **馆际互借:**这种传统方法允许麻省理工学院的教职员工从其他图书馆请求文章。
- • **重印台:**一种可按需访问单篇文章的服务,每篇文章需支付一定费用。
- • **成功指标:**这些替代策略被证明非常有效:
- • 92%的文章请求在1分钟内得到满足。
- • 97%的请求在1小时内得到满足。
- • 商业文件递送的年度成本约为30万美元。
- • **与爱思唯尔的谈判:**麻省理工学院试图与爱思唯尔重新谈判一份符合其价值观的合同:
- • 关于所支付的商品和服务的透明度。
- • 促进学术交流公平的机制。
- • 对所有麻省理工学院作者的文章开放获取,不受限制。
- • **爱思唯尔的回应:**爱思唯尔拒绝满足麻省理工学院的要求,只提供了一份标准的“阅读和出版”合同。
- • 麻省理工学院的决定: 麻省理工学院图书馆决定不再与爱思唯尔签订合同,优先考虑节省成本和开放获取原则。
- • **持续评估:**麻省理工学院的图书管理员继续监控期刊的使用模式和教师的反馈,以改进他们的替代访问策略。
- • **未来计划:**麻省理工学院打算将取消与爱思唯尔的合同所节省的资金重新投资于社区控制的开放出版计划。他们还鼓励其他图书馆探索类似的拆分方法。
Srcbook:用于快速原型设计的 TypeScript 笔记本
- • Srcbook:TypeScript 和 JavaScript 笔记本环境
Srcbook 是一款开源工具,旨在使用 TypeScript 和 JavaScript 创建、运行和共享可重现的程序和想法。它本质上是一个类似于 Jupyter 的笔记本环境,但专注于这些语言。
- • 主要特点:
- • 可重复性: Srcbook 强调创建可轻松重新运行和共享的代码的能力,确保一致的结果。
- • **Markdown 导出:**您可以将 Srcbook 笔记本导出为有效的 Markdown 文件 (.src.md),从而轻松共享并集成到文档或其他工作流程中。
- • **人工智能集成(计划中):**项目路线图包括整合人工智能功能,帮助用户在笔记本环境中探索和迭代他们的想法。
- • 通过 Web 界面进行本地执行: Srcbook 在您的机器上本地运行,提供基于 Web 的界面来与您的笔记本进行交互。
- • 技术细节:
- • Node.js 依赖项: Srcbook 需要 Node.js 20 或更高版本才能运行。开发人员建议使用 nvm(Node 版本管理器)来有效管理本地 Node.js 版本。
- • **安装:**可以使用 npm 全局安装 Srcbook:。
npm install -g srcbook
或者,也可以使用 npx 或 pnpm 直接执行,无需安装。
- • 运行 Srcbook:
srcbook start
要启动 Srcbook 服务器,只需在终端中运行命令。
- • 命令: Srcbook 提供了一组 CLI 命令:*
start
:启动 Srcbook 服务器。*import
:从指定位置导入现有的 Srcbook。*help
:提供特定命令的帮助信息。 - • 更新和卸载:
您可以使用 更新 Srcbook npm update -g srcbook
。要卸载,请使用npm uninstall -g srcbook
然后删除本地目录 ( rm -rf ~/.srcbook
)。
- • 分析和隐私: Srcbook 收集一些行为分析数据以改进应用程序。但是,它不会收集任何个人身份信息 (PII)。您可以通过设置环境变量来禁用跟踪
SRCBOOK_DISABLE_ANALYTICS=true
。