🇺🇦 #412 — May 20, 2022 |
The Go Weekly Newsletter |
Tim Bray's Go Diaries: Generics — Tim (one of the original co-authors of the XML spec) finds a use case for generics in his Quamima pattern matching library, only to find that there are some ‘bumps in the road’ which he shares here for everyone’s benefit. Tim Bray |
Gophers - Opportunity is Knocking — We’re a premier software engineering firm looking for mid to senior level engineers to help us develop advanced software solutions and applications in Go. Got at least 1 year of professional Go experience and located in the Americas or Western Europe? We want to hear from you. Ardan Labs sponsor |
Calculating Type Sets Is Harder Than You Think — If you like going into the weeds of typing, this is going to be catnip to you as the author picks up on something in the generics spec and walks us through the math (and code) to show just how hard proving a type set is empty really is. Axel Wagner |
|
Let's Build a Distributed Postgres Proof of Concept — Could you put together a mini Postgres in 600 lines of Go? Another example of some of the complicated things you can get done with just a little bit of code in Go (even where third-party packages do much of the lifting.) Phil Eaton |
A Quick Look at a Real Life Use-Case for Generics in Go — A pagination helper.
|
Building Event-Driven Distributed Systems with gRPC, NATS JetStream and CockroachDB
|
🛠 Code & Tools |
Manish Rai Jain
Roaring 1.1: Roaring Bitmap Data Structures in Go — Bitsets/bitmaps are useful data structures but can take up a lot of space if uncompressed. Roaring bitmaps are particularly efficient compressed bitmaps and used in systems like Lucene, ClickHouse, and Spark. If this area interests you, you may also want to check out Dgraph's Sroar which promises even more efficiency as well as their fantastic writeup on the work (illustrated above). Roaring Team |
wazero: Zero Dependency WebAssembly Runtime for Go Devs — A WebAssembly 1.0 spec compliant runtime written in Go and it doesn’t lean on cgo at all. There’s a bunch of sample projects showing off what it can do, but at the minimum you can use it to call code written in other languages (that compile to WASM) from your Go apps. Tetrate Labs |
Breaking Down JSON Web Tokens (JWTs) - Free eBook FusionAuth sponsor |
Sneller: A Vectorized SQL Engine for JSON — Designed to handle (PartiQL-enhanced) SQL queries upon terabytes of JSON without needing a schema, all at speed. Check out the example queries in the README. (Note the AGPL license.) Sneller Inc. |
Cardrank: Go Types and Functions for Working with Cards, Decks, and Poker Hands — Poker is one of those words you tend to avoid in emails like this, but I imagine there are enough of you who are into the game that you’d find this interesting. cardrank |
cli 2.7: A Fast Way to Build Go CLI Apps — The manual outlines all of the key features, but think shell auto-completion, option parsing, help text, etc. Jeremy Saenz and Contributors |
Ffuf 1.5.0: Fast Web Fuzzer Written in Go
|
rrip: Bulk Image Downloader from Reddit Subreddits
|
|