Michael Pratt
prattmic.com
Michael Pratt
@prattmic.com
Hacking on the Go runtime and gVisor. 🏳️‍🌈
Reposted by Michael Pratt
Go 1.26 is out, and the announcement says:

"Over the next few weeks, follow-up blog posts will cover some of the topics in more detail. Check back later."

So you can wait a few weeks OR you can read my interactive Go 1.26 tour right away:

antonz.org/go-1-26
Go 1.26 interactive tour
New with expressions, type-safe error checking, and faster everything.
antonz.org
February 11, 2026 at 1:33 PM
Reposted by Michael Pratt
Some pretty awesome improvements in 1.26 for compiling/testing typescript-go.

With a clean build/test cache, running the full test suite used to take 3m45s, but now takes just 2m10s.
February 11, 2026 at 7:17 PM
Reposted by Michael Pratt
“Go 1.26 is released” by Carlos Amedee, on behalf of the Go team — https://go.dev/blog/go1.26

#golang
February 10, 2026 at 8:31 PM
🍵
🎆 Go 1.26.0 is released!

🗒️ Release notes: https://go.dev/doc/go1.26

⬇️ Download: https://go.dev/dl/#go1.26.0

#golang
February 10, 2026 at 7:54 PM
Reposted by Michael Pratt
$ jj describe -m "Hello, world!"
February 4, 2026 at 9:09 PM
ICE out of my compiler
January 30, 2026 at 6:46 PM
Reposted by Michael Pratt
Reposted by Michael Pratt
New blog post, with a perhaps mildly unpopular opinion: jayconrod.com/posts/133/in...
Integration tests are best tests
Itegration tests are the most important kind of tests. You should strive for excellent integration test coverage and invest relatively little time in unit tests. I've believed this since I worked on c...
jayconrod.com
January 15, 2026 at 5:36 PM
Reposted by Michael Pratt
We are hiring! CPU security and stuff
www.google.com/about/career...
January 15, 2026 at 8:10 AM
Reposted by Michael Pratt
My GopherCon talk was just posted!
GopherCon 2025: Porting the TypeScript Compiler to Go for a 10x Speedup V2 - Jake Bailey
YouTube video by Gopher Academy
youtu.be
January 7, 2026 at 2:50 AM
Reposted by Michael Pratt
PSA: go.sum is not a lockfile.

You never need to look at go.sum.

go.mod has everything you need.
go.sum Is Not a Lockfile
In Go, go.mod acts as both manifest and lockfile. There is never a reason to look at go.sum.
words.filippo.io
January 5, 2026 at 8:25 PM
Reposted by Michael Pratt
Go 1.26 is coming soon, and the official release notes are pretty dry.

So I prepared an interactive version with lots of examples.

Read on and see!

antonz.org/go-1-26
Go 1.26 interactive tour
New with expressions, type-safe error checking, and faster everything.
antonz.org
January 5, 2026 at 1:40 PM
Reposted by Michael Pratt
The folks behind GopherCon 2025 have kindly shared video recordings of our talks; here's mine on modernizer tools for Go. Special thanks to the amazing Stacy Potenza for turning my rapid limey nerd mumbling into comprehensible closed captions.
www.youtube.com/watch?v=_VeP...
GopherCon 2025: Analysis and Transformation Tools for Go Codebase Modernization - Alan Donovan
YouTube video by Gopher Academy
www.youtube.com
December 31, 2025 at 5:27 AM
Reposted by Michael Pratt
My colleague Sanjay Ghemawat & I have done a fair bit of performance tuning of various pieces of code. We wrote an internal Performance Hints document ~2 years ago as a way of identifying some general principles & we've recently published a version of it externally.

Doc: abseil.io/fast/hints.h...
December 19, 2025 at 10:25 PM
Reposted by Michael Pratt
🎊 Go 1.26 Release Candidate 1 is released!

