#​397 — January 28, 2022

Unsubscribe  |  Read on the Web

Go Weekly

go-binsize-treemap: Render a Visualization of Go Executable Space Usage — This is easier to look at than explain in writing! Essentially it’s a tool that generates an SVG treemap of how the space inside a Go-produced executable is used. Not necessarily super useful, but fun to look at and could throw up some surprises. Bloaty is another tool that can help in this area and does a deeper analysis.

Nikolay Dubina

'I’m Porting the TypeScript Compiler to Go' — The author here is a big-time Rust advocate (who created swc) but recognizes that Go might be a better tool particularly for the type checker and explains why here. This post also fuelled a rather extensive Hacker News discussion on the complications involved and on Go vs Rust for such work.

DongYoon Kang

Run Go Unikernels 2X as Fast on GCP and 3X as Fast on AWS — Run your first open source go unikernel in seconds. Go unikernels aren't just faster than docker - they are faster than Linux itself. Unikernels are easier to debug, orchestrate and safer too. Try it now.

NanoVMs sponsor

What Happens When You Profile a Continuous Profiler? — Pyroscope made a presumption about the performance of Go’s binary search algorithm implementation only to find it lacking through profiling and trial and error.

Ryan Perry (Pyroscope)

BRIEF BYTES:

Jobs

Backend / API Engineer at Textile (Remote) — Written primarily in Go, built on top of protocols like Libp2p, IPFS, & Filecoin, and is deployed to Google Kubernetes Engine. You'll interact with layers throughout the stack and own responsibilities from R&D to implementation and production monitoring.
Textile

Golang Developer at X-Team (Remote) — Join the most energizing community for developers and work on long-term projects for Riot Games, FOX, Sony, Coinbase, and more.
X-Team

Find a Job Through Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired

How to Build a Web App with Go and SQLite — A five-part series that uses the Gin Web Framework to build a CRUD API that includes versioning and handling OPTIONS requests properly.

Jeremy Morgan

learning-go: Minimal Working Examples of Go's Unique Features — All in one long file.

Mathieu Desrochers

256 Shades of Gray: Converting Color Images to Grayscale — Not only that, but monochrome as well. Some fun image fiddling afoot here.

Unknown

🛠 Code & Tools

City Limits: A SimCity-esque Game in Go — A small Go and Ebiten powered isometric city-building sim produced for a game jam. The source is here. I’m impressed just how realistic the “Lego” blocks used here look. A fun use of Go!

Trevor Slocum

rueidis: A New Performance Oriented Go Redis RESP3 Client — If you’re a heavy Redis user, this might be worth a look as it supports auto pipelining of non blocking commands, connection pooling, (optional) client side caching, and more.

Rueian

timediff: Produce Human Readable, Relative Time Differences — For example: timediff.TimeDiff(time.Now().Add(-3 * time.Minute)) would produce “3 minutes ago”. English only at this point.

MergeStat

Build Video for Your Go App That Just Works

Mux sponsor

eBPF 0.8: A Pure Go eBPF Library — Utilities for loading, compiling, and debugging eBPF programs.

Cloudflare and Cilium

termle: The Wordle Word Game in the Terminal — Every language seems to be getting its own Wordle implementation and Go is no exception.

Jeremy Loy

wasm-maze-generator: A Simple WASM Maze Generator in Go — Neat minimal but practical example of writing Go code to be run on the Web.

Rob King

Milvus 2.0: A Vector Database for Scalable Similarity Search
The Milvus Project

ClickHouse: A Go SQL Database Driver for ClickHouse
Kirill Shvakov

🕰 ICYMI (Older stuff you may have missed...)