Posts

The future of large files in Git is Git

Image
The future of large files in Git is Git If Git had a nemesis, it'd be large files. Large files bloat Git's storage, slow down git clone , and wreak havoc on Git forges. In 2015, GitHub released Git LFS—a Git extension that hacked around problems with large files. But Git LFS added new complications and storage costs. Meanwhile, the Git project has been quietly working on large files. And while LFS ain't dead yet, the latest Git release shows the path towards a future where LFS is, finally, obsolete. What you can do today: replace Git LFS with Git partial clone Git LFS works by storing large files outside your repo. When you clone a project via LFS, you get the repo's history and small files, but skip large files. Instead, Git LFS downloads only the large files you need for your working copy. In 2017, the Git project introduced partial clones that provide the same benefits as Git LFS: Partial clone allows us to avoid down...

Fast UDP I/O for Firefox in Rust

Image
Fast UDP I/O for Firefox in Rust May 14, 2026 · By Max Inden Around 20% of Firefox's HTTP traffic today uses HTTP/3, which runs over QUIC, which in turn runs over UDP. That is a lot of UDP packets flying around. And until recently, Firefox was handling all of them with APIs from the Netscape era. Firefox uses NSPR for most of its network I/O. The N in NSPR stands for Netscape. When it comes to UDP, NSPR only offers PR_SendTo and PR_RecvFrom — thin wrappers around POSIX sendto and recvfrom . One datagram per system call. Every time. Operating systems have moved on. Linux has sendmmsg and recvmmsg . Some kernels and NICs support GSO (Generic Segmentation Offload) and GRO (Generic Receive Offload). Each of these can dramatically reduce the per-datagram overhead. So Mozilla asked: can we replace this aging stack with something modern, memory-safe, and faster? The answer was yes. The result is a 4x throughput improvement in CPU-bound benchmarks. ...

You Already Have a Git Server

Image
You Already Have a Git Server 2025-10-24 — 2026-01-26 If you have a git repository on a server with ssh access, you can just clone it: git clone ssh://username@hostname/path/to/repo Once you've done some work, you can push your changes back to the origin server. By default, git won't let you push to the branch that is currently checked out, but this is easy to change: Run this on the remote server. git config receive.denyCurrentBranch updateInstead This is a nice way to work on server-side files without SSH lag or error-prone copying. If you need more then just a file server, git can run a shell script when it receives a new push: cat > .git/hooks/post-update <<EOF #!/bin/sh set -euo pipefail cd /path/to/site /path/to/generator EOF chmod a+x .git/hooks/post-update You'll even get the script's output sent back to your computer's terminal. . I've have git set up to this blog's site generator: It's very ni...

Claude Opus 4.5 vs GLM-5.2

Image
Claude Opus 4.5 vs GLM-5.2 Claude Opus 4.5 (2025) and GLM-5.2 (2026) are frontier-tier reasoning models from Anthropic and Zhipu AI. Claude Opus 4.5 ships a 200k-token context window , while GLM-5.2 ships a 1M-token context window . On SWE-bench Pro, GLM-5.2 leads by 20.3 points . On pricing, GLM-5.2 costs $1.40/1M input tokens versus $5/1M for the alternative. This comparison covers specs, pricing, API access, capabilities, benchmarks, input and output token costs, and production fit for coding and agent workloads. Bottom line: GLM-5.2 is ~257% cheaper at $1.40/1M input tokens. Pay for Claude Opus 4.5 only when coding workflow support or multimodal vision is a hard requirement. Decision Scorecard Signal Claude Opus 4.5 GLM-5.2 How to read it Best for Reasoning-heavy apps, multimodal apps, and tool-calling agents Re...