#​529 — October 29, 2024

Unsub  |  Web Version

Together with  WorkOS

Go Weekly

Awesome Go: Almost 3000 Categorized Go Resources — A perennially useful resource that continues to get frequent updates (almost non-stop), and well worth revisiting in this quiet week for Go. You can contribute projects of your own to the list too.

Awesome Go

Writing Benchmarks: Performance Testing in Go — 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

WorkOS: The Modern Identity Platform for B2B SaaS — 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 GoOllama is used to run open source large language models locally and LangChain Go makes it easy to build Go-powered apps that lean on such LLMs.

Bill Kennedy

Why Go Developers Should Try OdinOdin 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 too.

'Jia Tanning' Go Code'Jia Tan' 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 — 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 — 🎓 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 Kunal Verma

📄 Go and 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 Dimitar Andreev

📄 Lisp vs. Go – If you’re not tired of the language comparisons yet. Abstract Heresies

🛠 Code & Tools

ListMonk 4.0: Self-Hosted Newsletter and Mailing List Manager — If you don’t want to pay to use a hosted newsletter system, how about a one binary Go solution? v4.0 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.

Kailash Nadh

go-graphviz: Go Bindings for GraphvizGraphviz 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 Processorjq 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.


💛 If you're a JavaScript developer or just need to keep up with the modern JavaScript landscape, check out our sister newsletter JavaScript Weekly. Last week's issue had a ton of great stuff.

  • TinyGo 0.34 – 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 – Performance-oriented alternative to net/http for specific high-volume scenarios.

  • pdfcpu 0.9 – Go PDF processor. You can now update individual images in PDFs.

  • Roaring 2.4 – 'Roaring' bitmap data structure implementation.

  • notify 1.0.1 – Library to send notifications to various services.

  • progressbar 3.17 – Basic thread-safe progress bar.

  • Traefik 3.2 – Popular Go-powered app proxy.

  • Bun 1.2.5 – SQL-first ORM for Go.