Russ Cox's Avatar

Russ Cox

@swtch.com

4,177
Followers
24
Following
46
Posts
01.08.2023
Joined
Posts Following

Latest posts by Russ Cox @swtch.com

keyboard(7) - Plan 9 from User Space

On Mac – and — are Option-hyphen and Option-Shift-hyphen.

On Windows – and — are Alt-0150 and Alt-0151 (on the numeric keypad, not sure about laptops).

On Unix, 9fans.github.io/plan9port/ma... explains how to configure X windows programs to accept all of Plan 9's keyboard sequences.

02.03.2026 20:36 👍 2 🔁 0 💬 0 📌 0
Preview
The Em Dash - 99% Invisible Last summer, Bryan Vance found himself in an argument with a stranger on Reddit. Vance, a Portland-based journalist who runs Stumptown Savings, a newsletter covering local grocery deals, had been accu...

If this podcast episode is the only good thing that comes of AI, it will have been worth it—

27.02.2026 13:03 👍 19 🔁 3 💬 2 📌 0

👋

07.02.2026 18:35 👍 1 🔁 0 💬 0 📌 0
research!rsc: Floating-Point Printing and Parsing Can Be Simple And Fast (Floating Point Formatting, Part 3)

“Floating-Point Printing and Parsing Can Be Simple And Fast”

The fastest known floating-point printer and parsing algorithms - fixed-width printing, shortest-width printing, and parsing, all in 400 lines of Go.

research.swtch.com/fp
research.swtch.com/fp-proof

19.01.2026 22:13 👍 75 🔁 15 💬 1 📌 2

Definitely turning into one of my longest code reviews ever...

10.01.2026 16:22 👍 4 🔁 0 💬 1 📌 0

Indeed. There are more posts to come, but this "digression post" was ready and it seemed appropriate to post today. Stay tuned!

10.01.2026 15:48 👍 3 🔁 0 💬 1 📌 0
research!rsc: Pulling a New Proof from Knuth’s Fixed-Point Printer

“Pulling a New Proof from Knuth's Fixed-Point Printer”

Happy 88th Birthday to Don Knuth!

And thanks again to @robpike.io for Ivy.

research.swtch.com/fp-knuth

10.01.2026 14:30 👍 67 🔁 8 💬 1 📌 0
Preview
In this episode of ACM ByteCast, Bruke Kifle hosts Russ Cox, Distinguished Engineer at Google. In this episode of ACM ByteCast, Bruke Kifle hosts Russ Cox, Distinguished Engineer at Google.

This was a fun conversation. Thanks to ACM Bytecast for having me on. learning.acm.org/bytecast/ep7...

10.12.2025 13:47 👍 40 🔁 8 💬 1 📌 3
I'm Independently Verifying Go's Reproducible Builds Introducing Source Spotter, a Go Checksum Database auditor and Go toolchain reproducer

Happy to see someone outside Google rebuild/verify Go toolchains. Thanks @agwa.name! www.agwa.name/blog/post/ve...

"So far, Source Spotter has successfully reproduced every toolchain since Go 1.21.0, for every architecture and operating system. As of publication time, that's 2,672 toolchains!"

30.10.2025 17:15 👍 77 🔁 7 💬 0 📌 0

Please send a CL updating x/review/git-codereview to work with this too (grep for auth.cookie).

30.09.2025 00:58 👍 7 🔁 0 💬 0 📌 0
Incident Report: Mis-issued Certificates for SAN iPAddress:1.1.1.1 by Fina RDC 2020 Thank you, Youfu, for bringing this to the community’s attention.

There is some chatter about a CA misissuing a certificate for 1.1.1.1.

This CA (crt.sh?caid=201916, only ~300 certs) is only trusted by the Microsoft root program and the eIDAS QWAC trusted list.

MS has not been actively managing their roots for years, and the EU wanted to push theirs on browsers.

03.09.2025 20:03 👍 44 🔁 14 💬 4 📌 0
Hawaiian gopher shirt pattern.

Hawaiian gopher shirt pattern.

Heading home from #GopherCon 2025 in NYC. As usual, many people asked how to get one of the amazing Go gopher Hawaiian shirts by Renee French. I've posted the details at github.com/rsc/gophersh.... (I know one person who has made pajama pants with the pattern. Socks might be nice too.) Enjoy!

29.08.2025 16:02 👍 57 🔁 12 💬 1 📌 0

Side point: this demonstrates the benefits of plain text file formats. When @robpike.io implemented the coverage tool he made it emit a simple line-based text file that Russ could then manipulate with the ubiquitous Unix tools.

