Original post

Boids in WebAssembly Using Go — A boid (bird-oid) is a “simulated bird-like object” and simulating a flock of them in Go and WebAseembly makes for an interesting demo. (The technique is of particular interest to me, rather than the output, though.)

Andrew Healey

Go 1.14.7 and Go 1.13.15 Released — These releases address a recently reported security issue around ReadUvarint and ReadVarint (which is explained in more depth in the item below). Here’s the issue in question if you haven’t got a Google login.

Katie, Filippo, and the Go Team

Introducing GoLand 2020.2 — New features for Go modules, new ways to review and fix problems in your code, new code inspections and editing features, the Go Playground, WSL 2 support for Git on Windows, experimental support for generics, and more, all in GoLand 2020.2.

JetBrains

Comparing Go and Rust for Writing a CLI Tool — A developer, unfamiliar with both Go and Rust, decided to write an app in both and compared his experiences. It’s not deep but it’s quite balanced and he found good reasons to use both languages.

Paulo Henrique Cuchi

💻 Jobs

📘 Tutorials

An Introduction to Go’s Escape AnalysisEscape analysis is the process of determining the scope of pointers, which in Go means whether variables should be allocated on the stack or the heap.

Vincent Blanchon

Generators in Go — Generators here are for creating iterators, not generated code, that you can range over easily.

Sven Haardiek

▶  Discussing Go with Google’s Ian Lance Taylor — Yes, we’re linking to a C++ podcast! But they had Google’s Ian Lance Taylor (who works on GCC and Go’s frontend for it) on to talk about Go (and C++, a little).

CppCast podcast

▶  Tiny Go: Small Is Going Big — Ron Evans, the creator of TinyGo (a Go compiler for ‘small’ environments such as microcontrollers), gave a talk at QCon London 2020 (just before lockdown!). You can watch it here or read a transcript. Worth watching if you want to see how Go can be used in ‘small’ places 🙂

Ron Evans

🛠 Code & Tools

sqlc v1.5.0 Released — A tool for creating fully type safe idiomatic Go code from SQL. Write SQL queries, run sqlc, then write application code that calls the methods sqlc generated.

sqlc.dev

The Golang Security Checklist — From code to infrastructure, learn how to improve the security of your Go applications with the Go security checklist.

Sqreen

go-mysql-server: An Extensible MySQL Server Implementation in Go — We linked to an article about this in the tutorials section (above) but basically this is an SQL engine and server that clones some of MySQL, so you get MySQL SQL syntax and wire protocol support but written in Go. It is not a complete database system in and of itself though (read the docs).

Liquidata