Advertisement · 728 × 90

Posts by dominikh

It's not perfect though. I've had more luck isolating higher numbered cores and couldn't get 0-2 to truly be isolated.

4 days ago 0 0 0 0

On Linux, the "tuna" utility lets you isolate CPUs so that no processes or IRQs get scheduled on them. taskset still lets you use those CPUs, making this a great combo for running benchmarks with less noise.

There are also isolcpus and cgroups, but those are more involved to set up.

4 days ago 8 0 1 0

The fix didn't work after all, and I'm over trying to get it to work.

1 week ago 0 0 0 0

Happy resolution: yelling at clouds gets actual people to respond and look at the problem. Both problems should be fixed now. (This would've been a great response time if it weren't for the support bot!)

4 weeks ago 2 0 1 0

A friend (with his own billing-related problems with the program) reached out to actual Anthropic employees, who just told him to write an email. Guess who replied to the email? A bot.

Anthropic call the program their "way of saying thank you." Well, fuck you, too.

4 weeks ago 2 0 1 0

The "support" on the website is a useless chatbot that eventually gives up and claims to get a human involved. After 14 days, the ticket just disappeared, never having gotten a response. I opened another ticket, which too has gone unanswered so far.

4 weeks ago 1 0 1 0

Anthropic's "Claude for Open Source" program has been an awful experience for me. I applied and got invited a couple days later. When I used the promo link to get free Max, it charged me $200, anyway. It has been 17 days of me trying to talk to a human to rectify that.

4 weeks ago 6 1 2 1
Preview
Turn Dependabot Off I recommend turning Dependabot off and replacing it with a pair of scheduled GitHub Actions, one running govulncheck, and the other running CI against the latest version of your dependencies.

Dependabot security alerts have terrible signal-to-noise ratio, especially for Go vulns. That hurts security!

Just turn it off and set up a pair of scheduled GitHub Actions, one running govulncheck and the other running CI with the latest version of your deps.

Less work, less risk, better results!

1 month ago 91 20 4 1

“Using go fix to modernize Go code” by Alan Donovan — https://go.dev/blog/gofix

#golang

1 month ago 61 23 0 4
Advertisement
Preview
Staticcheck 2026.1 release notes Improved Go 1.25 and Go 1.26 support This release updates Staticcheck’s database of deprecated standard library APIs to cover the Go 1.25 and Go 1.26 releases, as well as to add some crypto/elliptic d...

And it's out! staticcheck.dev/changes/2026...

2 months ago 10 1 0 0

I'm putting the finishing touches on the Staticcheck update for #golang 1.26. You can expect a release by the end of the week.

2 months ago 29 4 1 1

What if I told you that the building the torment nexus is an extremely interesting challenge from an engineering perspective

11 months ago 1139 192 22 19

we all use “luddite” these days to describe someone who is reflexively anti-technology. but the original luddites were specifically against technology eliminating jobs and reducing pay in exchange for cheaper, inferior goods

10 months ago 170 57 0 1
Leaving Google – Airs – Ian Lance Taylor

Ian Lance Taylor deserves an award for the most patient person in Open Source.

He also has an amazing ability to translate the clarity of his thinking into the written word.

He has had such impact on the way people create software.

I really hope he continues to contribute to Go.

11 months ago 67 20 4 2
Preview
runtime: green tea garbage collector · Issue #73581 · golang/go Green Tea 🍵 Garbage Collector Authors: Michael Knyszek, Austin Clements Updated: 2 May 2025 This issue tracks the design and implementation of the Green Tea garbage collector. As of the last update...

New experimental garbage collector for Go programs! github.com/golang/go/is...

11 months ago 123 41 2 2

This wouldn't have happened with C strings :P

1 year ago 1 0 0 0
type Cache[K, V any] struct {
	m sync.Map
}

