Go Gazette #91
Weekly curated resources for Golang devs.
BY DAVE CHENEY
2 minutes - Ten engineering values for writing simple, readable, maintainable Go code. Presented at GopherCon Israel 2020.
BY JULIE QIU
3 minutes - In 2019, we launched go.dev, a new hub for Go developers. As part of the site, we also launched pkg.go.dev, a central source of information about Go packages and modules.
BY PAUL KRILL
5 minutes - Proposals for the next version of Go include new Vet checks and a minor language adjustment.
BY VINCENT BLANCHON
5 minutes - Loops are powerful concepts in programming and quite easy to handle. However, it has to be translated into basic instructions the computer can understand.
BY MICHAEL STAPELBERG
4 minutes - When spawning a child program, for example in an integration test, it is often helpful to know when the child program is ready to receive requests.
BY TOM ARTIOM FIODOROV
3 minutes - Back in the day when I was teaching myself how to program and land a programming job, I’d spend quite some time learning basic data structures such as queues, stacks, heaps, linked lists, etc. To my disappointment though, now that I am employed in tech I almost never get a chance to implement these no more. Recently though I had a chance to brush up on my Computer Science 101 knowledge.
BY JESSE HOWARTH
8 minutes - Recently, we drastically improved the performance of a service by switching its implementation from Go to Rust. This post explains why it made sense for us to reimplement the service, how it was done, and the resulting performance improvements.
BY IVAN VELICHKO
4 minutes - An overview of some interesting projects written in Go and dealing with containers.
BY GERGŐ HUSZTY
5 minutes - As part of my daily job working on IBM Cloud, sometimes I write code in Golang. This article is about a technique that I found useful.
BY ADAM COMER
5 minutes - When building our Audio Ingestion microservice, we found that NodeJS wasn’t performant enough. Take a look at how we ended up solving the problem with Go.
BY GIANLUCA ARBEZZANO
8 minutes - As at InfluxData we use K8s, our services already expose the pprof HTTP handler and we can not instrument all the services with the Profefe SDK, for those reasons we had to write our own collectors capable of getting pprof profiles via the Kubernetes API and to push them into Profefe.
BY DANILA KUTENIN
8 minutes - I am a C++ programmer and really like all this kind of C-ish stuff – from raw assembly to high level abstractions and SFINAE methods. For the past three weeks I managed to write lots of Go code – around 10k LOC without almost knowing anything when I started.
BY JONATHAN TURNER
5 minutes - This blog entry captures some lessons learnt when migrating the gokrb5 library to use modules for dependency management.
BY ILIJA EFTIMOV
12 minutes - Things can get tricky when we are testing a unit whose output is cumbersome to hardcode. The straightforward remedy is to extract this cumbersome value to a file that we can then read and compare the output of the unit under test to the output of the file. In Go, we call such files golden files.
BY ABDULLAH GARCIA
8 minutes - This article is the first of several to come about security.
BY MARTIN TOURNOIJ
3 minutes - Turns out it’s almost shockingly easy to run Go CLI programs in the browser with WebAssembly (WASM); as an example I’ll use my uni program.
BY BAS DIJKSTRA
6 minutes - Just over a year ago, I was working in a team that, among other things, was responsible for developing and running some microservices that delivered data to a front end. It turned out those services were written in Go.
BY GIANLUCA ARBEZZANO
5 minutes - Writing integration tests with TestContainers, including examples using Java and Golang.
- Load balancing goroutines in Go- 4 min
- Building a simple Rest API with Go- 6 min
- Build a web server with Go - Part 1- 4 min
Github released their new CLI written in Go.
BY CARLOS BECKER
2 minutes - GoReleaser‘s journey begins in December 21, 2016: the day I made its very first commit. It has been a long road since then.
BY ARJUN MAHISHI
4 minutes - A CLI tool which is used via go generate.
4 minutes - Interrupts are crucial if you want to do anything high-performance on microcontrollers. Unfortunately, the only close substitute in the Go language is rather heavyweight. Therefore TinyGo uses a simpler way to work with interrupts.
BY KENTA IWASAKI
8 minutes - The release involves a complete refactor that has allowed for Noise to adopt significant performance, security, privacy, and developer ergonomic improvements.
BY VIC SHÓSTAK
5 minutes - This is not "yet another new framework, like X", but a great tool for creating rapid web applications.
BY CORENTIN JABOT
9 minutes - While taking Golang into consideration.
BY JULIE QIU, CARMEN ANDOH, MAT RYER, JON CALHOUN & STEVE FRANCIA
78 minutes - Carmen, Mat, and Jon are joined by Steve Francia and Julie Qiu to discuss the new Go.dev website. What was the motivation behind it? What technology was used to build it?
BY DANIEL SCHNETZER FAVA & MARTIN STEFFEN
8 minutes - Presenting a novel data race checker for Go, known as a concurrent language featuring channel communication as its sole synchronization primitive.
BY LAFITIARA GITA ARISHA, ENGGAR ALFIANTO & FEBDIAN RUSYDI
10 minutes - Based on the Density Functional Theory.
BY YIGAL DUPPEN
About my projects
Go Gazette is a mailing consisting of the latest and finest blogs and tools curated for Golang professionals. I am your curator Maarten Bezemer, building Dutch cloud-based platform Jexia. Our platform is providing hosting and several serverless back-end functions for front-end or full-stack developers.
Product Examples Pricing