用Three.js构建最糟糕的视频播放器:一场怀旧的像素游戏
本文讲述了作者使用Three.js和物理引擎构建一个极具创意的视频播放器的故事。该播放器并非传统的播放器,而是模拟街机游戏,需要玩家投币才能观看视频,每次投币只能获得三秒钟的播放时间。玩家需要用鼠标拖动虚拟硬币,精准地投进虚拟的投币口才能继续观看。这个充满怀旧气息和趣味性的设计,不仅挑战了传统视频播放器的设计理念,也展现了Web开发的无限可能性。
阅读更多
本文讲述了作者使用Three.js和物理引擎构建一个极具创意的视频播放器的故事。该播放器并非传统的播放器,而是模拟街机游戏,需要玩家投币才能观看视频,每次投币只能获得三秒钟的播放时间。玩家需要用鼠标拖动虚拟硬币,精准地投进虚拟的投币口才能继续观看。这个充满怀旧气息和趣味性的设计,不仅挑战了传统视频播放器的设计理念,也展现了Web开发的无限可能性。
阅读更多
BPO市场规模庞大,但传统BPO效率低下,且缺乏灵活性。如今,AI技术的进步为BPO行业带来了颠覆性变革。先进的AI模型,特别是大型语言模型和语音AI,能够高效处理BPO的各项任务,例如客户支持、数据处理和财务流程等。AI赋能的创业公司正抓住这一机遇,通过提供更高效、可扩展且具有成本效益的AI代理,帮助企业将客户体验和后台运营内部化。这不仅提升了效率,也为企业带来了新的增长空间。然而,传统BPO公司也在积极拥抱AI,一场创新与分销的较量正在上演。AI初创公司需要通过清晰的投资回报率、以客户为中心的策略和全栈式AI解决方案来保持竞争优势,才能在这个千亿美元市场中脱颖而出。
阅读更多
本文讲述了作者如何使用C++和CUDA从零开始构建一个LLM推理引擎,无需任何库。通过这个过程,作者深入学习了LLM推理的全栈知识,从CUDA内核到模型架构,并了解了各种优化如何影响推理速度。目标是创建一个程序,可以在单CPU+GPU服务器上加载常用开源模型的权重,进行单批推理,并迭代改进令牌吞吐量,最终超越llama.cpp。文章详细介绍了CPU和GPU上的优化步骤,包括多线程、权重量化、SIMD、内核融合以及KV缓存量化等,并分析了遇到的瓶颈和挑战。最终实现了接近最先进性能的本地LLM推理。
阅读更多
伊利诺伊州一位公民黑客Matt Chapman试图通过信息自由法案(FOIA)获取芝加哥市CANVAS数据库的模式信息,遭到拒绝。此案最终上诉至伊利诺伊州最高法院。法院裁定数据库模式属于信息自由法案豁免范围,引发了关于政府信息公开与数据库安全之间平衡的讨论。此事件凸显了在日益数字化时代,如何确保政府透明度和保护数据安全之间的挑战。
阅读更多
本文探讨如何构建经济高效的AI生产系统。作者借鉴Taco Bell的简化菜单策略,建议使用简单的、行业标准化的组件(如S3、Postgres、HTTP)构建复杂系统。文章重点关注降低云计算成本,特别是网络数据出站费用。通过使用无出站费用的对象存储(如Tigris)和按需创建/销毁计算实例,根据使用情况动态调整资源,从而最大限度地降低成本。作者还强调了选择依赖项的重要性,避免厂商锁定,并提供了基于HTTP请求、DNS查找、Postgres或对象存储以及Kubernetes的架构示例,实现了计算资源的跨平台迁移。
阅读更多
微软宣布将为部分Windows 10用户提供免费的安全更新,但条件是必须使用微软账户并通过Windows备份或微软奖励计划注册。这被解读为微软推动用户迁移至Windows 11的策略,尽管注册后即使注销账户或停止使用Windows备份,更新也能继续接收。看似免费的更新,实则暗藏微软账户绑定策略,进一步加强其生态系统控制。
阅读更多
本文档详细介绍了如何使用Docker Compose在一个服务器上部署生产就绪的Moose应用程序。它涵盖了从安装必要软件,配置Docker日志大小限制和非root访问,到设置GitHub Actions Runner(可选)和一个示例Foo Bar Moose应用程序的完整流程。文章还深入讲解了如何安全配置Clickhouse和Redpanda(可选),以及如何分阶段部署Temporal(可选)。最后,它还阐述了如何设置systemd服务以实现Docker Compose的自动启动,以及自动化和手动部署工作流程。
阅读更多
本文探讨了在C++中优化整数除法运算的几种方法。直接使用整数除法效率较低,尤其当除数在编译时已知时。文章首先介绍了使用C++模板函数的方法,通过在编译时确定除数,让编译器进行优化。然而,模板函数会增加代码复杂度。随后,文章尝试使用lambda表达式和模板lambda表达式来简化代码,但发现直接使用模板lambda表达式会遇到问题,需要使用`operator()`来调用。最后,文章比较了多种方法的优缺点,包括使用简单的lambda表达式、以及更高级的模板元编程技术,并建议根据实际情况选择最合适的方法。
阅读更多
1951年,CIA分析师Sherman Kent发现情报报告中“严重的可能性”一词的解读存在巨大差异,引发了对情报沟通中语言模糊性的深刻反思。他将情报评估分为三种类型,并指出大部分工作都处于充满不确定性的第二和第三类。不同专业人士对概率词语的理解差异巨大,甚至在法庭等领域也存在类似问题。为避免责任或模糊判断,人们倾向于使用模棱两可的语言。文章最后指出,标准化概率语言至关重要,因为在充满不确定性的世界里,误解比错误本身更危险。
阅读更多
《冰与火之歌》作者乔治·R·R·马丁与洛斯阿拉莫斯国家实验室物理学家合作,发表了一篇关于其虚构作品《王牌》系列中病毒的物理论文。该论文建立了一个数学模型来描述这个改变人类DNA的病毒如何产生“王牌”(超级英雄)和“小丑”(能力缺陷者)。虽然模型并非完美,但它为物理学教学提供了一个独特的案例研究,展示了如何将看似不可能的问题转化为可分析的动态系统。
阅读更多
一项历时70年的研究追踪了235名男性的情感支持网络变化。结果显示,从30岁到90岁,男性情感支持网络平均减少一半,从两人降至一人。研究发现,温暖的家庭环境与成年后较大的情感支持网络相关,而童年社会经济地位的影响较小。婚姻会缩小支持网络规模,但退休不会。这项研究强调了早期家庭环境对成年后社会情感发展的影响,但样本局限性也需注意。
阅读更多
本文作者探索了Ruby 3.4.2中Ractors的真实并发能力,并意外发现YJIT带来的惊人性能提升。通过对斐波那契数列和Tarai函数的基准测试,作者发现Ractors在macOS原生环境下能有效利用多核,但Docker环境下性能表现不佳。然而,启用YJIT后,无论是在macOS还是Docker环境下,性能都得到了显著提升,甚至超过了预期。作者总结Ractors尚不成熟,但YJIT已达到生产可用状态,并带来巨大的性能提升。
阅读更多
香港当局以危害国家安全为由,禁止下载台湾游戏《反转前线:篝火》,这是香港首次动用国安法禁手游。该游戏允许玩家扮演香港、台湾等地的反抗者对抗中国共产党,被指控煽动武装革命和分裂。游戏已从香港App Store下架,开发者ESC台湾则表示,此举证明中国大陆对应用程序的审查制度。
阅读更多
一百年前,Edgware地铁站的开通标志着伦敦地铁北部线向北延伸的完成。这不仅改善了交通,更引发了郊区房地产的繁荣。众多建筑拔地而起,从现代主义风格的住宅到传统的酒吧,展现了20世纪初期伦敦郊区建设的独特面貌。Edgware从农业小镇转型为现代化城镇的历程,也反映了交通发展对城市规划和社会变迁的影响。
阅读更多
Sci-Net是一个新的平台,旨在解决Sci-Hub数据库更新暂停后,一些论文无法通过Sci-Hub访问的问题。用户可以通过DOI请求论文,如果论文不在Sci-Hub或开放获取,则可以上传。平台使用Sci-Hub meme币奖励上传者,但注册需要1000个代币。虽然这引发了类似付费墙的争议,但与出版商的付费墙相比,Sci-Net的费用象征性,且奖励直接支付给研究人员,而非平台。上传的论文永久免费,为公共领域贡献力量,并间接支持Sci-Hub的维护和发展。
阅读更多
一个名为“时间流逝”的MCP服务器项目旨在解决大型语言模型(LLM)无法可靠计算时间差的问题。该项目通过人机协作开发了一套时间计算工具,赋予LLM对时间的感知和计算能力,并意外地发现LLM可以利用这些工具洞察对话模式、工作节奏和人类对时间的体验。该服务器提供多种时间计算功能,包括计算时间差、提供时间上下文信息、转换时间戳格式等,并支持多种时区。
阅读更多
W54核弹,又称Mark 54或B54,是冷战时期美国研发的最小核武器,重量和当量都极小。它有多种型号,当量从10吨到1000吨TNT不等,被用于AIM-26猎鹰空空导弹、戴维·克罗克特无后座力炮和特殊原子爆破弹药(SADM)系统。W54的设计始于20世纪50年代末,其小型化设计使其成为战场上一种极具威慑力的武器,但其复杂的研发过程也充满了挑战,包括环境感应装置的研发难题。后期改进型W72被用于AGM-62鱼眼制导炸弹,服役至1979年。
阅读更多
这篇博客文章回顾了作者三个月使用Kagi搜索引擎和Orion浏览器的体验。Kagi是一个付费订阅的搜索引擎,每月10美元提供无广告、注重隐私的优质搜索结果。作者发现Kagi的搜索结果质量很高,并赞扬了其简洁的用户界面和一些独特的功能,例如自定义排名和“镜头”功能。Orion浏览器则是一个基于WebKit的浏览器,支持Chrome和Firefox的扩展程序,并默认内置广告拦截功能。作者认为Kagi的10美元月费略高,但无限搜索方案更值得推荐,并建议读者尝试其100次免费搜索。文章也探讨了Kagi与Brave Search的合作以及在处理道德困境方面的立场。
阅读更多
一项YouGov调查揭示了英国人的阅读习惯。结果显示,英国成年人阅读量普遍不高,近40%的人一年一本也没读;女性和老年人的阅读量高于男性和年轻人;中产阶级的阅读率也高于工薪阶级。大多数英国人选择在睡前或休闲时间阅读,更偏爱小说,阅读方式以实体书为主,但电子书和有声书的使用率也在增长。虽然许多人拥有大量的书籍,但只有少数人会对书籍进行整理分类。
阅读更多
地震预警系统的一个最大挑战在于实时估计地震震级。震级决定了震动波及范围和预警人群。低估震级可能导致漏报,高估则可能引发公众对预警系统的信任危机。如何在速度和精度之间取得平衡是关键。初期数据有限,但延迟预警会减少预警时间。过去三年,我们持续改进震级估算,中位绝对误差已从0.50下降至0.25,精度与传统地震网络相当,甚至部分超越。
阅读更多
本文介绍了一种基于图神经网络的时间序列预测方法,它利用图结构数据(例如关系数据库)中节点之间的关联信息来提高预测精度。与传统的只关注单个时间序列的方法不同,该方法将各个时间序列视为图中的节点,并利用图转换器等技术来捕捉节点间的关联性,从而更准确地预测未来趋势。文章还比较了回归预测和生成式预测两种方法,并通过实验结果展示了生成式预测方法在捕捉高频细节和处理异常事件方面的优势。
阅读更多
Ohm是一个强大的解析工具包,包含一个库和一种领域特定语言。它可以用于解析自定义文件格式,或快速构建编程语言的解析器、解释器和编译器。Ohm语言基于解析表达式语法(PEG),这是一种描述语法的形式化方法,类似于正则表达式和上下文无关文法。Ohm库提供了一个JavaScript接口,用于根据你编写的语法创建解析器、解释器等等。
阅读更多
Immich团队在开发过程中遭遇了一系列令人头疼的“诅咒级”问题:从Zitadel脚本引擎不支持命名捕获组,到EXIF图像元数据尺寸与实际尺寸不符;从YAML空格的非直观处理,到Windows隐藏文件的访问限制;从Bash脚本中的回车符问题,到Cloudflare Workers中Fetch请求的HTTP默认协议;从移动设备GPS数据被静默删除,到PostgreSQL NOTIFY的交易机制导致性能问题;从npm脚本的低效健康检查,到JavaScript日期对象的索引混乱;再到bcrypt密码长度限制、Node.js的兼容性问题、PostgreSQL参数数量限制以及TypeORM删除操作的副作用等等。这些问题充分体现了软件开发中隐藏的陷阱与挑战,也为开发者们提供了宝贵的经验教训。
阅读更多
面对美国可能实施的禁令,TikTok采取了应对措施。尽管总统特朗普的行政命令暂时叫停了禁令,但TikTok鼓励安卓用户直接从其官网下载APK文件安装应用,绕过Google Play Store。此举允许TikTok暂时规避应用商店禁令,但iOS用户目前尚无类似选项。
阅读更多
一项新的研究利用卫星追踪技术,揭开了海龟“迷失的岁月”之谜。科学家们通过在幼龟身上安装GPS标签,追踪了它们在墨西哥湾的活动轨迹。结果发现,幼龟并非像之前认为的那样被动地随洋流漂流,而是能够自主游泳,并根据自身需要选择活动区域,在大陆架水域和公海之间移动。这项发现不仅填补了海龟生命周期中长期存在的知识空白,也为保护这些濒危物种提供了重要依据。
阅读更多
Maxima是一个功能强大的电脑代数系统,其浏览器前端由Marius Gerbershagen使用嵌入式通用Lisp、emscripten、gnuplot和MathJax构建而成。源码已公开。
阅读更多
缅因大学气候变化研究所的Climate Reanalyzer网站提供基于ECMWF ERA5再分析数据的每日全球气温可视化工具。该网站提供交互式图表和地图,展示从1940年至今的每日平均地表气温,并允许用户选择不同的区域进行分析。数据更新存在6-7天的延迟,用户需谨慎对待ERA5估计的极端气温值。网站还提供了其他气候数据,例如海面温度和海冰范围。
阅读更多
作者参与了 2024 年的 Advent of Code 挑战,并选择学习 BQN 数组语言。文章详细记录了学习过程,包括环境搭建、文档和工具的使用体验,以及对 BQN 语言特性的介绍,例如其独特的运算符、数组操作和函数定义方式。作者还分享了几个 Advent of Code 题目解法,展示了 BQN 在处理数组和网格问题上的优势,并对比了 BQN 与命令式语言的差异。虽然初期学习曲线陡峭,但作者最终认为 BQN 是一种有趣且强大的语言,特别适合解决编程谜题。
阅读更多
马萨诸塞州牛顿公立学校在2021年秋季尝试了一种名为“多层次课堂”的教学模式,旨在提高教育公平性。该模式将不同学习水平的学生混合在一个班级,由一位老师授课。然而,三年后的结果令人担忧。教师们反映,这种模式无法满足不同学生的需求,高水平学生因顾及低水平学生而无法充分发挥,低水平学生则因害怕显得笨拙而不敢提问。教师们缺乏足够的培训和支持,导致教学效果不佳,学生成绩甚至不如单一水平班级。学校缺乏评估机制,没有数据支持该模式的有效性。最终,教师委员会提交请愿书,要求取消STEM和世界语言课程中的多层次课堂,并呼吁学校寻找更有效的解决教育公平问题的方案。该实验的失败凸显了在教育改革中,应以数据为依据,切实关注学生需求的重要性。
阅读更多
作者从自身经历出发,讲述了学习Vim文本编辑器的心路历程。最初,作者的打字速度并不快,但通过学习Vim,他摆脱了鼠标依赖,极大提升了编程效率。文章详细阐述了Vim的模态编辑方式、高效的键盘操作以及其在命令行中的应用。虽然学习曲线陡峭,但作者认为Vim带来的效率提升是值得的,并分享了他使用IdeaVim和Helix等编辑器的经验。最终,作者强调了Vim对文本编辑领域的重要贡献,以及其思想对程序员的影响。
阅读更多