Anton Zhiyanov
@ohmypy
Open source maintainer. Writing interactive technical books at https://antonz.org
Just a not-so-humble reminder that the best way to add interactive examples to your product docs, online course, or blog is with Codapi. It's lightweight, battle-tested, and open source. codapi.org
All jokes aside, I've implemented promises and async/await in Go. Just make sure you NEVER use them. github.com/nalgeon/azor
The new chapter of my interactive Go Concurrency book covers signaling, one-time execution, and object pools. If you think channels are the only way for goroutines to communicate, check it out! antonz.org/go-concurrency…
I've updated the list of Go features by version. Now, each feature has ➀ a link to the documentation, ➁ a link to the proposal, and ➂ a link to the commits. It's fascinating to see how Go has changed over the years. antonz.org/which-go
I asked several hundred Go developers what they like most about the upcoming 1.25 release. Here are the results: ➀ JSON v2 ➁ GOMAXPROCS, synctest, new GC ➂ WaitGroup.Go

You don't need testify/assert to write clear, simple, and expressive Go tests. antonz.org/do-not-testify
Okay, I did it again. I reimplemented Redis using Postgres. Key/value, expiration, maps, lists, sets, and sorted sets — everything in your favorite database. With a Redis-compatible API and wire protocol. github.com/nalgeon/redka
The SQL syntax for SQLite and Postgres is *very* similar. Out of the 21 most complex SQLite queries that handle sorted set operations, I only need to change one to make it work with Postgres. The others work as they are.

I made it through the blockchain hype wave, but I'm not so sure about the current one. I understand the excitement, but I'd rather see 1/10 of the AI-related posts I see now. Maybe even 1/50.
It's such a relief to switch from standard library assertions to more concise ones 😅


Not only is @boyter's scc a great tool for counting lines of code, but it also values my work more than anyone ever will. $22,607 for a two-file Go package! That's why I appreciate it so much :)

How about a micro test assertions Go package with flexible error checking? Only 100 loc. I've named it "be" :) github.com/nalgeon/be

I have a wild idea: add PostgreSQL support to Redka (Redis reimplemented in Go with an SQLite backend). And I think I can pull it off! 🙈
