Sign in

Damien Neil

@misago.org
748 followers 44 following 57 posts

Gopher. Mostly posts cat pictures. Probably not actually the most evilest cat in the world. he/him

PostsRepliesMedia
Damien Neil @misago.org · 27/08/2026
Kage Baker is responsible for me being married. 20ish years ago, I saw an online dating profile that mentioned liking her books, and said “that sounds like someone I’d like to meet”. Still together.
040
Damien Neil @misago.org · 15/07/2026
They’re all out of bubblegum. That’s the crisis.
020
Damien Neil @misago.org · 17/04/2026
“Thou shalt not make a machine in the likeness of a human mind.”
030
Damien Neil @misago.org · 08/04/2026
You’re right, still time for us to yank that football away.
040
Damien Neil @misago.org · 08/04/2026
Holy cheese my untyped composite literal proposal from 2015 just got accepted. #golang github.com/golang/go/is...
github.com
proposal: spec: type inferred composite literals · Issue #12854 · golang/go
Composite literals construct values for structs, arrays, slices, and maps. They consist of a type followed by a brace-bound list of elements. e.g., x := []string{"a", "b", "c"} I propose adding unt...
4314
Damien Neil @misago.org · 19/03/2026
The subtle and complicated ones are good, nobody has any opinions.
071
Damien Neil @misago.org · 18/03/2026
Next time I touch a proposal that isn’t both complicated and obscure, slap me
160
Damien Neil @misago.org · 29/01/2026
You did indeed! We should do your proposal as well to make the simple case of using httptest and synctest together easy. Not sure we’ve found the right API yet, though.
050
Damien Neil @misago.org · 13/03/2025
High on my list of projects that got out of hand. It was supposed to just be openat! (Turns out openat has some startlingly sharp edges.)
060
Reposted by Damien Neil
Go @golang.org · 12/03/2025
“Traversal-resistant file APIs” by Damien Neil — go.dev/blog/osroot #golang
go.dev
Traversal-resistant file APIs - The Go Programming Language
New file access APIs in Go 1.24.
112025
Damien Neil @misago.org · 28/02/2025
I have a copy of IWFNE originally owned by my late elder brother. It contains a note from him on the title page: “This book rots.” Couldn’t say it better myself.
000
Damien Neil @misago.org · 25/02/2025
movie you’ve watched more than six times, gifs only
Walter Matthau looking like the saddest basset hound in the world so you just want to give him a doggy snack and scritch his ears
000
Damien Neil @misago.org · 19/02/2025
I’m tremendously excited about the synctest package. There’s usually a tension between making async code idiomatic or testable. Synctest makes the idiomatic code testable. #golang go.dev/blog/synctest
go.dev
Testing concurrent code with testing/synctest - The Go Programming Language
Go 1.24 contains an experimental package to aid in testing concurrent code.
2327
Damien Neil @misago.org · 16/01/2025
True story: Baby shoes. Never worn. Huge feet.
010
Damien Neil @misago.org · 08/01/2025
One element I particularly love is that mechanical failures don’t feel like narrative failures. Most games, you flub a critical die roll and you’re going to get a less satisfying story. Disco often gives you a more satisfying (if less successful) one.
130
Damien Neil @misago.org · 04/01/2025
14/20
Patternmaster, Octavia Butler
000
Damien Neil @misago.org · 02/01/2025
13/20
Paladin of Souls, Lois McMaster Bujold
110
Damien Neil @misago.org · 02/01/2025
Already bought and read it! It’s great. I love how unapologetically tragic Sarah is, without being miserable at all. She’s not very good at being an adult (with some justification) and that’s okay.
000
Damien Neil @misago.org · 02/01/2025
12/20
Digger, Ursula Vernon
100
Damien Neil @misago.org · 01/01/2025
11/20
Winter Tide, Ruthanns Emrys
110
Damien Neil @misago.org · 31/12/2024
10/20
Lent, Jo Walton
100
Damien Neil @misago.org · 30/12/2024
9/20
The Fifth Season, N.K. Jemisin
110
Reposted by Damien Neil
Laurie J @lmjake.bsky.social · 26/12/2024
Christmas cats for @misago.org
A calico muppet cat possessively snuggles a jeans-clad leg in front of a lit Christmas tree.A velvet house panther looks up while atop a crocheted blanket that is atop a human.
041
Damien Neil @misago.org · 29/12/2024
8/20
The Hands of the Emperor, Victoria Goddard
100
Damien Neil @misago.org · 26/12/2024
7/20
The Left Hand of Darkness, Ursula K. LeGuin
210
Damien Neil @misago.org · 24/12/2024
6/20
The Mask of Mirrors, M.A. Carrick.
110
Damien Neil @misago.org · 23/12/2024
5/20
The Sparrow, Mary Doria Russell
120
Damien Neil @misago.org · 23/12/2024
4/20
Too Like the Lightning, Ada Palmer
110
Damien Neil @misago.org · 21/12/2024
3/20
The Steerswoman, Rosemary Kirstein
110
Damien Neil @misago.org · 20/12/2024
2/20
The Blue Sword, Robin McKinley.
110
Damien Neil @misago.org · 19/12/2024
20 books that have stayed with you or influenced you. One book per day. No explanations, no reviews, just covers.
Merchanter’s Luck, by C.J. Cherryh
130
Damien Neil @misago.org · 16/12/2024
And now, a cat.
A floofy muppet cat occupies a blanket with supreme satisfaction. This blanket is hers, not yours, and all is right with the world.
040
Damien Neil @misago.org · 16/12/2024
The Go protocol buffer Opaque API is released! go.dev/blog/protobu... This is a new, optional version of the generated code API which hides the internal implementation details. It’s been in use inside Google for years now. Congrats to the Go protobuf maintainers on the open source release! #golang
go.dev
Go Protobuf: The new Opaque API - The Go Programming Language
We are adding a new generated code API to Go Protobuf.
1236
Reposted by Damien Neil
Michael Pratt @prattmic.com · 13/12/2024
I just closed go.dev/issue/54766 as fixed! Please try out the RC! 🇨🇭┳┳
go.dev
runtime: use SwissTable · Issue #54766 · golang/go
Abstract From ByteDance Programming Language Team We suggest using SwissTable in the runtime to replace the original implementation of the hashmap. SwissTable is now used in abseil and rust by defa...
2489
Damien Neil @misago.org · 02/12/2024
Yes?
A floofy muppet of a cat looks calmly at the camera, her tranquil expression belying the madcap shenanigans that will soon ensue.
040
Damien Neil @misago.org · 27/11/2024
Cocoa.
A velvet house panther who most definitely did not hork a hairball onto the bed at six in the morning stares innocently at the camera.
030
Damien Neil @misago.org · 27/11/2024
This technique scales poorly to more bits. :)
000
Damien Neil @misago.org · 27/11/2024
So: Four channels! Readable/writeable/neither/both. At most one channel contains a value. To wait for readability, you select on readable/both, and so on. Two bits, four states, four chans.
110
Damien Neil @misago.org · 27/11/2024
In an in-memory net.Conn implementation, I found that I needed two bits of state: Readable or writable. Reads block until the conn buffer contains data, writes block until there’s space in the buffer. (This is not a Conn, this is one direction of traffic on a pair of Conns.)
100
Damien Neil @misago.org · 27/11/2024
A silly Go channel trick: The idea behind the gate type (pkg.go.dev/github.com/n...) is to use two channels to store one bit of state. If one channel contains a value the bit is set; if the other it is not.
pkg.go.dev
gate package - github.com/neild/gate - Go Packages
1131
Damien Neil @misago.org · 27/11/2024
Hello!
A cat in a bag, looking out at the world with a mad glee that portends the commission of many shenanigans in the near future.
030
Damien Neil @misago.org · 27/11/2024
My grandparents had nine children, gave them good food, top class educations, the works. My grandparents also lived in an honest-to-god castle with a full-time staff of live-in servants, so, y’know. I don’t measure my parenting against them.
010
Damien Neil @misago.org · 26/11/2024
There’s a need for a really good fake net Listener/Conn. net.Pipe works, but it’s unbuffered which can be limiting. The good thing is that the net package has good abstractions, so this doesn’t need to be in std.
110
Damien Neil @misago.org · 25/11/2024
Yes, the example is not a very efficient queue. If you want a more robust one, there’s an elegant two-slice queue in net/http (not my work).
110
Damien Neil @misago.org · 24/11/2024
You could make the zero value usable, but at the cost of adding a sync.Once or equivalent to control initialization. Probably not worth the cost; gate is built on channels, and since channels require explicit initialization it does too.
110
Damien Neil @misago.org · 24/11/2024
I don’t plan on changing working code that uses sync.Cond today, but I’ve been using gates or the equivalent in new code. The type is so simple that it’s often easier to include a copy of it in a package rather than add a dependency.
010
Damien Neil @misago.org · 24/11/2024
Good morning.
Upper quarter of a bald head. A cat is floofing the head.
070
Reposted by Damien Neil
Laurie J @lmjake.bsky.social · 21/11/2024
I have been asked by @misago.org to post more pictures of our cats for him to share, so here are the girls enjoying a sunbeam nap.
Close up of adorable cat heads snuggled together in a sunbeam Two adorable cats, one black and the other calico, snuggled up for a nap in a sunbeam.
011
Damien Neil @misago.org · 21/11/2024
Hello, Bluesky. Have a cat.
A grumpy, balding, middle-aged man wearing glasses with a cat on his head.
0120
Reposted by Damien Neil
Laurie J @lmjake.bsky.social · 05/11/2024
The silky void cat and the floofy muppet cat send you serenity for today.
131