分类: 开发

MoonBit与Golem云:构建协同列表编辑器的探索

2025-01-04

本文讲述了使用新兴编程语言MoonBit在Golem云平台上构建协同列表编辑器的实践。作者将应用分解为三个Golem组件:列表、存档和邮件通知器,并利用MoonBit的特性实现了列表的增删改查、存档和超时邮件通知等功能。文章详细介绍了MoonBit的应用、Golem组件的架构设计、以及利用WASI接口访问系统时间和环境变量等细节,最终成功构建并部署了该应用,展现了MoonBit在Golem云平台上的应用潜力。

开发 Golem

YC孵化器公司Infisical招募解决方案工程师

2025-01-04
YC孵化器公司Infisical招募解决方案工程师

Infisical,一家由Y Combinator孵化的开源密钥管理平台公司,正在招聘一名解决方案工程师。该公司处理每天超过1亿个密钥,服务于从大型企业到快速发展的初创公司等各种客户。该职位需要具备开发或系统工程经验,以及客户互动经验。候选人将负责确保客户成功,拓展新用例,并改进产品。Infisical提供具有竞争力的薪酬和股权,以及其他福利。

开发

老旧电脑与Windows 3.1图形堆栈的搏斗

2025-01-04

作者在2008年购入的Asus Eee PC 1000H上尝试运行Windows 3.11,却遭遇了视频输出问题。默认的VGA 640x480 16色模式在1024x600屏幕上显示效果极差。内置的Super VGA驱动程序又存在兼容性问题。文章深入探讨了Windows 3.x的Enhanced模式、VGA硬件、VBE标准以及SVGAPatch补丁程序。作者通过反编译和调试,分析了驱动程序和虚拟显示设备(VDD)的运作机制,最终改进SVGAPatch,解决了部分兼容性问题,但仍存在一些待解难题。

开发

开源神器:自动微笑表情生成器

2025-01-04
开源神器:自动微笑表情生成器

F.A.T.实验室发布了一款名为Auto Smiley的开源应用,它利用计算机视觉技术,实时分析你的面部表情。当你微笑时,它会自动在当前应用中输入“:)”表情符号。该项目使用openFrameworks和MPT库,并提供多种平台的下载版本,包括Windows、Mac等。Auto Smiley曾作为F.A.T.实验室的一个快速项目,展现了其在创意技术领域的探索精神。

开发 表情识别

Prettier 插件新增 PGN 格式支持

2025-01-04
Prettier 插件新增 PGN 格式支持

一个名为 `prettier-plugin-pgn` 的 Prettier 插件问世,为代码格式化工具 Prettier 新增了对 PGN(Portable Game Notation,棋谱记谱法)文件的格式化支持。PGN 是一种用于记录国际象棋棋局的标准文本格式,该插件支持 PGN 文件中的变例、注释和多盘游戏等特性,极大地方便了棋类爱好者和开发者。安装方法简单,只需通过 npm 或全局安装即可使用。

开发 Prettier PGN

利用LLM和Cursor高效完成副项目

2025-01-04
利用LLM和Cursor高效完成副项目

作者分享了如何利用大型语言模型(LLM)和Cursor IDE提高副项目开发效率的经验。通过细化规格、代码引导和迭代,即使时间有限也能快速构建和部署项目。文章以一个习惯追踪网站为例,详细介绍了从规格制定到部署的全过程,包括利用ChatGPT完善需求、Vite搭建项目、Cursor生成初始代码、迭代改进UI/UX以及GitHub Actions部署等步骤。作者强调了分治法和提供充分上下文信息的重要性,并分享了使用不同LLM和Cursor模式的技巧,最终成功完成了习惯追踪网站的v1版本。

Beam:基于SSH的跨机器文件与管道传输工具

2025-01-04
Beam:基于SSH的跨机器文件与管道传输工具

Beam是一个利用SSH协议传输文件和管道的工具,无需二进制安装,仅需SSH客户端即可。它支持管道传输,安全性高,利用公钥进行身份验证。用户可通过简单的SSH命令发送和接收数据,也可使用随机通道名增强安全性。虽然Beam服务器位于德国,传输速度可能受限,且不支持端到端加密(数据在服务器端短暂解密),但其轻量级特性和简单的自托管方式使其成为便捷的文件传输方案。

开发 管道传输

Unity中渲染轮廓的五种技术

2025-01-04
Unity中渲染轮廓的五种技术

