---
title: "Awesome Go gets even more awesome"
publication: "Go Weekly"
issue: 529
published_at: "2024-10-29"
canonical_url: "https://golangweekly.com/issues/529"
---

Plus why Go developers should try Odin, and maybe Rust too.. |        

#​529 — October 29, 2024 

[Unsub](https://golangweekly.com/leave/*|UID|*)|[Web Version](https://golangweekly.com/issues/529)  

Together with [![WorkOS\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_514,h_98/e_make_transparent/co_white,e_outline:9/tdfxwgk852ui9leli4wm.png)](https://workos.com/?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32024)   

Go Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/vrs6ggptfeddsgddsvqf.jpg)](https://awesome-go.com/)  

[Awesome Go: Almost 3000 Categorized Go Resources](https://awesome-go.com/) — A perennially useful resource that continues to get frequent updates ([almost non-stop](https://github.com/avelino/awesome-go/commits/main/)), and well worth revisiting in this quiet week for Go. You can [contribute projects of your own](https://github.com/avelino/awesome-go/blob/main/CONTRIBUTING.md) to the list too. 

Awesome Go   

[Writing Benchmarks: Performance Testing in Go](https://www.willem.dev/articles/benchmarks-performance-testing/) — A handy article that lays out all that’s possible with Go’s benchmarking tests. After reviewing the tool’s myriad parameters, Willem provides a full repo-backed example to show it off in action. 

Willem Schots   [![\](https://copm.s3.amazonaws.com/d0b5556b.png)](https://workos.com/?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32024) 

[WorkOS: The Modern Identity Platform for B2B SaaS](https://workos.com/?utm_source=cpgo&utm_medium=newsletter&utm_campaign=q32024) — WorkOS is a modern identity platform for B2B SaaS, offering flexible and easy-to-use APIs to integrate SSO, SCIM, and FGA in minutes instead of months. It's trusted by hundreds of high-growth startups such as Perplexity, Vercel, and Cursor. 

WorkOS sponsor   

▶🤖 [Exploring AI-Powered Solutions with Ollama and LangChain Go](https://www.youtube.com/watch?v=rM1CNXyuzFA) — [Ollama](https://ollama.com/) is used to run open source large language models locally and [LangChain Go](https://github.com/tmc/langchaingo) makes it easy to build Go-powered apps that lean on such LLMs. 

Bill Kennedy   

[Why Go Developers Should Try Odin](https://rm4n0s.github.io/posts/2-go-devs-should-learn-odin/) — [Odin](https://odin-lang.org/) is a lesser known but well featured programming language that the author says is part Go and part _‘features you wished Go had’._ It’s worth having on your radar even if you don’t adopt it. 

(a)RManos   

🎤 Along similar lines, John Arundel went on _go podcast()_ to [talk about why learning Rust is a good idea for Go developers](https://gopodcast.dev/episodes/046-lets-talk-about-rust-with-john-arundel)too.  

['Jia Tanning' Go Code](https://www.arp242.net/jia-tan-go.html) — ['Jia Tan'](https://www.wired.com/story/jia-tan-xz-backdoor/) here refers to essentially ‘backdooring’ a codebase with code that _appears_ to be test code but isn’t, by the use of sneakily formatted filenames. 

Martin Tournoij   

[Fuzz Testing Go HTTP Services](https://packagemain.tech/p/fuzzing-http-services-golang) — You can’t possibly test all of the potential inputs your app could get, so why not let your computer bombard your service and see where things break? 

Alex Pliutau   

[Free Course: Temporal 101 with Go](https://t.mp/3ozkW6d) — 🎓 Join this course to learn the basics of Temporal and use Temporal’s Go SDK to build an app that communicates with an external service. 

Temporal Technologies sponsor   

📄 [How to Implement Authorization using Cerbos in Go](https://www.cerbos.dev/blog/how-to-implement-authorization-in-go) Kunal Verma 

📄 [Go and Postgres' `LISTEN`/`NOTIFY`](https://brojonat.com/posts/go-postgres-listen-notify/) – or: _“How I Learned to Stop Worrying and Love PubSub”_ Jon Brown 

📄 [Writing an HTTP Router for AWS Lambda Functions From Scratch with Go](https://blog.dimitarandreev.com/posts/writing-an-http-router-for-aws-lambda-functions-from-scratch-with-go/) Dimitar Andreev 

📄 [Lisp vs. Go](https://funcall.blogspot.com/2024/10/lisp-vs-golang.html) – If you’re not tired of the language comparisons yet. Abstract Heresies  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/z9lcsbvvgwwj7thx6dso.jpg)](https://listmonk.app/)  

[ListMonk 4.0: Self-Hosted Newsletter and Mailing List Manager](https://listmonk.app/) — If you don’t want to pay to use a hosted newsletter system, how about a one binary Go solution? [v4.0](https://github.com/knadh/listmonk/releases/tag/v4.0.1) is a major upgrade introducing multi-user management and auth features (including OIDC), support for CC and BCC headers, syntax highlighting in email HTML, and more. [GitHub repo.](https://github.com/knadh/listmonk) 

Kailash Nadh   

[go-graphviz: Go Bindings for Graphviz](https://github.com/goccy/go-graphviz) — [Graphviz](https://graphviz.org/) is a popular open source graph visualization toolkit and this library lets you use it from Go by way of a cross-platform friendly WebAssembly build. You can now encode/decode DOT notated graphs and render them to SVG or PNG without needing to install Graphviz itself on your system. 

Masaaki Goshima   

[yq: Portable CLI YAML, JSON and XML Processor](https://github.com/mikefarah/yq) — [jq](https://github.com/stedolan/jq) is a popular tool for working with JSON from the command line – yq takes a similar idea to even more formats. Plus it's built in Go! 

Mike Farah       

📰 Classifieds   

_Turo_ simplified authorization with SpiceDB. [Learn how](https://www.authzed.com/customers/turo?utm_source=sponsored_newsletter&utm_medium=display&utm_campaign=golang_newsletter%20). 

--- 

💛 If you're a JavaScript developer or just need to keep up with the modern JavaScript landscape, check out our sister newsletter [JavaScript Weekly.](https://javascriptweekly.com/) Last week's issue had a [ton of great stuff.](https://javascriptweekly.com/issues/710)      

- [TinyGo 0.34](https://github.com/tinygo-org/tinygo/releases/tag/v0.34.0) – The Go compiler for 'small places', like microcontrollers and WebAssembly. v0.34 adds support for `go:wasmexport` as a standardized way to export WebAssembly functions to the host.
- [FastHTTP 1.57](https://github.com/valyala/fasthttp) – Performance-oriented alternative to `net/http` for [specific high-volume scenarios.](https://github.com/valyala/fasthttp#fasthttp-might-not-be-for-you)
- [pdfcpu 0.9](https://github.com/pdfcpu/pdfcpu/releases/tag/v0.9.1) – Go PDF processor. You can now update individual images in PDFs.
- [Roaring 2.4](https://github.com/RoaringBitmap/roaring) – 'Roaring' bitmap data structure implementation.
- [notify 1.0.1](https://github.com/nikoksr/notify) – Library to send notifications to various services.
- [progressbar 3.17](https://github.com/schollz/progressbar) – Basic thread-safe progress bar.
- [Traefik 3.2](https://traefik.io/blog/traefik-proxy-v3-2-a-munster-release/) – Popular Go-powered app proxy.
- [Bun 1.2.5](https://github.com/uptrace/bun) – SQL-first ORM for Go.         

Curated by Peter Cooper and [Glenn Goodrich](https://twitter.com/ruprict). 

[Change your email](https://golangweekly.com/edit_subscription/*|UID|*)
[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
