游戏暗黑模式是指故意添加到游戏中,给玩家带来不良体验,但对游戏开发者有利的设计。DarkPattern.Games是一个全新的网站。我们从iOS和Android游戏开始,因为这些平台上的暗黑模式最多,但很快会增加其他平台。由于我们是新网站,很多游戏还没有评论。随着时间的推移会改进,我们正在努力获取游戏评论。请帮助我们,找到你熟悉的游戏并提交评论。
游戏暗黑模式是指故意添加到游戏中,给玩家带来不良体验,但对游戏开发者有利的设计。DarkPattern.Games是一个全新的网站。我们从iOS和Android游戏开始,因为这些平台上的暗黑模式最多,但很快会增加其他平台。由于我们是新网站,很多游戏还没有评论。随着时间的推移会改进,我们正在努力获取游戏评论。请帮助我们,找到你熟悉的游戏并提交评论。
## 莱布尼茨记法:总结 Slava Akhmechet 的文章剖析了经常令人困惑的导数莱布尼茨记法(如 *dy/dx*)。莱布尼茨最初在对极限的现代理解出现之前就构思了导数,将其视为“无穷小”变化的比例——*df/dx* 代表 *f* 相对于 *x* 的微小变化。 虽然历史上植根于这个概念,但现代数学将 *df/dx* 视为表示导数 *f’* 的单个符号,而不是可以简化的分数。这导致了“不确定性”——为了方便起见,尤其是在科学和工程领域,对记法采取的自由处理。 这些自由处理包括省略求值符号(如 |<sub>x=a</sub>),省略括号,以及将 *df/dx* 视为适用代数规则,尽管它是一个单一的实体。例如,二阶导数变为 *d²f/dx²*,尽管这不是真正的平方运算。 文章强调了在应用领域,通常跳过显式定义函数,从而产生诸如 *dA/dt = (dA/dr) * (dr/dt)* 之类的表达式,其中变量被隐式地理解为时间的函数。虽然从纯粹的数学角度来看似乎不正确,但这种简写通过解决问题实践变得自然。
## 重新思考代理工具:简单更优
许多人正在试验用于AI代理的“MCP”(多工具代码配置)服务器,但更简单的方法——利用现有的编码能力和基本的工具,如Bash——可能更有效。作者认为,流行的MCP服务器常常用不必要的工具充斥上下文窗口,并且难以实现可组合性(组合结果)。
相反,他们展示了一个使用仅仅四个简单的Node.js脚本(启动浏览器、导航、评估JavaScript、截图)的极简浏览器自动化设置,由Puppeteer Core提供支持。这个设置的README总共只有225个token,允许代理有效地执行诸如网页抓取和前端开发之类的任务。
关键优势是效率(节省宝贵的上下文空间)、可组合性(易于链式操作和保存输出)以及灵活性(快速创建和修改工具)。添加一个新工具,比如元素选择器,既快速又简单。这种方法类似于Anthropic的“技能”,但提供了更大的临时定制性和代理兼容性。
最终,作者提倡拥抱代码和Bash,认为这可以增强代理的能力,并避免复杂MCP系统的僵化,同时仍然提供强大的功能。他们将他们的设置分享在GitHub上,以鼓励其他人探索这种替代方案。
## Coinbase 数据泄露:一位客户的账户 2025年1月,一位Coinbase客户收到了一次高度复杂的网络钓鱼尝试,一名来电者令人信服地冒充Coinbase反欺诈部门,并掌握了详细的个人和账户信息——包括他精确的比特币余额。这立即引起了警觉,因为这些数据本应无法被骗子访问。 尽管向Coinbase报告了该事件,并提供了全面的技术细节,包括可疑邮件路由的证据,但该客户未收到关于攻击者如何获取其数据的后续问题回复。四个月后,Coinbase披露了一次泄露事件:客户数据是通过贿赂TaskUs的海外客服承包商而被盗取的。 泄露的数据包括姓名、地址、社会安全号码数字、身份证、余额和交易记录,影响了估计1%的用户,造成了1.8亿至4亿美元的财务影响。然而,该客户一月份的经历表明,泄露事件在Coinbase五月份的披露*之前*就已经发生,并且早期来自用户的警告被忽略了。 这起事件凸显了中心化加密货币托管的风险、强大安全措施的重要性以及交易所对事件透明响应的需求。该客户强调了独立验证信息、使用强大的双因素身份验证以及保持警惕以应对日益复杂的诈骗的重要性。
## KMS & libdrm-ocaml: 摘要
本文详细介绍了 `libdrm-ocaml` 的创建,这是一个 OCaml 库,旨在简化与 Linux 内核模式设置 (KMS) API 的交互。KMS 允许应用程序直接控制显示硬件,被 Wayland 等合成器使用。作者发现原生的 C API 冗长且具有挑战性,因此开发了 `libdrm-ocaml`,它提供了一个交互式 REPL,用于探索和配置显示设置。
文章指导读者发现可用的硬件,查询其当前配置(设备、资源,如 CRTC、连接器、编码器),并最终渲染图形。它演示了设置显示以显示简单的位图,甚至 3D 动画。
重点功能包括查询设备信息、列出可用资源、理解连接器、编码器和 CRTC 之间的关系,以及使用帧缓冲区和平面。作者将较旧的非原子模式设置 API 与更新、更强大的原子 API 进行了对比。
该库旨在通过提供更简洁、类型安全的 OCaml 接口,利用 `ocaml-ctypes` 和 `dune` 等工具进行 C 绑定和构建自动化,使 KMS 更易于访问。还包括调试技巧,例如启用 KMS 调试消息。该项目可在 GitHub 上进行实验。
## 超级Cookie:一种新型追踪方法
“超级Cookie”是一种利用浏览器书签图标缓存——“F-Cache”——来唯一识别网站访问者的追踪技术。与传统Cookie不同,这种方法具有惊人的持久性,可以存活于隐身模式、缓存清除、浏览器重启、VPN和广告拦截器中。
该技术通过观察浏览器*请求*哪些书签图标以及哪些已经存储在其F-Cache中来工作。通过分析跨多个页面加载的这种模式,可以为每个浏览器分配一个唯一的标识符。这是因为书签图标被本地缓存并持久保存,以加快页面加载速度。
该项目通过一个在线演示和提供的源代码来展示这种漏洞,旨在突出潜在的隐蔽追踪可能性。虽然在主流浏览器(Chrome、Firefox、Safari、Edge)和平台上都有效,但攻击的可扩展性取决于使用的书签图标重定向数量。
目前的缓解措施包括手动清除F-Cache(提供了Chrome、Safari和Edge的说明),因为浏览器缺乏针对此漏洞的内置保护。该技术的创建者是一位学生研究员,他开发此项目是为了探索网络追踪的可能性。
Zigbook学习章节:Zig 并非仅仅是为你的简历增添一项语言。它关乎根本性地改变你思考软件的方式。“你来是为了语法,最终会带着一种哲学离开。”61个章节 • 基于项目 • 零AI • 由 @zigbookzsh 编写 — zigbook.net欢迎来到Zigbook 🦎准备好改变你思考软件的方式了吗?执行:zig build zigbookzigbook %$ 交互式终端 • 输入开始使用
## 停止讽刺:被动攻击性链接如何损害在线社区 “不要问如何问”或“让我谷歌一下”之类的链接经常在在线论坛中被用来回应被认为是不好的问题。虽然本意是鼓励自助和提出更好的问题,但这些链接几乎总是显得不屑一顾、令人羞愧且无益。 它们会扼杀对话,滋生怨恨,并营造出敌对的环境——特别是对于新手而言。尽管看似高效,发布这些链接往往比提供简短、直接的指导*更*费力。 文章提倡友善和建设性的沟通,而不是依赖这些被动攻击性的捷径。提供直接、礼貌的反馈,解释*为什么*提出清晰的问题有帮助,或者温和地建议搜索词。引用社区准则是可以的,但应该以友好的语气进行。 最终,通过友善和真诚的帮助培养协作精神,可以建立一个更强大、更有支持力的在线社区。
启用 JavaScript 和 Cookie 以继续。
## Cloudflare Zero Trust 与 Warp:摘要
作者对 Tailscale 的局限性感到沮丧,转而研究 Cloudflare Zero Trust + Warp,并现在推荐其强大的功能。这种设置允许安全连接到私有网络——家庭网络、Kubernetes 集群等——并在无需直接 NAT/防火墙问题的情况下公开私有服务。
**主要优势包括:**连接私有网络、安全地暴露服务、创建仅通过 Warp 可访问的私有网络、细粒度的访问控制(用户身份验证、服务令牌)以及简化的 SSH 访问。
**工作原理:**Cloudflare 使用 **Tunnel**(使用 `cloudflared` 创建)作为入口点,**Route** 用于引导流量,**Target** 用于定义受保护的资源。流量通常*通过* Cloudflare 的网络流动(与 Tailscale 的点对点方法不同),这会增加延迟,但消除了 NAT 的麻烦。
**Cloudflared 与 Warp:** `cloudflared` 创建隧道,而 Warp 客户端将用户连接到网络并强制执行策略。
**访问策略** 控制*谁*可以访问*什么*,允许使用身份验证进行公共访问,或绕过登录以供 Warp 连接的用户使用。这提供了一种灵活且安全的方式来管理网络访问,为传统的 VPN 提供了一个强大的替代方案。
这是一个复杂的系统,但作者强调了它在创建安全、可访问和完全可定制的网络环境方面的强大功能。