#​414 — June 3, 2022

Unsubscribe  |  Read on the Web

The Go Weekly Newsletter

😇  It's Time to Share Your Feedback About Developing with Go — Go’s latest official developer survey is here (and with a new twice-annually cadence). It’s open for the next few weeks (until June 21) and should take around 5-10 minutes to complete. The aggregated results will be shared with the community and used by the Go team to make the language and its ecosystem better.

The Go Team

The 'Hello World' of Creating WebAssembly with Go? — We like simple, straight forward examples, particularly when it comes to tinkering with unusual or new combinations of tools and tech. If you’re new to WebAssembly, this may be just what you need to figure out the basics of writing Go code and having it be callable from JavaScript (remove the "fmt" import from the code if you copy/paste, it’s not needed..)

Tibor Hercz

Gophers - Opportunity is Knocking — We’re a premier software engineering firm looking for mid to senior level engineers to help us develop advanced software solutions and applications in Go. Got at least 1 year of professional Go experience and located in the Americas or Western Europe? We want to hear from you.

Ardan Labs sponsor

Go 1.18.3 and 1.17.11 Released — Minor point releases that include four security fixes for issues with crypto/rand, crypto/tls, os/exec and path/filepath (all but one is Windows specific too).

Dmitri and Alex for the Go team

What Made Go So Popular? The Language's Creators Look Back — A month ago we linked to an ACM article written by five of Go's best known engineers where they covered the design decisions taken over the years. This reflection in The New Stack is a little higher level and perhaps easier to share if you're trying to sell someone on the language.

David Cassel

Making Go Workloads Up to 20% Faster with Go 1.18 and AWS Graviton — While we were distracted by generics, Go 1.18 also got a lot faster on 64 bit Arm and given AWS has their own range of 64 bit Arm processes (Graviton) they’re ready to show just how much faster (spoiler: roughly 10-15%, but the prices are lower too). Hopefully some of this would apply to Apple Silicon and devices like the Raspberry Pi too.

Syl Taylor (AWS)

Live Reloading in Go with Air — No, not the still-popular nitrogen and oxygen cocktail, but Air, a tool that watches your project and reloads things when files change.

Gurleen Sethi

What JavaScript's npm Can Learn from Go — Go’s attitude to dependency management mitigates a lot of supply chain issues, but could some of its ideas be taken to the JavaScript world? This post introduces an experiment to recreate the go mod vendor experience with npm.

Danny Hermes

🛠 Code & Tools

ZincSearch: A Light(er)weight Go-Powered Alternative to Elasticsearch — I remember when Elasticsearch was the far easier to set up Solr, but here’s the next generation, hopefully. There’s a seven-minute screencast if you want to see it in action. It can act as a drop-in replacement for Elasticsearch too, so you don’t have to relearn everything.

Zinc Labs

Encore: A Go API Backend Framework with 'Superpowers' — Encore, the kitchen-sink backend development engine, just released version 1.2.0 (with improved HTTP header and authentication support) so now’s a good time to check out its myriad feature set for creating distributed apps.

Encore

Debug Go Apps Without Stopping Them in Prod. Try Rookout Free Today

Rookout sponsor

Bluemonday: A Fast Go HTML Sanitizer — Takes untrusted user generated content as an input and returns HTML sanitized against an allowlist of approved elements and attributes.

Microcosm

Compose Transporter 1.1: Sync Data Between Persistence Engines — I love how it calls itself “like ETL only not stodgy”. This Go-powered tool lets you connect together various databases (MongoDB, Postgres, MySQL, Elasticsearch, and more), files, and other resources, run some basic transformations (optionally) and then send the data off elsewhere.

Compose

TestFixtures 3.7: Ruby on Rails-Like Test Fixtures for Go — A mature library that takes the opinion that writing tests against a real database is the best approach and provides a way to define predictable fixtures to make this easier.

Andrey Nering

Tarmac: Framework for Building Distributed Services with WebAssembly — Aims to be a language agnostic microservices framework where functions can be written in any language that compiles to WebAssembly.

Benjamin Cane

Jobs

Senior Software Engineer - 100% Remote (Argentina | Canada | EU) — Building cloud-native, real-time payment technology using Go, AWS, GCP, K8s, Docker, Terraform and Nats. Find out more here.
Form3

Senior Backend Software Engineer - Remote — Hiring experienced Go developers interested in building open source software around networking, security and distributed systems.
Teleport

Senior Backend Go Engineer - Remote (US) — Petabytes of data, millions of requests a second! Help us build our AdTech platform. Go, GCP, gRPC, Bigquery, Bigtable, Spanner.
MadHive

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