25.04.2025 22:35 👍 26 🔁 3 💬 0 📌 0

That was my first thought but the files aren’t sorted the way comm needs.

26.04.2025 11:09 👍 2 🔁 0 💬 0 📌 0

True enough, but ultimately the problem is some other code that did run and zigged instead of zagging to the code that didn't run. I tried to make that point point earlier ("may prompt useful questions about what logic led to them being skipped...").

25.04.2025 16:30 👍 1 🔁 0 💬 0 📌 0

Overall I think the plumber works pretty well. I wouldn't change much. Language-specific clicking has been replaced by LSPs, but general clicks like URLs, issue numbers, RFCs, email addresses, or phone numbers are still helpful.

25.04.2025 15:56 👍 1 🔁 0 💬 1 📌 0

Use tabs instead.

Years ago, when I worked with someone who insisted on spaces, I wrote a little C program called tab that changed spaces to tabs for my editing; tab -u changed them back.

gist.github.com/rsc/78589f27...

25.04.2025 15:54 👍 1 🔁 0 💬 1 📌 0
research!rsc: Differential Coverage for Debugging

Another fun magic trick!

Differential Coverage for Debugging

research.swtch.com/diffcover

25.04.2025 15:46 👍 94 🔁 28 💬 4 📌 4
Fifty Years of Open Source Software Supply Chain Security - ACM Queue

Fifty Years of Open Source Software Supply Chain Security

We are all struggling with a massive shift that has happened in the past 10 or 20 years in the software industry. For decades, software reuse was only a lofty goal. Now it's very real.

queue.acm.org/detail.cfm?i...
@swtch.com

03.04.2025 16:45 👍 4 🔁 2 💬 0 📌 0
Preview
Tailscale Enterprise Plan 9 Support Securely connect to anything on the internet with Tailscale. Built on WireGuard®️, Tailscale enables you to make finely configurable connections, secured end-to-end according to zero trust principles,...

With 8 minutes to go, @damienmiller.bsky.social sends me the only funny April Fool's joke of the day.

Notably because I was on the team of people writing the firewall rules for Rob Pike's plan 9 desktop at Google.

@tailscale.com fixes it (albeit ten years too late).

02.04.2025 06:54 👍 24 🔁 6 💬 2 📌 1
Preview
Porting Tailscale to Plan 9 Securely connect to anything on the internet with Tailscale. Built on WireGuard®️, Tailscale enables you to make finely configurable connections, secured end-to-end according to zero trust principles,...

Yeah, about that...

tailscale.com/blog/plan9-p...

That gives the backstory :)

02.04.2025 15:53 👍 35 🔁 6 💬 2 📌 0

i was going to say it was hilarious but i wished it was real and then i realized it was

01.04.2025 14:58 👍 14 🔁 2 💬 1 📌 0

I only respect april fools jokes that commit to the bit. This? This is commitment.

01.04.2025 15:04 👍 13 🔁 4 💬 0 📌 0

This was a lot of fun!

01.04.2025 17:58 👍 25 🔁 0 💬 0 📌 0

"Tailscale Enterprise Plan 9 Support"
tailscale.com/plan9

(A little thing I wrote and worked on over the past few weekends with @swtch.com)

01.04.2025 13:24 👍 126 🔁 18 💬 6 📌 6
gopikchr: a yakshave Zellyn's Website

@swtch.com you might be interested in this…
zellyn.com/2022/01/gopi...

05.02.2025 14:02 👍 9 🔁 3 💬 3 📌 0

If you want to take the time to write up a helpful report about them, sure. I wrote this one up because (1) I needed to document somewhere why my change was causing performance differences that it shouldn't have, and (2) the effect was quite significant in a real program.

27.02.2025 21:27 👍 0 🔁 0 💬 1 📌 0

If I could post the explicit link, wait appropriately long, and then edit the comment to use an implicit link, then maybe email would have something useful and web would be even better, at least after the time delay.

But what is the time delay?

3/3

13.01.2025 18:34 👍 2 🔁 0 💬 0 📌 0

I "fix" this by writing an explicit link [TITLE HERE #12345](...), which shows the link number and title in both contexts, but that isn't as nice as the default web display, omits issue status, and so on.

2/3

13.01.2025 18:34 👍 1 🔁 0 💬 1 📌 0

Does anyone know the effective time limit for GitHub comment edits being included in the comment text that is emailed to issue subscribers?

GitHub renders "- #12345" differently on web (nice link with title and issue status) vs email (literally a useless blue #12345).

1/3

13.01.2025 18:34 👍 2 🔁 0 💬 1 📌 0