// Get returns the result of new.
//
// If Get was called on k before and didn't return an error, Get will return the
// same value it returned from the previous call.
//
// If Get is called concurrently on the same k value, new might get called
// multiple times. All calls will return the same value or an error from new.
//
// The cache is evicted some time after k becomes unreachable.
func (c *Cache[K, V]) Get(k *K, new func() (*V, error)) (*V, error) {
	p := weak.Make(k)
	if cached, ok := c.m.Load(p); ok {
		return cached.(*V), nil
	}
	v, err := new()
	if err != nil {
		return nil, err
	}
	if cached, loaded := c.m.LoadOrStore(p, v); loaded {
		// We lost the race, return the cached value and discard ours.
		return cached.(*V), nil
	}
	runtime.AddCleanup(k, c.evict, p)
	return v, nil
}

func (c *Cache[K, V]) evict(p weak.Pointer[K]) {
	c.m.Delete(p)
}

type Cache[K, V any] struct { m sync.Map } // Get returns the result of new. // // If Get was called on k before and didn't return an error, Get will return the // same value it returned from the previous call. // // If Get is called concurrently on the same k value, new might get called // multiple times. All calls will return the same value or an error from new. // // The cache is evicted some time after k becomes unreachable. func (c *Cache[K, V]) Get(k *K, new func() (*V, error)) (*V, error) { p := weak.Make(k) if cached, ok := c.m.Load(p); ok { return cached.(*V), nil } v, err := new() if err != nil { return nil, err } if cached, loaded := c.m.LoadOrStore(p, v); loaded { // We lost the race, return the cached value and discard ours. return cached.(*V), nil } runtime.AddCleanup(k, c.evict, p) return v, nil } func (c *Cache[K, V]) evict(p weak.Pointer[K]) { c.m.Delete(p) }

weak.Pointer (Go 1.24+), runtime.AddCleanup (Go 1.24+), and sync.Map combine wonderfully into a 20-lines weak map. #golang

It associates values to keys, with automatic garbage collection once the key becomes unreachable. Using it to tie precomputed FIPS keys to PrivateKey values we can't modify.

1 year ago 173 15 9 0

If your app dispays text that can't be interacted with as text, I hate you with every fiber of my being.

1 year ago 7 3 1 0

Programming with the help of an AI-powered coding assistant (like GitHub Copilot) is akin to pair programming with someone eager to impress, not particularly bright, and who won't shut up. Count me out. 🙅

1 year ago 15 4 3 0
Advertisement

Terminals or at least "ttys" are not modern. They are a chimera merging disparate properties of VGA, HDLC, and good old teletypes. I know I'm in the minority and always have been, but to me they are an anchor holding us back in our tech lives.

Your phone does not have a terminal.

1 year ago 76 13 19 1
Post image Post image Post image

me: i only write for my own enjoyment
me writing:

1 year ago 1130 549 9 27

Merry Christmas to investors who have sank billions of dollars into AI products. This is truly world-changing stuff.

1 year ago 1505 337 31 3

"Can you write this complex data transformation script to hit several different APIs and generate this really particular csv?"

Sure

"Can you automatically import it into a Google sheet?"

Never going to happen, literally impossible

1 year ago 4 1 0 0

@leejarvis.me Thanks mate!

1 year ago 0 0 1 0

Using generics and iterators in #golang feels like they've always been here. Just like I struggle to remember what I even did before modules.

1 year ago 14 1 1 0

Since I haven't been writing code full time professionally, I sometimes worry that I've lost a step.

Then someone comments about how they don't like #golang at a wedding reception and I instinctively reply "Oh yea? What do you use? Rust? Fuck off." and I know I've still got it.

1 year ago 4 1 0 0
Preview
Geomys, a blueprint for a sustainable open source maintenance firm Announcing Geomys, a small firm of professional maintainers with a portfolio of critical Go projects.

In 2022, I left Google in search of a sustainable approach to open source maintenance. A year later, I was a full-time independent maintainer.

Today I’m announcing the natural progression of that experiment: Geomys, a small firm of professional maintainers with a portfolio of critical Go projects.

1 year ago 189 50 3 5

I have some exciting news on the professional open source maintainer front! 👀 ✨ 🥁

Announcing it on Monday to Maintainer Dispatches (filippo.io/newsletter) and at GopherCon Chicago.

1 year ago 23 2 1 0