2026-05-11 20:19:00
Hi all,
We’re back for another issue. I’m still trying my time to make this news letter become a weekly again :(.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
Spring Spotlight 2026 is live and we’ve rounded up the top updates for developers here. Featuring:
• AI-Assisted Development: Developer MCP Server lets you build apps faster with AI coding tools like Cursor, Claude Code, and Codex.
• Modern API Infrastructure: Date-based versioned APIs and versioned docs for predictable releases.
• MCP: Unlock HubSpot data via the HubSpot MCP Server (remote) to connect any compatible MCP client and create custom workflows and integrations.
• Projects 2026.03: Includes serverless functions, UI extension support, and migration from 2025.1 and 2023.2.
decode and understand all the thing behind these cryptic number.
In the United States, the National Institute of Standards and Technology (NIST) maintains the official U.S. time reference. On a recent project I needed a trustworthy clock and time.gov was a convenient option. To validate that the provided reference was accurate, I opened time.gov in two browser windows side-by-side, but found that the provided clock offset estimates disagreed by a margin larger than I could tolerate. When I compared to another source, an NTP client, I found even more disagreement.
In famous problem. 0.1 + 0.2 is equal 0.30000000000000004. Best way to to understand is to re-implement them from the first principle, the hard way.
From page faults to NUMA topology: how the Linux kernel manages memory, and what that means for the performance of data-intensive systems
Ever wondered how regex works under the hood? How does it understand an incantation like “<\/?[\w\s]*>|<.+[\W]>” and magically produces a desired result? This series is going to describe exactly how it works and how to implement a feature-rich regex engine.
that MacOS Tahoe can generate and use secure-enclave backed SSH keys! This replaces projects like secretive
Most programmers dream of their own perfect programming language.
Without vacuum, deadtuple (dead row) are accumulate in Postgres, the engine needs to scan them and exclude them, vacuum suppose to delete them. Here are many tip and tricks to monitor that process
Figma outgrow pgbouncer and share experience writing their own Postgres connection pooling.
cheatsheet covers several npm security best practices and productivity tips, useful for JavaScript and Node.js developers. This list was originally based on the 10 npm security best practices from the Snyk blog.
a book written for engineers who need Git to stay fast as repositories, histories, and teams get larger: build and CI engineers, monorepo owners, devprod teams, and anyone tasked with figuring out Git beyond the usual four commands.
MacOS Web Server written entirely in ARM64 assembly
SQLite extension + bindings for Postgres NOTIFY/LISTEN semantics with durable queues, streams, pub/sub, and scheduler
A simple command line SSH tunnel manager that just works.
Prioritized semaphore/rate-limiter/adaptive throttle for load management.
A high-performance HTTP benchmarking tool that includes a real-time web UI and terminal display
A PostgreSQL extension that can enforce optimal column alignment to minimize row padding waste.
Cloud-native continuous backup for PostgreSQL - WAL/base-backup streaming, compression, encryption, retention, and monitoring in a single binary.
a pure SQL / PL/pgSQL control plane for conservative autonomous reindexing, in the same extension-avoidance spirit as pg_ash and PgQue. It installs into a separate control database, talks to target databases through postgres_fdw user mappings and dblink, and rebuilds only with reindex index concurrently. No schema is installed into target databases. No C extension, no shared_preload_libraries, no sidecar worker, no restart.
HyperFrames lets AI agents compose videos by writing HTML, CSS & JS.
Have u ever has to write some cronjob to refresh materialized view? this tool handle all of that, natively inside Postgres
Create real MP4 videos with React. Parametrize content, render server-side and build applications.
aggregates CloudTrail logs to simplify analysis for AI agents
A terminal workbench for AI-driven vulnerability discovery and live validation.
大家好,
我们又回来了,这是另一期。我仍在努力让这份周刊恢复每周一期 :(
如果你喜欢 BetterDev,请把它分享给你的朋友,让更多人知道。如果你愿意支持我的工作,请我喝杯咖啡将不胜感激。
Spring Spotlight 2026 已上线,我们在此汇总了面向开发者的重要更新。
• AI 辅助开发:开发者 MCP 服务器让你可以使用 Cursor、Claude Code 和 Codex 等 AI 编码工具更快地构建应用。
• 现代 API 基础设施:基于日期的版本化 API 和版本化文档,确保可预测的发布周期。
• MCP:通过 HubSpot MCP 服务器(远程)解锁 HubSpot 数据,连接任何兼容的 MCP 客户端,创建自定义工作流程和集成。
• Projects 2026.03:包含无服务器函数、UI 扩展支持,以及从 2025.1 和 2023.2 的迁移。
解码并理解这些神秘数字背后的所有内容。
在美国,国家标准与技术研究院(NIST)维护着美国官方时间参考。在一个最近的项目中,我需要一个可靠的时钟,time.gov 是一个便捷的选择。为了验证提供的参考是否准确,我在两个浏览器窗口中同时打开了 time.gov,但发现提供的时钟偏移估计值之间的差异超出了我可接受的范围。当我与其他来源进行比较时,一个 NTP 客户端,我发现了更大的分歧。
一个著名的问题。0.1 + 0.2 等于 0.30000000000000004。最好的理解方式是从头开始重新实现它们,用最困难的方式。
从页错误到 NUMA 拓扑:Linux 内核如何管理内存,以及这对数据密集型系统性能意味着什么
有没有想过正则表达式底层是如何工作的?它如何理解像 "<\/?[\w\s]*>|<.+[\W]>" 这样的咒语并神奇地产生期望的结果?本系列将精确描述它的工作原理以及如何实现一个功能丰富的正则引擎。
MacOS Tahoe 可以生成和使用 Secure Enclave 支持的 SSH 密钥!这取代了像 secretive 这样的项目
大多数程序员都梦想拥有自己的完美编程语言。
没有 vacuum,deadtuple(死元组)会在 Postgres 中积累,引擎需要扫描它们并排除它们,vacuum 负责删除它们。以下是监控该过程的许多技巧和诀窍
Figma 超越了 pgbouncer,分享了编写自己的 Postgres 连接池的经验。
速查表涵盖了一些 npm 安全最佳实践和生产率技巧,对 JavaScript 和 Node.js 开发者很有用。这个列表最初基于 Snyk 博客的 10 个 npm 安全最佳实践。
一本为需要 Git 保持快速运转的工程师编写的书,因为仓库、历史和团队都在变大:构建和 CI 工程师、单体仓库所有者、devprod 团队,以及任何需要了解超出常规四个命令之外的 Git 的人。
完全用 ARM64 汇编编写的 MacOS Web 服务器
SQLite 扩展 + 绑定,为 Postgres 提供 NOTIFY/LISTEN 语义,支持持久化队列、流、发布/订阅和调度器
一个简单的命令行 SSH 隧道管理器,简单实用。
用于负载管理的优先级信号量/限流器/自适应节流阀。
高性能 HTTP 基准测试工具,包含实时 Web UI 和终端显示
一个 PostgreSQL 扩展,可以强制最优列对齐以最小化行填充浪费。
云原生 PostgreSQL 持续备份 - WAL/基础备份流、压缩、加密、保留和监控,全部整合在一个二进制文件中。
一个纯 SQL / PL/pgSQL 控制平面,用于保守式自主重建索引,遵循与 pg_ash 和 PgQue 相同的避免扩展理念。它安装到一个单独的控制数据库,通过 postgres_fdw 用户映射和 dblink 与目标数据库通信,只使用 reindex index concurrently 重建。不会在目标数据库中安装任何模式。不需要 C 扩展、不需要 shared_preload_libraries、不需要 sidecar worker、不需要重启。
HyperFrames 让 AI 智能体可以通过编写 HTML、CSS 和 JS 来合成视频。
你曾经需要写一些 cronjob 来刷新物化视图吗?这个工具在 Postgres 内部原生处理所有这些。
用 React 创建真正的 MP4 视频。参数化内容、服务端渲染并构建应用程序。
聚合 CloudTrail 日志以简化 AI 智能体的分析
用于 AI 驱动漏洞发现和实时验证的终端工作台。
2026-03-30 20:19:00
Hi all,
Trivy is a security scanner to find vulnerabilities, misconfigurations, secrets and very widely used. Imagine, Trivy got under attack itself. Attackers compromised Trivy GitHub Actions by force-updating tags to deliver malware, exposing CI/CD secrets across affected pipelines.
Then last week, two versions of the litellm Python package on PyPI were found to contain malicious code.
All of that just mean we need to be extra triple careful when dealing with any external dependenies. Any external dep is a liability. In this issue we had included 2 tools that hopefully will allow us to run those app in sandbox instead.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
Let’s be honest: your test suite is probably lying to you. You’ve got green checkmarks in CI, 80% coverage, and your last deploy still broke the checkout flow on mobile.
The problem isn’t that you’re bad at testing. It’s that test maintenance is a full-time job nobody wants, and the coverage you think you have is mostly happy paths you already tested manually. Meanwhile, your users are the ones discovering the real bugs.
Autonoma takes a different approach. Instead of making you write and maintain test scripts, it runs AI agents that navigate your web and mobile apps like real users: clicking through forms, testing edge cases, handling state transitions, all in parallel across hundreds of browsers and devices.
The best thing? If after 30 days a bug reaches production, we will refund you the money.
An incredible story of someone dived into electronics design with almost zero prior experience. Their goal was ambitious: build an FPGA-based device capable of booting Linux, connecting to a screen and keyboard, and allowing me to write and compile code directly on the machine itself.
Most people who work with PostgreSQL eventually learn two commands for query tuning: EXPLAIN and EXPLAIN ANALYZE. In this post we’ll take a look at a few of those lesser-known options.
When you run PostgreSQL on a high-performance server with a lot of RAM, one of the most overlooked performance tunings is Huge Pages. Understanding and configuring Huge Pages correctly can significantly improve performance, especially for databases with large shared memory requirements.
Anyone who operate Postgres with high write will need to handle and optimize WAL and AutoVacuum. We can defer these job to AI, but it’s better to understand all the knowledge.
Whatever the reason, if you’re a psql command-line user, Ctrl-C is in your muscle memory. So now you’re looking at the words Cancel request sent, followed shortly after by the not-really-an-error message ERROR: cancelling statement due to user request. But what’s going on behind the scenes?
In 2024, the Online Data Stores team at Netflix conducted a comprehensive review of the relational database technologies used across the company, and decide to standardize on Amazon Aurora PostgreSQL as the primary relational database offering for Netflix teams.
Switching from Rust to TypeScript make the code faster. Not because Rust is slow, or TypeScript is fast. But simply the code to serialize/unserialize the object back and forth when passing between both world outweight the performance gain.
Developers have never been shy about disliking certain React APIs. They feel awkward, restrictive, or just plain counterintuitive. But the reality is that the two most complained‑about design choices in React weren’t arbitrary at all — they were early signs of deeper constraints that every UI model eventually runs into
Imagine the ability to inject the JS code, and run it on any webpage whenever you click a bookmark, and it acts on the urrent page? That’s what Bookmarklet is
A difference algorithm module for Go
Get the main content of any page as Markdown.
drop-in replacement for Nokogiri. It’s 4.7x faster at parsing HTML and up to 1352x faster at CSS selectors.
Sandbox your local AI agents so they can read/write only what they need
Running Node apps inside a WebAssembly Sandbox
Pure-Go implementation of JSONata 2.x for high-throughput streaming evaluation. And the story of re-impelment it in Go with AI saves the compnay $500k USD per year
Pluggable linting tool to prevent committing credential.
A Postgres TUI client that utilizes your terminal text editor for inserts & updates
SQL static analyzer for performance, security, compliance and cost. 272 rules. Completely offline. Works in CI pipelines.
A PostgreSQL extension that captures per-query execution telemetry and exports it to ClickHouse in real-time. Unlike pg_stat_statements which aggregates statistics in PostgreSQL, pg_stat_ch exports raw events to ClickHouse where aggregation happens via ClickHouse’s powerful analytical engine.
Go LSP helper library support 3.17 of the LSP specification
大家好,
Trivy 是一款用于发现漏洞、配置错误和敏感信息的安 全扫描器,被广泛使用。然而,想象一下,Trivy 本身遭到了攻击。攻击者通过强制更新标签来入侵 Trivy 的 GitHub Actions,以投放恶意软件,暴露了受影响 CI/CD 流水线中的敏感信息。
Then last week, two versions of the litellm Python package on PyPI were found to contain malicious code.
所有这些都意味着我们在处理任何外部依赖时需要格外、格外小心。任何外部依赖都是一种风险。在本期内容中,我们收录了 2 个工具,希望能让我们在沙箱中运行这些应用。
如果你喜欢 BetterDev,请通过分享给朋友来传播它。如果你愿意支持我的工作,请我喝杯咖啡将不胜感激。
实话实说:你的测试套件可能在骗你。你的 CI 上有绿色的勾,80% 的覆盖率,但你上次部署还是在移动端搞坏了结账流程。
问题不在于你不会测试,而在于测试维护是一项没人想做的全职工作,而你以为拥有的覆盖率大多数只是你已经手动测试过的 happy path。与此同时,你的用户才是发现真正 bug 的人。
Autonoma 采取了不同的方法。它不是让你编写和维护测试脚本,而是运行 AI 代理,像真实用户一样导航你的 Web 和移动应用:点击表单、测试边界情况、处理状态转换,全部并行运行在数百个浏览器和设备上。
最棒的是什么?如果 30 天后仍有 bug 进入生产环境,我们会退款给你。
一个难以置信的故事,讲述了一个几乎没有先验经验的人深入电子设计领域。他们的目标雄心勃勃:构建一个基于 FPGA 的设备,能够启动 Linux、连接屏幕和键盘,并允许我直接在机器上编写和编译代码。
大多数使用 PostgreSQL 的人最终会学习两个用于查询调优的命令:EXPLAIN 和 EXPLAIN ANALYZE。在这篇文章中,我们将了解一些鲜为人知的选项。
当你在具有大量 RAM 的高性能服务器上运行 PostgreSQL 时,最容易被忽视的性能调优之一就是大页(Huge Pages)。正确理解和配置大页可以显著提升性能,尤其是对于有大量共享内存需求的数据库。
任何在高写入环境下运行 Postgres 的人都需要处理和优化 WAL 和 AutoVacuum。我们可以把这些工作交给 AI,但最好还是理解所有的知识。
不管出于什么原因,如果你是一个 psql 命令行用户,Ctrl-C 已经成为了你的肌肉记忆。所以现在你看到的是 "Cancel request sent" 这几个字,随后很快就会出现一个其实不算真正错误的提示:ERROR: cancelling statement due to user request。但幕后究竟发生了什么?
2024 年,Netflix 的在线数据存储团队对公司使用的关系型数据库技术进行了全面审查,并决定将 Amazon Aurora PostgreSQL 作为 Netflix 团队的主要关系型数据库产品进行标准化。
从 Rust 切换到 TypeScript 让代码变得更快。这不是因为 Rust 慢,也不是因为 TypeScript 快。而是因为在两个世界之间来回序列化/反序列化对象所涉及的代码量超过了获得的性能提升。
开发者从来不羞于表达对某些 React API 的厌恶。它们让人感觉别扭、受限,或者就是违背直觉。但现实是,React 中两个被抱怨最多的设计选择并非任意为之——它们是每个 UI 模型最终都会遇到的更深层约束的早期信号。
想象一下,能够注入 JS 代码,并在每次点击书签时在任意网页上运行它,而且它会在当前页面执行操作?这就是书签小程序(Bookmarklet)。
Go 的差异化算法模块
将任意页面的主要内容提取为 Markdown。
Nokogiri 的直接替代品。在解析 HTML 时快 4.7 倍,在 CSS 选择器上快达 1352 倍。
为你的本地 AI 代理创建沙箱,使其只能读写需要的内容
在 WebAssembly 沙箱中运行 Node 应用
纯 Go 实现的 JSONata 2.x,用于高吞吐量流式求值。还有用 AI 用 Go 重写它为公司每年节省 50 万美元的故事。
可插拔的 linting 工具,用于防止提交凭证。
Postgres TUI 客户端,利用你的终端文本编辑器进行插入和更新操作
用于性能、安全、合规和成本的 SQL 静态分析器。272 条规则。完全离线运行。可在 CI 流水线中使用。
PostgreSQL 扩展,捕获每个查询的执行遥测数据并实时导出到 ClickHouse。与在 PostgreSQL 中聚合统计数据的 pg_stat_statements 不同,pg_stat_ch 将原始事件导出到 ClickHouse,在那里通过 ClickHouse 强大的分析引擎进行聚合。
支持 LSP 规范 3.17 版本的 Go LSP 辅助库
2025-12-15 20:19:00
Hi all,
Merry Christmas everyone. It’s the end of years, take sometime off and enjoy the season.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
What’s actually working for engineering teams — and what’s not? Hear from Benjamin Stice (Salesforce VP Engineering), Clinton Herget (Snyk Field CTO), Yonatan Boguslavsky (Port CTO), and Dedy Kredo (Qodo Co-Founder) in this candid panel discussion. Three fast, honest segments: What we’re leaving behind: practices, tools, or org habits that no longer serve the team (and how we’re unwinding them without chaos). What we’re doubling down on: the investments that produced real outcomes in quality, delivery, and developer experience, and how we’re scaling them. What we’re betting on next: the experiments and measured risks we’ll run in 2026 to meet reliability, security, and growth goals. No platitudes. Just real lessons from leaders who’ve steered teams through a year of AI transformation.
One of the most massive AWS incidents transpired on October 20th. The long story short is that the DNS for DynamoDB was impacted for us-east-1, which created a health event for the entire region. It’s the worst incident we’ve seen in a decade. authress shares with us how they maintain a high SLI to match our SLA reliability commitment even when the infrastructure and services we use don’t.
Part 12 of “How to Scale Your Model”, an free ebook that aim to demystify the science of scaling language models: how TPUs (and GPUs) work and how they communicate with each other, how LLMs run on real hardware, and how to parallelize your models during training and inference so they run efficiently at massive scale.
Memory maps are a modern Unix mechanism where you can take a file and make it part of the virtual memory. In Unix context, modern means that it was introduced in the 1980s or later. You have a file, containing data, you mmap it and you’ll get a pointer to where this resides. Now, instead of seeking and reading, you just read from this pointer, adjusting the offset to get to the right data.
The original motivation for the creation of Bloom filters is efficient set membership, using a probabilistic approach to significantly reduce the time and space required to reject items that are not members in a certain set.
It stands for “Authenticated Encryption with Associated Data” but if you are struggling to remember what is it. This post sumarize nicely.
There are many SQL JOINs guides and tutorials, but this one takes a different approach. We try to avoid misleading wording and imagery, and we structure the material in a different way. The goal of this article is to clarify your mental model
The secret to unlocking performance gains often lies not just in what you ask in a query, but in how Postgres finds the answer. The Postgres EXPLAIN system is great for understanding how data is being queried. One of secretes to reading EXPLAIN plans is understanding the type of scan done to retrieve the data. The scan type can be the difference between a lightning-fast response or a slow quey
Addy Osmani is a legendary engineer. In his own words: “When I joined Google ~14 years ago, I thought the job was about writing great code. I was partly right. But the longer I’ve stayed, the more I’ve realized that the engineers who thrive aren’t necessarily the best programmers - they’re the ones who’ve figured out how to navigate everything around the code: the people, the politics, the alignment, the ambiguity.”
WebPerformance Report was designed around that principle. Although its underlying data comes from automated performance tests, the report itself is intentionally high-level. It is structured to help anyone, developers, designers, marketers, and executives, understand what happened, why it matters, and where the opportunities lie. This article walks through the anatomy of a Web Performance Report, explaining each section, why it exists, and what decisions it enables.
To implement accessibility, Chrome has this pipeline DOM mutation -> AXEvent -> Accessibility tree -> OS accessibility API -> Screen reader. But here’s the strange part: Chrome doesn’t have one accessibility tree, it has two. This article traces the full lifecycle of an accessibility event. From the moment the DOM changes, through Blink’s internal systems, through its internal accessibility tree, and finally back out into the BrowserAccessibility tree that screen readers query.
37signals release this kanban style app. A good opportunity to dive into the source and see how DHH write user facing code.
A lightweight JavaScript library that generates customizable heat maps, charts, and statistics to visualize date-based activity and trends.
The simplest way to protect your apps with a login screen.
A character-level language diffusion model trained on Tiny Shakespeare
Minimalist, dependency-free virtual machine sandbox for microcontrollers and other resource-constrained devices. Single C file, no dynamic memory allocations, asynchronous design, pure C99
A cross-platform network monitoring terminal UI tool built with Rust
Lightweight JavaScript library for product tours, highlights, and contextual help to guide users through your product
This project lets you chat with a Large Language Model (LLM) using just your voice, receiving spoken responses in near real-time. Think of it as your own digital conversation partner.
Edit PDF files with Nano Banana
Use mkslides to easily turn markdown files into beautiful slides using the power of Reveal.js!
Enterprise-grade PostgreSQL backup and restore. Beautiful CLI with real-time progress tracking.
powerful management tool for PostgreSQL. You can use it to monitor, optimize or configure multiple PostgreSQL instances.
Interfaces to query ClickHouse databases from PostgreSQL
(Tiny Redis Desktop Manager) - A modern, colorful, super lightweight Redis GUI client for Mac, Windows, and Linux.
大家好,
祝大家圣诞快乐。年末将至,抽出时间休息一下,享受这个季节吧。
如果你喜欢 BetterDev,请通过分享给朋友来传播它。如果你愿意支持我的工作,请我喝杯咖啡将不胜感激。
工程团队中真正有效的方案是什么——什么又无效?听听 Benjamin Stice(Salesforce 工程副总裁)、Clinton Herget(Snyk 现场 CTO)、Yonatan Boguslavsky(Port CTO)和 Dedy Kredo(Qodo 联合创始人)的坦诚对话。三个快速、真实的环节:我们正在放弃什么:不再为团队服务的实践、工具或组织习惯(以及我们如何在不造成混乱的情况下逐步淘汰它们)。我们正在加倍投入什么:那些在质量、交付和开发者体验方面产生了实际成果的投资,以及我们如何扩大它们的规模。我们押注于什么:为了实现可靠性、安全性和增长目标,我们将在 2026 年进行的实验和有衡量的风险尝试。没有空洞的说辞,只有经历过 AI 转型一年的领导者们的真实经验教训。
最严重的一次 AWS 事故发生在 10 月 20 日。简而言之,DynamoDB 的 DNS 受到了影响,波及 us-east-1 区域,导致整个区域产生健康事件。这是我们十年来遇到的最严重的事故。authress 将分享他们如何在所使用的基础设施和服务出现问题时,仍能保持高 SLI 以匹配 SLA 可靠性承诺。
《如何扩展你的模型》第 12 部分,这是一本旨在揭开扩展语言模型科学奥秘的免费电子书:TPU(和 GPU)如何工作以及它们如何相互通信,LLM 如何在真实硬件上运行,以及如何在训练和推理期间并行化模型以使其在大规模时高效运行。
内存映射是一种现代 Unix 机制,你可以将文件作为虚拟内存的一部分。在 Unix 环境中,"现代"意味着它在 1980 年代或更晚引入。你有一个包含数据的文件,你 mmap 它,你会得到一个指向它所在位置的指针。现在,你不再需要寻址和读取,只需从这个指针读取数据,调整偏移量以获取正确的数据。
布隆过滤器创建的原始动机是高效的集合成员判定,使用概率方法显著减少拒绝不属于某个集合的元素所需的时间和空间。
它代表"带关联数据的认证加密",但如果你正在努力记住它是什么,这篇文章很好地总结了它。
有很多 SQL JOIN 指南和教程,但这篇采取了不同的方法。我们尽量避免误导性的措辞和图片,并以不同的方式组织材料。本文的目标是理清你的心智模型。
解锁性能提升的秘密往往不仅在于你在查询中问什么,还在于 PostgreSQL 如何找到答案。PostgreSQL 的 EXPLAIN 系统对于理解数据如何被查询非常有用。解读 EXPLAIN 计划的一个秘诀是理解用于检索数据的扫描类型。扫描类型可能决定是闪电般的快速响应还是缓慢的查询。
Addy Osmani 是一位传奇工程师。用他自己的话说:"当我大约 14 年前加入 Google 时,我以为这份工作就是编写优秀的代码。我只对了一部分。但我在公司待得越久,我就越意识到那些成功的工程师不一定是最优秀的程序员——他们是那些弄清楚如何驾驭代码周围一切的人:人际关系、政治、共识、模糊性。"
WebPerformance 报告的设计基于这个原则。虽然其底层数据来自自动化性能测试,但报告本身是有意的高级设计。它的结构是为了帮助任何人——开发者、设计师、营销人员和高管——理解发生了什么、为什么重要、以及机会在哪里。本文将带你了解 Web Performance 报告的结构,解释每个部分、为什么存在,以及它支持什么决策。
为了实现无障碍功能,Chrome 有这条处理流水线:DOM 变更 -> AXEvent -> 无障碍树 -> OS 无障碍 API -> 屏幕阅读器。但这里有个奇怪的部分:Chrome 不是一个无障碍树,而是有两个。本文追踪了一个无障碍事件的完整生命周期。从 DOM 变化的时刻开始,通过 Blink 的内部系统,通过其内部无障碍树,最后回到屏幕阅读器查询的 BrowserAccessibility 树。
37signals 发布的看板风格应用。这是一个深入源码的好机会,看看 DHH 如何编写面向用户的代码。
一个轻量级 JavaScript 库,用于生成可定制的热力图、图表和统计数据,以可视化基于日期的活动和趋势。
用登录屏幕保护你的应用的最简单方法。
一个在 Tiny Shakespeare 上训练的角色级语言扩散模型。
面向微控制器和其他资源受限设备的极简、无依赖的虚拟机沙箱。单文件 C 代码,无动态内存分配,异步设计,纯 C99。
一个用 Rust 构建的跨平台网络监控终端 UI 工具。
轻量级 JavaScript 库,用于产品导览、高亮显示和情境帮助,引导用户了解你的产品。
这个项目让你可以用语音与大型语言模型(LLM)交流,近实时地接收语音回复。可以把它想象成你自己的数字对话伙伴。
用 Nano Banana 编辑 PDF 文件。
使用 mkslides 轻松将 markdown 文件转换成精美的幻灯片,利用 Reveal.js 的强大功能!
企业级 PostgreSQL 备份和恢复。美观命令行界面,实时进度跟踪。
强大的 PostgreSQL 管理工具。你可以用它来监控、优化或配置多个 PostgreSQL 实例。
从 PostgreSQL 查询 ClickHouse 数据库的接口。
(Tiny Redis Desktop Manager)——一款现代、色彩丰富、超轻量的 Redis 图形客户端,支持 Mac、Windows 和 Linux。
2025-11-16 20:19:00
Hi all,
Sometime when my though wandering the world, I just wonder how amazing TCP was design. The world all connect together because of it. Sometime you disconnect your VPN, then re-connect, and your SSH connection just resume. How amazing resilient it is. Today we discover that by learning about TCP protocol.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
Developers earned $563K in September alone building automation tools on Apify. Now there’s $1M more in prizes through January 31. Build web scrapers, API wrappers, MCP servers for AI agents. Earn up to $2K per tool based on monthly active users, compete for $30K/$20K/$10K grand prizes, plus $2K weekly spotlight prizes. Ongoing marketplace revenue continues after the challenge ends.
The internet is incredible. It’s nearly impossible to keep people away from. But it can also be unreliable: packets drop, links congest, bits mangle, and data corrupts. Oh, it’s dangerous out there! (I’m writing this in Kramer’s tone)
Sometimes you just want something that: Works with your existing database, Doesn’t require external services, Is easy to understand and debug. That’s what the OP built. A search engine that uses your existing database, respects your current architecture, and gives you full control over how it works.
Marginalia is an experimental search engine. The Marginalia Search index has been partially rewritten to perform much better, using new data structures designed to make better use of modern hardware. This post will cover the new design, and will also touch upon some of the unexpected and unintuitive performance characteristics of NVMe SSDs when it comes to read sizes.
As a computer engineer who has spent half a decade working with caches at Intel and Sun, I’ve learnt a thing or two about cache-coherency. This was one of the hardest concepts to learn back in college – but once you’ve truly understood it, it gives you a great appreciation for system design principles.
I decided to experiment with writing an object store from scratch as a fun learning exercise, and to see how much I could get out of NVMe disks I had on my bare metal machines. Specifically, I wanted to really optimize for random reads and small objects — serving user content where the lower the latency, the better. This would not focus on other features; S3 is bottomless, distributed, and managed for example.
Postgres has an awesome amount of data collected in its own internal tables. Postgres hackers know all about this - but software developers and folks working with day to day Postgres tasks often miss out the good stuff. Today I want to walk through some of the most important Postgres internal data catalog details. What they are, what is in them, and how they might help you understand more about what is happening inside your database.
This could be a cheap way to have a Kafka-like consumer out of the box by consuming your Postgres WAL log. WAL log is like a stream of change happen to your database (update/create/delete) and you can decode them to JSON to see the change and act on them
A deep dive into how JavaScript source maps work under the hood, with examples showing how all the pieces fit together.
Beside the usualy way of await fetch to load JSON API, we now can also use import directly. We had this in NodeJS with build tool already but now it’s natively available in the browser too. Lets see when we should use what.
Easy-to-deploy, open source PostgreSQL function that provides a prioritized list of actions to improve database stability and performance.
Filter sensitive information from free text before sending it to external services or APIs, such as chatbots and LLMs.
Easily setup logical replication and switchover to new database with minimal downtime
a handy JavaScript plugin for generating and animating nice & clean dashboard gauges. It is based on Raphaël library for vector drawing
javascript navigation mesh construction and querying library for 3D floor-based navigation
Minimal neofetch-like weather CLI. Just fun code to read.
Public Open Relay To Access Localhost
A lightweight vLLM implementation built from scratch.
A modern static site generator by the creators of Material for MkDocs
OCR model that handles complex tables, forms, handwriting with full layout.
Perspective is an interactive analytics and data visualization component, which is especially well-suited for large and/or streaming datasets. Use it to create user-configurable reports, dashboards, notebooks and applications, then deploy stand-alone in the browser, or in concert with Python and/or Jupyterlab.
A minimalist extension and utility pair for time series analysis and visualization of PostgreSQL internal statistics.
Nagios check_postgres plugin for checking status of PostgreSQL databases. You probably cannot use this as it’s because it’s for Nagios but the script can adopt to any monitoring system.
Minimal RFC 5424 syslog collector and viewer based on DuckDB. Runs as a single, resource-friendly process
Advanced select dropdown without any dependencies
HTTP & OAuth Gateway and Web Application Firewall (WAF) based on ModSecurity
Lightweight status page for home infrastructure
大家好,
有时候当我的思绪漫游时,我不禁惊叹TCP的设计是如此精妙。整个世界因此紧密相连。有时候你断开VPN,然后重新连接,你的SSH连接就会恢复。它是多么强大且具有韧性啊。今天我们将通过学习TCP协议来发现这一点。
如果你喜欢BetterDev,请通过分享给朋友来传播它。如果你愿意支持我的工作,请我喝杯咖啡将不胜感激。
开发者们在9月单月通过在Apify上构建自动化工具赚了56.3万美元。直至1月31日,还有100万美元的奖金等待争夺。构建网页爬虫、API封装、MCP服务器供AI代理使用。根据月活跃用户数,每款工具可赚取高达2000美元,还可以争夺3万美元/2万美元/1万美元的大奖,以及每周2000美元的聚焦奖。挑战结束后,市场平台的持续收益将继续。
互联网是不可思议的。要让人们无法访问几乎是不可能的。但它也可能是不可靠的:数据包会丢失,链路会拥塞,字节会损坏,数据会腐化。哦,外面可真危险!(我用克莱默的语气写这句话)
有时候你只需要这样的东西:与你现有的数据库配合工作,不需要外部服务,简单易懂且易于调试。这就是原作者构建的东西。一个使用你现有数据库的搜索引擎,尊重你当前的架构,并让你完全掌控它的工作方式。
Marginalia是一个实验性搜索引擎。Marginalia搜索索引已被部分重写以实现更好的性能,使用了为更好利用现代硬件而设计的新数据结构。这篇文章将涵盖新的设计,并涉及NVMe SSD在读取大小方面的一些意想不到且违反直觉的性能特性。
作为一名在英特尔和Sun工作了五年、与缓存打交道的计算机工程师,我学到了一些关于缓存一致性的东西。这是大学时期最难理解的概念之一——但一旦你真正理解了它,它会让你对系统设计原则有深刻的认识。
我决定将从头编写一个对象存储作为有趣的学习练习,看看我能从裸机服务器上的NVMe磁盘中获得多少性能。具体来说,我想真正优化随机读取和小对象——服务于用户内容,延迟越低越好。这不会关注其他功能;比如S3是无限的、分布式的、被托管的。
Postgres在其自身的内部表中收集了惊人的数据量。Postgres高手对此了如指掌——但软件开发人员和日常使用Postgres的人往往错过了这些好东西。今天我想带你了解一些最重要的Postgres内部数据目录细节。它们是什么,里面有什么,以及它们如何帮助你了解数据库内部正在发生的事情。
这可能是一种利用现成的Postgres WAL日志获得类似Kafka消费者的廉价方式。WAL日志就像是发生在数据库上的变更流(更新/创建/删除),你可以将它们解码为JSON来查看变更并采取行动
深入了解JavaScript source maps在底层是如何工作的,并通过示例展示所有部分是如何协同配合的。
除了通常使用await fetch来加载JSON API的方式,我们现在也可以直接使用import。我们在NodeJS中配合构建工具已经有了这个功能,但现在浏览器也原生支持了。让我们看看什么时候该用什么。
易于部署的开源PostgreSQL函数,可提供优先级列表以提高数据库稳定性和性能。
在将自由文本发送到外部服务或API(如聊天机器人和LLM)之前,过滤其中的敏感信息。
轻松设置逻辑复制并以最少停机时间切换到新数据库
一个方便的JavaScript插件,用于生成和动画化漂亮简洁的仪表盘仪表。基于Raphaël向量绘图库
用于3D平面导航的JavaScript导航网格构建和查询库
极简的类neofetch天气命令行工具。就是有趣的代码,值得一读。
公开的开放中继以访问本地主机
从零开始构建的轻量级vLLM实现。
Material for MkDocs创建者打造的现代静态网站生成器
可处理复杂表格、表单、手写的OCR模型,具有完整布局识别能力。
Perspective是一个交互式分析和数据可视化组件,特别适合大型和/或流式数据集。使用它创建用户可配置的报表、仪表盘、笔记本和应用程序,然后独立部署在浏览器中,或与Python和/或Jupyterlab配合使用。
用于PostgreSQL内部统计的时间序列分析和可视化的极简扩展和工具对。
Nagios的check_postgres插件,用于检查PostgreSQL数据库状态。你可能无法使用这个,因为它是为Nagios设计的,但脚本可以适配任何监控系统。
基于DuckDB的极简RFC 5424 syslog收集器和查看器。作为一个单一、资源友好的进程运行
无任何依赖的高级选择下拉框
基于ModSecurity的HTTP和OAuth网关及Web应用防火墙(WAF)
用于家庭基础设施的轻量级状态页面
2025-10-20 20:19:00
Hi all,
It’s already autumn and we will continue to get more issue moving forward. Hope everyone have a great haloween ahead. I also shared a story about someone almost got hack by being trick into running code for an interview. Remind so stay safe these day, never run untrusted code on your machine.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
The HubSpot Developer Platform gives you the tools to build, extend, and scale with confidence. Create AI-ready apps, integrations, and workflows faster with a unified platform designed to grow alongside your business.
May sound overwhelm but it’s very approachable with step by step building from previous foundation. Eg to write the initial boot loader you just need: loop: jmp loop
times 510-($-$$) db 0 dw 0xaa55
A very detail setup so you can prepare emulator to start learning these.
Every time you use a computer, caches work to ensure your experience is fast. Everything a computer does from executing an instruction on the CPU, to requesting your X.com feed, to loading this very webpage, relies heavily on caching. You are about to enjoy a guided, interactive tour of caching: the most elegant, powerful, and pervasive innovation in computing.
A visual introduction to big O notation.
This post is an introduction to consistent hashing, an algorithm for designing a hash table such that only a small portion of keys has to be recomputed when the table’s size changes.
By default all of the Postgres data stay in the same directory, under the same path and therefore the same volume. This limit our scale, many cloud provider has a max volume size, and they all share same IO. What can we do to put the database at different location instead?
Be careful out there with sophisicated phishing attempt nowadays. Bottom line is never ever run untrusted code directly on your machine.
Maybe you’re debugging a network request, but the stack trace has been laundered away by a batching mechanism. Maybe you have an enormous React codebase with kilometers of prop drilling, and you can’t be bothered to hit Go To References all morning. In any case, sometimes you just wish you could see where that specific object in the debugger was created.
Once you get into the business of starting threads, you’re probably also in the business of stopping them. However the former is much easier than the latter. With “stopping” I mean stopping the thread while giving it a chance to run some cleanup operations before fully terminating. Or in other words, we want to terminate a thread while ensuring that memory is freed, locks are released, logs are flushed, and so on
Rack middleware for blocking & throttling
A lightweight terminal UI for displaying Go tests
♪ A low-level library to play sound on multiple platforms ♪
keeps PostgreSQL/MySQL/MariaDB as your source of truth and publishes denormalized documents to Elasticsearch/OpenSearch—continuously and transactionally.
A PostgreSQL extension that provides infinite calendar functionality for recurring schedules with exceptions
Fast & free browser trusted HTTPS certificates
Visual Development for React, Vue, Svelte, Qwik, and more
大家好,
秋天已经来了,我们也会继续推出更多期内容。希望大家都有一个精彩的万圣节。我还分享了一个故事,关于有人因为在面试中被骗运行代码而差点被黑客入侵。提醒大家要时刻保持安全,现在千万不要在本地运行不受信任的代码。
如果你喜欢 BetterDev,请通过分享给朋友来传播它。如果你愿意支持我的工作,请我喝杯咖啡将非常感激。
HubSpot 开发者平台为你提供工具来构建、扩展和自信地扩展规模。借助统一的平台创建 AI 就绪的应用、集成和工作流,让你的业务与之一同成长。
听起来可能很复杂,但实际上通过从前面的基础一步步构建,是非常容易上手的。例如,编写初始引导加载程序你只需要: loop: jmp loop
times 510-($-$$) db 0 dw 0xaa55
这是一个非常详细的设置,可以让你准备好模拟器来开始学习这些内容。
每次你使用电脑时,缓存都在工作以确保你的体验是快速的。电脑所做的所有事情,从在 CPU 上执行指令,到请求你的 X.com 信息流,再到加载这个网页,都严重依赖缓存。你即将享受一场关于缓存的引导式交互之旅:这是计算领域中最优雅、最强大、最普遍的创新。
Big O 符号的可视化入门。
这篇文章是对一致性哈希的介绍,这是一种设计哈希表的方法,使得当哈希表的大小变化时,只需要重新计算一小部分键。
默认情况下,所有 Postgres 数据都存储在同一个目录下、同一个路径中,因此也在同一个卷上。这限制了我们扩展,许多云提供商都有最大卷大小限制,而且它们都共享相同的 IO。我们能做些什么来把数据库放在不同的位置呢?
在这个时代复杂的网络钓鱼攻击无处不在,请务必小心。最重要的是,永远不要在本地直接运行不受信任的代码。
也许你在调试一个网络请求,但堆栈跟踪已经被批处理机制洗掉了。也许你有一个庞大的 React 代码库,有很长的属性透传问题,而你不想整个上午都在点击"转到引用"。无论如何,有时候你只是希望能在调试器中看到那个特定对象是在哪里创建的。
一旦你开始从事启动线程的业务,你可能也需要从事停止它们的业务。然而,前者比后者要容易得多。我说的"停止"是指在线程终止之前给它一个机会运行一些清理操作。换句话说,我们想在确保内存被释放、锁被释放、日志被刷新等等的同时终止一个线程。
用于阻止和限制请求的 Rack 中间件
用于显示 Go 测试的轻量级终端 UI
♪ 在多个平台上播放声音的低级库 ♪
将 PostgreSQL/MySQL/MariaDB 作为数据源,并持续且事务性地将非规范化文档发布到 Elasticsearch/OpenSearch。
一个为周期性日程提供无限日历功能的 PostgreSQL 扩展,包含例外处理。
快速且免费的浏览器信任的 HTTPS 证书
适用于 React、Vue、Svelte、Qwik 等的视觉化开发
2025-09-08 20:19:00
Hi all,
We came back with other issue. I had got a new job with lot of duties last few month but things are cooling down so we’re going back :).
My friend, Joel Dare has also start writing a news letter, you may consider to subscribe there. He’s also creator of neat which as its name, a very neat css framework.
If you enjoy BetterDev, please spread the word by sharing it with your friends. And if you’d like to support my work, buying me a coffee would be much appreciated.
Transform your skills at AWS re:Invent 2025. Over five dynamic days, you’ll dive into technical training, explore the latest technologies, and build valuable peer connections.Take home practical solutions that deliver instant value to your work and advance your career.
Join us in Las Vegas from December 1-5 to:
● Access insider knowledge through interactive labs, technical sessions, and workshop
● Accelerate your learning through direct mentorship from AWS experts
● Build your network and connect with peers who share your technical interests through AWS Community Programs at the Developer Pavilion
● Experience live music, amazing food, and more at re:Play, the ultimate tech celebration
● Attend in person and receive a 50% discount voucher for any AWS Certification exam
● Team up and save - Get one free pass for every 10 passes purchased*
Our 2025 event catalog is now available! From experimenting with new solutions to interactive workshops and hands-on training, we’ve got something for everyone at AWS re:Invent.
The Apollo “8-Ball” FDAI (Flight Director/Attitude Indicator) was a crucial instrument in Apollo spacecraft, used to display the vehicle’s orientation. The article details its complex internal workings, which include a multi-axis rotating ball mechanism driven by three motors and a servo loop. The specific unit examined was later modified for use in a Space Shuttle simulator, with changes made to its components and markings.
There are some latency numbers that every programmer should know, according to Jeff Dean, and one of them is branch misprediction, which costs around 5ns in 2012, and the latency remains roughly the same as the time of writing this post. So what is branch prediction, what happens when it’s mispredicted, and why is it costly?
Making programs slower can be useful to find race conditions, to simulate speedups, and to assess how accurate profilers are. To detect race conditions, we may want to use an approach similar to fuzzing. Instead of exploring a program’s implementation by varying its input, we can explore different instruction interleavings, thread or event schedules, by slowing down program parts to change timings. This approach allows us to identify concurrency bugs and is used by CHESS, WAFFLE, and NACD.
UIDv7 is a highly important and long-awaited feature that addresses a major pain point for developers who use UUIDs as primary keys in databases. Unlike older versions like UUIDv4, which are randomly generated and lead to poor performance and index bloat in B-tree indexes, UUIDv7 incorporates a Unix Epoch timestamp. This makes it time-ordered, ensuring that new UUIDs are inserted sequentially, which significantly improves performance for write-heavy workloads. The article emphasizes that this quiet but impactful addition “brings the best of both worlds” by providing global uniqueness while also being sortable and performance-friendly.
I always like syntax highling algorithm. It’s something we take for granted and didn’t ask how it can be done. Andy walked us through how he do it for his own shell language.
The webpage describes a new method for GPU text rendering that uses vector data of glyphs instead of pre-baked textures, addressing issues like poor quality with certain fonts and large texture sizes. The approach involves loading raw Bézier curves, sending them to the GPU, and rasterizing them at runtime with a temporal accumulation technique for high-quality anti-aliasing. This method also allows for customized subpixel anti-aliasing to eliminate color fringing on different monitor layouts.
Collaboratively editing strings of text is a common desire in peer-to-peer applications. For example, a note-taking app might represent each document as a single collaboratively-edited string of text.
The algorithm presented here is one way to do this. It comes from a family of algorithms called CRDTs, which I will not describe here. It’s similar to the approaches taken by popular collaborative text editing libraries such as Yjs and Automerge. Other articles have already been written about these similar approaches (see the references section below), but this article also has a nice interactive visualization of what goes on under the hood.
Speed kills rigor. In startups, the pressure to ship fast pushes teams to report anything that looks like an improvement. That’s how p-hacking happens. This piece breaks down three common cases—and how to avoid them
explains how Compiler Explorer works, a popular online tool for compiling code and viewing assembly output. The site handles millions of compilations annually, using Google’s nsjail tool for security to isolate compilation processes. To manage a massive 4 terabyte collection of over 4,700 compiler versions and reduce latency, it uses squashfs images mounted over NFS. The article concludes by discussing the site’s future plans, including the addition of an AI explanation tool and user accounts.
Have you ever scratch your head and see why your program seems hang? with very low CPU utilization? When you do strace it just show a bunch of FUTEX. In this short article we just learn some useful options and flags of strace to debug these easiser
the short of it is: they’re cool for appending notes from automated systems (like ticket or build systems) but not really for having interactive conversations with other developers (at least not yet)
A reimplementation of Stable Diffusion 3.5 in pure PyTorch. The Hacker News thread also had a lot of userful and great comment.
a Makefile formatter and linter. It only took 50 years!
Natural (“version number”) sorting with support for: name, legal doc numbering,
A tiny query language for filtering structured data
JavaScript UI component for interacting with audio waveforms
Animation engine for explanatory math videos
Link-Layer MAC spoofing GUI for macOS
run and test HTTP requests with plain text.
Active-active Replication Extension for PostgreSQL (pgactive)
Cloud-Native PostgreSQL WAL receiver. Stream, compress, encrypt, upload, retain and monitor your WAL archive.
Tiny S3 client. Edge computing ready. No-dep. In Typescript. Works with @cloudflare @minio @Backblaze @digitalocean @garagehq
A powerful, real-time log analysis terminal UI inspired by k9s. Analyze log streams with beautiful charts, AI-powered insights, and advanced filtering - all from your terminal
大家好,
我们又遇到了其他问题。我在过去几个月里获得了一份新工作,有很多职责,但现在事情逐渐平静下来,我们又回来了 :).
我的朋友 Joel Dare 也开始写新闻简报,您可以考虑订阅。他也是 neat 的创建者,这是一个以其名称命名的非常整洁的 CSS 框架。
如果您喜欢 BetterDev,请通过与朋友分享来传播这个信息。如果您想支持我的工作,给我买杯咖啡 将非常感激。
在 AWS re:Invent 2025 上提升您的技能。五天动态的活动中,您将深入技术培训,探索最新技术,并建立有价值的同行联系。带回家实用的解决方案,这些方案能立即为您的工作带来价值并推动您的职业发展。
加入我们,在拉斯维加斯 12 月 1 日至 5 日期间:
● 通过交互式实验室、技术研讨会和工作坊获取内部知识
● 通过直接与 AWS 专家进行指导学习来加速您的学习
● 在开发者馆的 AWS 社区计划中建立您的网络并与其他技术爱好者建立联系
● 在 re:Play,终极科技庆典中体验现场音乐、美食等
● 亲临现场并获得任何 AWS 认证考试的 50% 折扣券
● 团队合作并节省费用 - 每购买 10 张通行证即可获得一张免费通行证
我们的 2025 年活动目录现已发布!从实验新解决方案到互动研讨会和动手培训,我们为每个人在 AWS re:Invent 上都有所准备。
Apollo “8-Ball” FDAI(飞行指挥/姿态指示器)是阿波罗飞船上的关键仪器,用于显示飞行器的方位。文章详细介绍了其复杂的内部工作机制,包括由三个电机和伺服环驱动的多轴旋转球机制。所研究的具体单元后来被修改用于航天飞机模拟器,对其组件和标记进行了更改。
根据 Jeff Dean 的说法,每个程序员都应该知道一些延迟数字,其中之一是分支误预测,它在 2012 年的延迟成本约为 5ns,而延迟在撰写本文时仍大致相同。那么什么是分支预测,当它被误预测时会发生什么,为什么它会如此昂贵?
使程序变慢对于发现竞态条件、模拟加速以及评估剖析器的准确性可能很有用。为了检测竞态条件,我们可以采用类似于模糊测试的方法。而不是通过改变输入来探索程序的实现,我们可以通过减慢程序部分来改变时间安排,探索不同的指令交错、线程或事件调度。这种方法允许我们识别并发错误,并被 CHESS、WAFFLE 和 NACD 使用。
UUIDv7 是一个非常重要且期待已久的特性,解决了使用 UUID 作为数据库主键的开发人员的主要痛点。与较旧的版本如 UUIDv4 不同,后者是随机生成的,会导致 B 树索引的性能问题和索引膨胀,UUIDv7 融入了 Unix Epoch 时间戳。这使得它按时间排序,确保新的 UUID 按顺序插入,这显著提高了写密集型工作负载的性能。文章强调,这一安静但影响深远的添加“结合了两者最好的一面”,即提供全球唯一性的同时,也是可排序且性能友好的。
我总是喜欢语法高亮算法。这是我们习以为常的东西,很少有人问它是如何实现的。Andy 向我们展示了他是如何为自己的 shell 语言实现的。
该网页描述了一种新的 GPU 文本渲染方法,使用字形的向量数据而不是预烘焙的纹理,解决了某些字体质量差和纹理尺寸过大的问题。该方法涉及加载原始贝塞尔曲线,将其发送到 GPU,并在运行时通过时间累积技术进行光栅化,以实现高质量的抗锯齿效果。这种方法还允许自定义子像素抗锯齿,以消除不同显示器布局上的颜色边缘。
速度扼杀了严谨性。在初创公司中,快速交付的压力促使团队报告任何看起来像改进的东西。这就是 p-hacking 发生的方式。本文分解了三种常见的案例以及如何避免它们。
解释了 Compiler Explorer 的工作原理,这是一个流行的在线工具,用于编译代码并查看汇编输出。该网站每年处理数百万次编译,使用 Google 的 nsjail 工具进行安全隔离,以隔离编译过程。为了管理庞大的 4TB 编译器版本集合和减少延迟,它使用 squashfs 镜像通过 NFS 挂载。文章最后讨论了网站的未来计划,包括添加 AI 解释工具和用户账户。
您是否曾经困惑于为什么程序似乎挂起?CPU 利用率非常低?当您使用 strace 时,它只会显示一堆 FUTEX。在本文中,我们学习了一些有用的 strace 选项和标志,以便更容易地进行这些调试。
简而言之:它们适合用于添加来自自动化系统(如票务或构建系统)的注释,但不太适合用于与其他开发人员进行交互式对话(至少目前还不行)。
用纯 PyTorch 重新实现的 Stable Diffusion 3.5。 Hacker News 的讨论线也包含了许多有用且精彩的评论。
一个 Makefile 格式化和检查工具。只用了 50 年!
支持名称、法律文件编号等的自然(“版本号”)排序。
一种用于过滤结构化数据的小型查询语言。
一个用于与音频波形交互的 JavaScript 用户界面组件。
用于解释数学视频的动画引擎。
适用于 macOS 的链接层 MAC 欺骗图形用户界面。
使用纯文本运行和测试 HTTP 请求。
PostgreSQL 的主动-主动复制扩展(pgactive)。
云原生 PostgreSQL WAL 接收器。流式传输、压缩、加密、上传、保留和监控您的 WAL 归档。
微型 S3 客户端。适用于边缘计算。无依赖项。使用 TypeScript。与 @cloudflare @minio @Backblaze @digitalocean @garagehq 兼容。
一个强大的实时日志分析终端用户界面,灵感来自 k9s。在终端中分析日志流,使用美丽的图表、AI 驱动的见解和高级过滤功能。