#​432 — October 14, 2022

Unsubscribe  |  Read on the Web

Together with  Memetria

The Go Weekly Newsletter

Proposal: A try Statement for Error Handling? — Inspired by the results of the recent Go community survey, a self-proclaimed if err != nil expert(!) puts forward an interesting, well-written proposal for adding some tasty syntactic sugar to error handling. It’s only early days for this idea which may well not even pan out, but there’s plenty of room to jump in with your take on it and help push things forward.

Greg Weber

Autostrada: A Codebase Generator for Go Projects — A site that lets you pick from a variety of options (webapp vs JSON API, SQLite vs Postgres – add auth, secure cookies, sessions, etc.) and then download a custom codebase built from those options to continue building an app with. An interesting idea.

Alex Edwards

Memetria: Secure, Scalable, Full-Featured Redis 7 Hosting — The latest Redis features, instrumented and scaled with the tools teams need as they grow.

Memetria sponsor

Go Aha! Moments: Generics — The maintainer of a Go project takes a few steps back from the initial excitement over generics to cover their motivation, some practical use cases, and the pros and cons.

Paul Lorenz

▶  'Hacking' with Go: Part 2 — A year ago, Go Time tackled the use of Go in hacking (in the security sense) by speaking to security researchers familiar with the use of Go in malware, reverse engineering, and more. This time, a researcher from Kaspersky joins the show to talk about Go binaries, reverse engineering them, how to approach writing secure Go code, and more.

Go Time Podcast podcast

IN BRIEF

  • Last week we featured the discussion around redefining Go for loop variable semantics; this week, Hacker News had an extensive discussion about it.

  • Database fans: PostgreSQL 15 has been released with improved sort performance, MERGE support, and a new JSON-based logging format.

  • Mat Ryer has a ▶️ special episode of Go Time following him around Gophercon EU 2022 where chatted to folks like Ron Evans and Bill Kennedy.

Building a New ScyllaDB Go Driver: Faster Than GoCQL and Its Rust Counterpart — While it’s nice to read an article where Go outperforms Rust, the better takeaways here are the various tactics the team used to improve that performance.

Pawel Putra (Scylla)

💡 If you're not familiar with ScyllaDB, it's a rapidly scalable, Apache Cassandra-inspired, NoSQL database written in C++.

How to Create a PDF in Go: A Step-By-Step Tutorial — When you need to dynamically generate a PDF, such as for an invoice or report. However, note that it leans upon UniPDF, a commercial library from UniDOC. If you want something more open, Maroto provides another option.

Marvin

Akuity is the Argo CD as a Managed Service from the Creators of Argo — Akuity's architecture increases security, improves scalability, provides insights, and saves money. Start a free trial.

Akuity sponsor

▶  Building a CLI Kanban Board with Bubble Tea — Direct from the Bubble Tea creator’s official channel.

bashbunni

Go Worker Pool: The Concurrency Powerhouse — Scaling with concurrency the right way using a well-known pattern.

Saurabh Nayar

🛠 Code & Tools

A Port of Tcl to Go — Tcl is a widely used, reasonably minimalist multi-paradigm language (see basic syntax here) often associated with embedding and lightweight GUI work (by way of Tcl/Tk). This is a port of the Tcl implementation to Go by way of the ccgo C to Go transpiler.

cznic and Tcl Authors

Pagoda: Rapid, Full-Stack 'Starter Kit' — If you don’t mind how opinionated it is, Pagoda acts as a foundation of frameworks and modules for building a modern full-stack Go app. Echo and Ent are on the backend talking to Postgres and Redis with htmx and Alpine.js up front.

Mike Stefanello

Forget Everything You Know About SSH — Say goodbye to managing SSH keys. Tailscale SSH works where Tailscale works and is free for personal use up to 20 devices.

Tailscale sponsor

Expr: Expression Evaluation Within Go — Got expressions? Expr is an engine for evaluating them, whether it’s for arithmetic, business rules, or data filtering. We last linked to this three years ago but it has had a mild renaissance on social media this week.

Anton Medvedev

Cute Print: A Minimalist Beautiful Go Printing / fmt Alternative — A minimal but opinionated way to print out attention grabbing messages on the terminal. See the screenshots in the README.

zakaria chahboun

Circumflex: A Terminal Based Hacker News Client — A Bubble Tea-based terminal client for the popular tech news aggregator.

Ben Sadeh

Tunny: A Goroutine Pool Library — A library for spawning and managing a pool of goroutines such as for when you need to limit the concurrent processing of jobs.

Ashley Jeffs

Jobs

Senior Golang Software Engineer — Seeking Sr Software Engineers to build innovative technology that connects learners with experts in any subject, anytime, anywhere.
Varsity Tutors (Nerdy)

Senior Backend Engineer – Go/Golang (f/m/d) — Join our team working on real life solutions for the future of public transport.
ioki

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

🎁 Lagniappe!

LearnGo: A Large Collection of Go Examples, Exercises, and Quizzes — A repository that explains Go concepts with hundreds of exercises to help folks who want to ‘learn by doing’ (or by reading lots of programs, if you prefer).

Inanc Gumus