本文探讨了在Unity引擎中渲染物体轮廓的五种不同技术:边缘光效、顶点挤出、模糊缓冲区、跳跃泛洪算法和边缘检测。每种技术都各有优缺点,例如边缘光效简单易实现但只适用于球形物体;顶点挤出效果好但处理尖锐边缘时有缺陷;模糊缓冲区适合柔和的轮廓但性能消耗较大;跳跃泛洪算法高效渲染宽轮廓;边缘检测能渲染全屏轮廓但需要仔细微调以避免伪影。选择哪种技术取决于项目需求和性能要求。

开发 轮廓渲染

ChatGPT底层技术揭秘:程序员视角

2025-01-04
ChatGPT底层技术揭秘:程序员视角

本文深入浅出地讲解了ChatGPT的工作原理,尤其针对程序员。文章跳过了AI/ML模型的通用知识,直接从OpenAI的ChatGPT模型出发,讲解了其软件架构、Transformer网络的使用以及强化学习(RLHF)如何微调模型以适应对话任务。文章还解释了分词、模型训练以及响应生成的过程,并阐述了RLHF在确保响应准确性和上下文相关性中的作用。

开发 RLHF

RailsConf 2025:辉煌谢幕与新篇章的开启

2025-01-04
RailsConf 2025:辉煌谢幕与新篇章的开启

Ruby Central宣布RailsConf将于2025年7月8日至10日在费城举办最后一届。历时近20年,RailsConf将成为对Rails及其社区的致敬。作为战略调整的一部分,2025年将只举办RailsConf,RubyConf则推迟至2026年春季举办,并成为旗舰活动。此举旨在提升活动质量,并支持开源项目,如RubyGems和Bundler。未来,Rails将在RubyConf中保留专场,并与RailsWorld形成春季和秋季的年度盛会。

开发 RailsConf

io_uring:文件想成为演员?

2025-01-04
io_uring:文件想成为演员?

高性能Linux应用领域正在发生变革,io_uring改变了我们与操作系统的交互方式。它基于两个队列:提交队列(发送操作)和完成队列(读取结果)。结合事件循环,无需等待系统调用完成即可返回控制权,只需将操作放入队列。这与Actor模型惊人地相似:Actor模型中,对象通过发送消息进行并发计算,这与io_uring发送操作到文件描述符再异步接收响应的过程非常类似。这暗示着操作系统正朝着异步、自主运行的方向发展,传统系统调用方式或许已成为一种过时的抽象。

开发

递归:并非你想象中那么难

2025-01-04

《递归的递归之书》一书颠覆了递归算法“高深莫测”的刻板印象。作者通过Python和JavaScript的实例,循序渐进地讲解了递归的基本概念、常见算法(如阶乘、斐波那契数列、树遍历、迷宫求解等)以及优化技巧(尾调用优化、记忆化)。书中还涵盖了分治算法、排列组合、动态规划等高级主题,并以绘制分形图案为例,展现了递归的强大魅力。全书项目驱动,代码易于理解和运行,适合初学者和有一定编程基础的读者。

开发 递归算法

Wine 10.0-rc4 发布:稳定性与兼容性提升

2025-01-04
Wine 10.0-rc4 发布:稳定性与兼容性提升

Wine 10.0-rc4 发布候选版本,标志着这款开源兼容层软件的重大更新即将到来。此次更新重点关注稳定性与兼容性提升,为用户带来更流畅的 Windows 应用运行体验。开发者团队在修复大量bug和提升性能方面付出了巨大努力,为最终版本的发布打下了坚实的基础。期待正式版带来更多惊喜。

开发 兼容层

告别长任务:巧用yield提升网页性能

2025-01-04
告别长任务:巧用yield提升网页性能

本文探讨了如何优化JavaScript循环以避免阻塞主线程,从而提升网页性能。作者指出,直接使用`for...of`循环或`forEach`等方法处理大型数组会造成长任务,导致页面卡顿。解决方法是利用`scheduler.yield`或`setTimeout(0)`配合`async/await`,将长任务分解成多个小任务,并在每次迭代后让出控制权,从而保持页面响应。文中还深入探讨了批量处理和帧率优化策略,以平衡响应速度和处理效率。最终建议根据实际情况选择合适的批量大小和策略,以达到最佳的用户体验。

基于XORSHIFT32算法的伪随机数生成器实现

2025-01-04

本文记录了作者使用XORSHIFT32算法实现伪随机数生成器的过程。XORSHIFT32算法通过对初始状态进行几次位移操作来生成伪随机数。作者使用了1804289383作为初始状态,该状态在其他引擎实现中也曾使用过。代码简洁明了,包含了初始状态的定义和getRandomNumber()函数,该函数实现了XORSHIFT32算法的核心逻辑。

超越语法:一种基于恒星分解的逻辑抽象构建方法

