#​459 — May 9, 2023

Unsub  |  Web Version

Together with  Teleport logo

Go Weekly

go-callvis: Visualize the Call Graph of Go Programs — We first linked to this project over six years ago, but it’s still going strong and has reached version 0.7. The idea is simple: turn the call graph of a Go program into a visual overview courtesy of Graphviz. You can also navigate the graph if you use its interactive viewer.

Ondrej Fabry

👀 .ʕ◔ϖ◔ʔ As an Alternative to .go? — It’s nice to see Russ having some fun after the more serious telemetry proposal. Inspired by another language’s attempt to use an emoji as a filename extension, Russ considers an interesting alternative to .go that looks a little more gopher-y.

Russ Cox

Kubernetes API Access Security Hardening — The control plane controls k8s nodes, nodes control pods, pods control containers... But what controls the control plane?

Teleport | goteleport.com sponsor

Go 1.20.4 and Go 1.19.9 Released — Minor releases that include three security fixes for html/template, all (1, 2, 3) oriented around sanitization and improper handling of Web content.

Carlos and Dmitri for the Go team

IN BRIEF:

A FAAS in Go with WASM, WASI and.. Rust? — Eli won me over straight away with “This post is best described as a technology demonstration.” There are a lot of moving parts here, but the idea is showing how you could create a simple serverless FaaS (Functions as a Service) system in Go that could run modules written in any language that can target WebAssembly.

Eli Bendersky

Game Development in Go: Ebitengine ShadersShaders? Aren’t they for 3D rendering? Not entirely. The Ebitengine 2D game engine supports fragment/pixel shaders which essentially transform pixels from one representation to another and can be used for various effects.

Iskander Sharipov

Temporal 101 & 102 Courses in Go — Learn Temporal's open source key concepts and best practices with our free self-paced training courses in Go.

Temporal Technologies sponsor

Go's arm64 Function Call Assembly — An analysis of the assembly code emitted by Go for function calls on arm64.

Felix Geisendörfer

▶  Production Ready Concurrency — Concurrency is difficult to get right even when a language offers convenient features for working with it. Egon’s preference? Avoid concurrency where possible. But for when you can’t.. he has some tips.

Egon Elbre

🛠 Code & Tools

mimetype: Library for Detecting MIME Types and Extensions — Supporting 172 different types, you pass in data, a stream, or filename and, hopefully, find out what type of data you’re working with.

Gabriel Vasile

Dolt 1.0: It's Like Git.. for Data — Dolt is an SQL database that introduces git-like forking, cloning, branching and merging features: “It’s like Git and MySQL had a baby,” they claim. GitHub repo.

Tim Sehn

Tuple – How Remote Devs Pair with Zero Friction — Why waste hours setting up Zoom just to review a couple lines of code? Tuple brings your team together in seconds.

Tuple sponsor

Gio: Immediate Mode GUI App Development in Go — Supports all major platforms, including WebAssembly, Android, and iOS/tvOS. Gio has few dependencies and the site has several examples showcasing various apps (including Tailscale’s Android client).

Gio

Milvus: Vector Database Built for Scalable Similarity Search — An open-source vector database, built in Go, that claims millisecond search over trillions of vectors and offers a “boot camp” showing potential ways to use the system.

Milvus

Counterfeiter: Generate Self-Contained, Type-Safe Test Doubles — More quickly generate fake implementations of an object’s collaborators.

Max Brunsfeld

spaGO: A Pure Go Machine Learning Library — Spago is self-contained, in that it uses its own lightweight computational graph both for training and inference, making it easier to understand.

NLP Odyssey

SFTPGo 2.5: A Full Featured SFTP Server Built in Go — Note the GNU AGPLv3 license.

Drakkan

Jobs

Game of Realms Contributor in Gno.land — Want to do something different? Help build Gno.land, the next-generation smart contract platform for web3. We hire contributors.
Gno.land

Find a Job Through Hired — Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.
Hired

🧑‍💻 Got a job listing to share? Here's how.