🏃‍♀️ Run it in dev! Run it in prod! File bugs! https://go.dev/issue/new

🗣 Announcement: https://groups.google.com/g/golang-announce/c/i0ei8EKtYjc/m/h0jl7InPCwAJ

⬇️ Download: https://go.dev/dl/#go1.26rc1

#golang
December 16, 2025 at 8:38 PM
Reposted by Michael Pratt
What's new in gopls 21:
go.dev/gopls/releas...
Please try it out:
$ go install golang.org/x/tools/gopls@latest
Gopls release v0.21.0 (expected Dec 2025) - The Go Programming Language
go.dev
December 12, 2025 at 3:27 PM
Reposted by Michael Pratt
Gist of Go: Concurrency is out!

Learn Go concurrency from the ground up with 50 auto-tested exercises and tons of interactive examples.

It's a full course + book in one.

antonz.org/go-concurrency
December 12, 2025 at 11:10 AM
Reposted by Michael Pratt
"why i think #jj-vcs is worth your time"

schpet.com/note/why-i-t...
why i think jj-vcs is worth your time
schpet.com
December 9, 2025 at 4:36 PM
Reposted by Michael Pratt
The new chapter of my Go Concurrency book covers the scheduler and its implementation details.

It's not meant to be a deep dive. But it's short, easy to understand, and will teach you more about goroutine scheduling than many other developers know.

antonz.org/go-concurren...
Gist of Go: Concurrency internals
CPU cores, threads, goroutines, and the scheduler.
antonz.org
December 5, 2025 at 10:28 AM
Reposted by Michael Pratt
I documented the steps and missteps I took with jj (jujutsu) getting a repo set up from scratch, initial commits made, and pushed to github.

This is the intro workflow I needed, but couldn't find.

www.visualmode.dev/from-zero-to...
From Zero to GitHub: Starting A New jj (Jujutsu) Repo
I document the steps and missteps that I take setting up a new jujutsu repo and pushing it to GitHub
www.visualmode.dev
December 1, 2025 at 1:11 AM
Reposted by Michael Pratt
Accepted! Go 1.26 will introduce per-state goroutine metrics: running, waiting, in syscalls, etc.

Developers can use them to catch problems early without needing full traces.

antonz.org/accepted/gor...
Go proposal: Goroutine metrics
Export goroutine-related metrics from the Go runtime.
antonz.org
November 26, 2025 at 12:17 PM
Reposted by Michael Pratt
BREAKING: This is huge news, the EU's equivalent of the 🇺🇸Supreme Court's 2015 Obergefell v. Hodges ruling.

🇪🇺Court of Justice just ruled all 🇪🇺countries must recognise same-sex marriages granted in other member states.

This effectively legalises gay marriage across 🇪🇺
www.reuters.com
November 25, 2025 at 10:10 AM
Reposted by Michael Pratt
synctest — the package introduced in Go 1.25 to make concurrency testing easier — looks deceptively simple. But don't let its innocent appearance fool you.

To really understand synctest, check out the new chapter of my interactive Go Concurrency book.

antonz.org/go-concurren...
Gist of Go: Concurrency testing
Checking concurrent operations and time-sensitive code.
antonz.org
November 24, 2025 at 2:04 PM
Reposted by Michael Pratt
Small contribution just before the Go 1.26 freeze: go.dev/cl/610815 removes the hard-coded 100ms sleep from the CPU profiler for most platforms. This will make it more efficient and unblock deeper call stacks. As a bonus, uncovered and fixed an 8 year old bug in the profiler go.dev/cl/722940 :)
November 23, 2025 at 6:48 PM
Reposted by Michael Pratt
My talk from GopherCon 2025 about Green Tea is up on YouTube! www.youtube.com/watch?v=gPJk...
GopherCon 2025 - Advancing Go Garbage Collection with Green Tea - Michael Knyszek
YouTube video by Gopher Academy
www.youtube.com
November 20, 2025 at 12:33 AM