2025-01-04
超越语法:一种基于恒星分解的逻辑抽象构建方法

这个GitHub项目实现了Jean-Yves Girard提出的“超越语法”,这是一种从低级“逻辑不可知”语言构建逻辑抽象的方法。它使用名为“恒星分解”的底层语言,其基本对象(程序)称为“星座”。这些“星座”在高级语言“Stellogen”(一种用于星座的元编程语言)中用于定义证明和公式。该项目仍在开发中,目前指南仅提供法语版本。

开发

Weird:构建你真正拥有的数字家园

2025-01-04
Weird:构建你真正拥有的数字家园

在互联网时代,我们常常租住在Facebook、GitHub等巨型平台提供的虚拟空间,丧失了真正的数字主权。Weird项目致力于改变这一现状,它提供免费的网站托管服务,让你拥有自己的域名和网站,构建一个安全、个性化的数字家园。通过简单的链接列表,你就能参与到社交知识图谱中,建立你的数字身份。虽然目前仍处于早期测试阶段,但Weird正逐步完善,未来将支持更多功能,例如Web Passports和ATProto登录等。

开发 数字家园

Pimosa: 一款多合一视频、图片和音乐编辑工具

2025-01-04
Pimosa: 一款多合一视频、图片和音乐编辑工具

Pimosa 是一款适用于 macOS 和 Windows 的应用程序,集成了 20 多种视频、音频和图像编辑工具。它提供视频压缩、转换、调整大小、合并、翻转、旋转和变速等功能,以及音频转换、合并、提取和元数据编辑功能,以及图像压缩、转换、调整大小和基本编辑功能。该应用具有批量处理功能、内置播放器和简洁的用户界面,用户评价普遍正面,称其为高效且方便的工具。

开发

超高速JVM JavaScript/TypeScript编译打包工具:swc4j

2025-01-04
超高速JVM JavaScript/TypeScript编译打包工具:swc4j

swc4j是一个在JVM上运行的超高速JavaScript和TypeScript编译打包工具。它属于Javet项目的一部分,用于在Node.js或V8在JVM上执行代码之前处理JavaScript和TypeScript代码。它支持多种特性,例如解析AST、插件、代码转换、压缩、多目标ES版本、Source Map等,并提供强大的代码安全检查功能,例如关键字限制、对象保护等。 开发者可以使用Maven或Gradle轻松集成swc4j到项目中,快速编译和打包代码。

开发

深入浅出B树:不止你想象的那么简单

2025-01-04
深入浅出B树:不止你想象的那么简单

本文深入探讨了B树的实际应用,特别是其在数据库中的优化策略。作者通过对比B树与二叉查找树在磁盘存储上的差异,解释了B树的高扇出特性如何减少磁盘IO次数,从而提升数据库性能。文章还详细介绍了B树的槽页结构、分隔键截断、溢出页以及兄弟指针等优化技术,并阐述了这些技术如何提高数据局部性、空间利用率和查询效率。最后,作者指出,B树的实际应用远比理论模型复杂,需要考虑具体的硬件和操作系统约束。

开发

F-Droid 签名验证漏洞:伪造签名者PoC

2025-01-04
F-Droid 签名验证漏洞:伪造签名者PoC

该项目是一个概念验证,演示了 F-Droid 中 APK 签名验证过程中的漏洞。攻击者可以利用该漏洞伪造签名,绕过 F-Droid 的证书固定机制,从而使恶意应用伪装成合法应用。该漏洞源于 F-Droid 在处理 APK 签名块中的证书时存在顺序和验证问题,攻击者可以利用这些问题插入伪造的证书信息,让 F-Droid 误认为其为合法签名。该研究者已公开该漏洞并提供修复建议,但 F-Droid 的修复方案存在缺陷,该项目持续更新了多个漏洞利用方法。

Rust反射:安全与访问规则的博弈

2025-01-03

Rust语言缺乏反射机制,但人们对其需求强烈。本文探讨了在Rust中实现反射时面临的安全挑战。由于Rust的内存安全机制,反射API必须遵守严格的访问规则,不能随意访问私有字段,否则可能导致内存安全漏洞。文章深入分析了这种限制对反射API设计的影响,例如,如何处理反射失败,以及如何表达复杂的反射边界。作者还探讨了安全与非安全反射API的权衡,以及如何平衡功能性和安全性。总而言之,在Rust中实现安全的反射机制是一个复杂且充满挑战的问题,需要仔细权衡各种因素。

开发 反射

SQLFlow:基于DuckDB的流式SQL处理引擎

2025-01-03
SQLFlow:基于DuckDB的流式SQL处理引擎

