#312 — May 15, 2020 |
Golang Weekly |
What's Coming in Go 1.15 — We linked to a Go 1.15 slidedeck a couple of weeks ago, but I know most of you prefer articles, so here you go! You know about smaller binaries, but did you know there’s a new linker? Benjamin Hoyt |
'Ensmallening' Go Binaries by Prohibiting Comparisons — Most people don’t need to squeeze Go binary sizes by this mild extent, but it’s an interesting spelunk nonetheless into how Go’s compilation process feeds a lot of sugar to your app, causing it to be a bit fatter and how you can put it on a (very modest) diet. Dave Cheney |
Find & Fix Code Performance Issues — You can’t improve what you can’t measure. Install in minutes. Profile and understand Go code’s behavior and performance. Browse through appealing graphs. Blackfire.io is now available as Public Beta. Blackfire.io sponsor |
go-elasticsearch: The Official Go Client for Elasticsearch — Elasticsearch is a verrry popular search engine/document database used to implement search features in apps, and with v7.7.0 the Go client has added support for efficient, parallel ‘bulk indexing’ with very high ingest rates (example here.) elastic |
immudb: A Lightweight, High-Speed Immutable Database — Data can’t be changed in this database so it’s well suited for storing every update to other databases for auditing purposes, perhaps, or maybe log streams or public certificates. Written in Go. CodeNotary |
Go 1.14.3 and Go 1.13.11 Released — Minor point releases fixing a handful of minor bugs. Andrew Bonventre |
💻 Jobs |
Golang Developer at X-Team (Remote) — Join X-Team and work on projects for companies like Riot Games, FOX, Coinbase, and more. Work from anywhere. X-Team |
Find a Job Through Vettery — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. Vettery |
📚 Articles & Tutorials |
Faking Eli Bendersky |
A Beginner Friendly Introduction to Prometheus — Prometheus is a popular system monitoring and alerting system that’s built in Go and which you can therefore extend and enhance with Go too. S Santhosh Nagaraj |
How I Write My Unit Tests in Go Quickly — This covers everything from designing for easy testing to mocks to helpful libraries. Ilya Kaznacheev |
Sqreen sponsor |
Building Uber’s Go Monorepo with Bazel — Uber’s monorepo is the largest that’s using Bazel, leading to many challenges leading to many opportunities for Uber to work with Bazel and improve the platform. Uber Engineering |
Getting My Head Around What Things Aren't Comparable in Go — Builds upon Dave Cheney’s featured article above. Chris Siebenmann |
🛠 Code & Tools |
Termdash: A Go Terminal Based Dashboard System — A terminal-based dashboard before that supports window resizing, customizable layouts, dynamic layout changes at runtime, and more. Jakub Sobon |
goaction: Write GitHub Actions in Go — “The idea is: write a standard Go script, one that works with Eyal Posener |
Getting Started with OpenTelemetry in Go Lightstep sponsor |
Shotizam: Analyze The Size of Go Binaries — Shotizam gives you a SQLite prompt with the results so you can use SQL to query them. Brad Fitzpatrick |
Excelize 2.2: A Library for Reading and Writing Excel Files — Read and write XLSX files, set and read cell values, add charts. 2.2 is a key step forward with easier access to numerous features. 360 Enterprise Security Group, Endpoint Security, inc. |
jsonparser 1.0: An Alternative JSON Parser for Go — Schema-less so it’ll parse whatever you throw at it. Claims to be 10 times faster than Leonid Bugaev |
Squirrel 1.4.0: Fluent SQL Generation for Go — Think about chainable methods to build a SQL query. For example: Masterminds |
sqlc 1.3.0: Generate Type Safe Go From SQL — sqlc supports a nice set of features, including transactions, array data types, and various migration tools. 1.3.0 just dropped. Kyle Conroy |
go-toml: Go Library for the TOML Format — TOML is a configuration file format invented by one of GitHub’s founders. Here’s what it looks like. Thomas Pelletier |
🎲 Fun and Side Projects |
Profefe: Continuously Collect Profiling Data for Long-Term Postmortem Analysis — Vladimir writes in: “For the past couple years I’ve been working on profefe, a system and an agent-library for continuous profiling for Go, initially inspired by Google’s Stackdriver Profiler. (..) Since this is a hobby project, I’m interested in feedback and collecting use cases, outside of those I came up for my personal needs.” Vladimir Varankin |
Orchestra: A New Library to Manage Long Running Go Processes Stephen Afam-Osemene |
If you want to get into a section like this in a future issue, let us know if you work on any interesting Go related projects you think we should include. Bonus points for games, musical, or anything with a nice visual angle we can include, but everything welcome. 😄 |