SQLFlow是一个基于DuckDB的流式数据处理引擎,允许用户使用SQL语句对来自Kafka、Webhook等来源的实时数据进行处理。它支持数据转换、数据丰富、数据聚合、滚动窗口聚合等多种功能,并能将处理后的数据输出到Kafka、数据库或本地文件等多种目标。SQLFlow具有高吞吐量,能够处理每秒数万条消息,并支持自定义序列化和编码方式。目前已支持Docker部署,方便快捷。

开发 流式处理

追赶潮流:Val Town 的 AI 代码助手进化之路

2025-01-03
追赶潮流:Val Town 的 AI 代码助手进化之路

Val Town 的代码助手 Townie 一路追赶 GitHub Copilot、ChatGPT、Claude 等巨头,从简单的代码补全到利用工具调用生成全栈应用,其进化历程充满挑战与机遇。文章回顾了 Townie 的发展历程,介绍了其在速度提升、错误自动检测、以及与其他工具的差异化竞争等方面的尝试与经验,并展望了未来集成更多先进功能的可能性。

开发

克服对极限编程的抵制

2025-01-03
克服对极限编程的抵制

本文探讨了团队在采用极限编程(XP)时遇到的阻力。作者指出,强迫改变只会适得其反,XP 的成功在于团队自主掌控工作方式。阻力源于开发者对 XP 的误解、管理层的激励机制以及工具本身。作者建议管理者赋予团队控制权,创造尝试新方法的空间,并通过分享经验、实践指导和问责制来帮助团队克服阻力,最终实现高效协作和工作乐趣。

开发 极限编程

TurboGist:告别代码分享的繁琐

2025-01-03

TurboGist 是一款简洁高效的代码共享平台,旨在解决开发者在团队协作中代码分享的痛点。它摒弃了繁琐的复制粘贴和第三方工具,支持实时代码共享、语法高亮、代码片段接收通知以及类似Copilot的代码补全功能。开发者无需离开编辑器即可快速分享代码,提高效率,专注于编码和解决问题。

开发

谷歌SRE的演变:从错误预算到系统理论

2025-01-03
谷歌SRE的演变:从错误预算到系统理论

谷歌的站点可靠性工程(SRE)团队在过去25年中经历了巨大的演变。最初依赖于服务等级目标(SLO)、错误预算和隔离策略等方法,但面对日益复杂的系统和新兴挑战,谷歌SRE团队转向了系统理论和控制理论,采用了STAMP框架。STAMP框架将重点从防止单个组件故障转移到理解和管理复杂的系统交互。通过一个真实的案例研究,文章阐述了STAMP如何帮助谷歌预防系统级故障,并探讨了其在整个科技行业中的未来应用。

开发 STAMP

Org-Supertag:赋能 Org-mode 的超级标签系统

2025-01-03
Org-Supertag:赋能 Org-mode 的超级标签系统

Org-Supertag 是一款 Emacs Org-mode 插件,它增强了 Org-mode 的标签功能,使其不仅能为节点添加属性,还能直接操作节点,实现更灵活的知识管理。它借鉴了 Tana 的理念,采用非侵入式设计,与 Org-mode 原有功能和谐共存。Org-Supertag 引入了“超级标签”的概念,定义节点的结构和行为,并支持字段和行为系统,实现节点属性的结构化和自动化操作。其查询系统支持跨节点、标签和字段的统一搜索,并提供多种结果导出方式。

开发 Org-mode

征服3200Gbps网络:RDMA、EFA和libfabric之旅

2025-01-03

作者在Perplexity AI使用AWS p5实例(配备8个NVIDIA H100 GPU和NVSwitch互联)时,成功利用RDMA、EFA和libfabric技术,实现了近乎完美的3200Gbps网络带宽利用率(97%)。文章详细记录了这一过程,并分享了宝贵的经验和技巧,包括优化策略(多线程、CPU核心绑定、状态分片等),为高性能网络编程提供了实践指南。文章还强调了异步通信模型的优势,并与传统的集体通信方法进行了对比。

热爱编程,但别让它成为你的神

2025-01-03
热爱编程,但别让它成为你的神

作者热爱编程,从8岁就开始,周末和晚上也经常编程。他认为,热爱自己的事业是件好事,但关键在于平衡。如果编程成为一种“崇拜”,占据你所有的时间和精力,忽略家人朋友和休息,就会适得其反。作者建议保持多种兴趣爱好,定期评估自己的状态,避免过度投入,并避免将自己的工作习惯强加于他人。

(tej.as)
1 2 193 194 195 197 199 200 201 213 214