---
title: "Go - the most 'in-demand' language with employers?"
publication: "Go Weekly"
issue: 300
published_at: "2020-02-21"
canonical_url: "https://golangweekly.com/issues/300"
---

Plus more Go news, links, tutorials, and projects of the week.       

#300 — February 21, 2020 

[Unsubscribe](https://golangweekly.com/leave/*|UID|*):[Read on the Web](https://golangweekly.com/issues/300)   

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1582224845/u8aaebstantrfnifjypv.jpg)](https://groups.google.com/d/msg/golang-dev/mfiPCtJ1BGU/OZ9cU3SgBgAJ)  

[pkg.go.dev To Be Open Sourced](https://groups.google.com/d/msg/golang-dev/mfiPCtJ1BGU/OZ9cU3SgBgAJ) — The “central source of information about Go packages and modules” is set to have its code released in a few months/weeks, and there is some rejoicing. Here’s [more on where pkg.go.dev is headed](https://blog.golang.org/pkg.go.dev-2020). 

Russ Cox   

[Advanced Go Concurrency](https://encore.dev/blog/advanced-go-concurrency) — Goes beyond the usual candidates (goroutines, using `context` and `sync`) and digs into `x/sync` and things like `singleflight` and `errgroup`. If you’ve not dug far into concurrency in Go, you should pick up a thing or two here. 

André Eriksson    [![\](https://copm.s3.amazonaws.com/a03766bc.png)](https://www.ardanlabs.com/training/?utm_source=Cooperpress%20Primary) 

[Do You Need Go, Docker or Kubernetes Training?](https://www.ardanlabs.com/training/?utm_source=Cooperpress%20Primary) — We offer on-site corporate training for engineers that want to learn Go, Docker and/or Kubernetes. Having trained over 5,000 engineers, we have carefully crafted these classes for students to get as much value as possible. 

Ardan Labs sponsor   

[Go Tops List of In-Demand Software Skills](https://spectrum.ieee.org/view-from-the-valley/at-work/tech-careers/go-language-tops-list-of-indemand-software-skills) — The IEEE have picked up on a report from Hired (the recruiting marketplace) which places Go at the top of the pile when it comes to ‘most in-demand coding languages’ worldwide, though Scala(!) just pips it in the Bay Area. 

IEEE Spectrum   

[ESR's Notes on the Go Translation of Reposurgeon](https://gitlab.com/esr/reposurgeon/blob/master/GoNotes.adoc) — A few years ago, Eric S Raymond thought [Go could replace C](http://esr.ibiblio.org/?p=7724) in most situations, but now he’s done a rather extensive write up of his experiences in porting a complex program from _Python_ to Go. The result is faster and easier to read, but he ran into a variety of problems. 

Eric S Raymond   

[What's Involved in Building a 'Roguelike' in Go](https://github.com/hunterloftis/notes/blob/master/2020-02-14-golang-roguelike.md) — A “roguelike” is a type of fantastical game, a la [NetHack](https://en.wikipedia.org/wiki/NetHack) or Diablo. Hunter wrote this enjoyable conversational piece on game design in Go just prior to being eaten by a dragon. 

Hunter Loftis  

💻 Jobs  

[Software Engineer / Founding Teammate (Remote OK)](http://jobs.numo.com/apply/Upa7HJyDq1/Software-Engineer-Founding-Teammate-Markup-Remote-Or-Onsite) — A well funded, fast-moving startup that is changing the way large teams collaborate on documents. Think: GitHub for documents. 

Markup   

[Find a Dev Job Through Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-golangweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77582) — Vettery is completely free for job seekers. Make a profile, name your salary, and connect with hiring managers from top employers. 

Vettery  

📘 Articles & Tutorials  

[Moving Towards Domain Driven Design in Go](https://www.calhoun.io/moving-towards-domain-driven-design-in-go/) — An abstract (meaning, not runnable) tutorial where the DDD code evolves from the tightly coupled version and why evolving to the domain approach is recommended. 

Jon Calhoun   

[What's New In Go 1.14: Test Cleanup](https://www.gopherguides.com/articles/test-cleanup-in-go-1-14/?utm_source=golangweekly&utm_medium=social&utm_campaign=golang-testing-cleanup-114) — 1.14 adds a `Cleanup()` method to the testing objects that is run at the end of each test. This is good for cleaning up a database, for example. 

Gopher Guides   

[Rendering a Bloom Effect in Go](https://remy.io/blog/bloom-effect-in-go/) — Basically makes things look like they’re glowing. 

Rémy Mathieu   

▶[Modeling MongoDB Documents with Native Go Data Structures](https://www.youtube.com/watch?v=uvSzIZlh8O8) — How to use the MongoDB Go driver to add BSON annotations to your native Go data structures, providing a way to seamlessly interact with data in the app as well as the database. 

Nic Raboy   

[Video for Your Go App](https://get.mux.com/31EFOJy) — Integrate seamlessly into your product's UI. Mux Video is an API-first platform that makes it easy to build beautiful video that streams everywhere. 

Mux sponsor   

[Running GoLand on a Raspberry Pi 4](https://blog.jetbrains.com/go/2020/02/18/running-goland-on-a-raspberry-pi-4/) — Someone at JetBrains wanted to see if they could get GoLang (a popular commercial Go IDE) running on a Raspberry Pi 4.. turns out, you can, if you’re okay with a pretty lengthy startup time. 

Florin Pățan (JetBrains)   

▶[Discussing Interfaces in Go](https://changelog.com/gotime/118) — The latest episode of the _Go Time_ podcast digs into interfaces at length, what they are, how they’re being used, plus tips for how you can use them too. 

Go Time Podcast podcast  

🛠 Code & Tools  

[Spinner: 70+ Configurable Terminal Spinner/Progress Indicators](https://github.com/briandowns/spinner) — If you want to add a little _pizazz_ to your CLI app when it’s processing or loading something, you can’t ask for more variety than this. Check out all of the GIF demos! 

Brian Downs   

[Operator: Go Operators as Functions](https://godoc.org/tawesoft.co.uk/go/operator) — Implements logical, arithmetic, bitwise and comparison operators as functions (like Python’s operator module). Includes unary, binary, and nary functions with overflow checked variants. 

Ben Golightly   

[Hugo 0.65.0: The Go-Based Static Site Builder](https://gohugo.io/news/0.65.0-relnotes/) — If you’re a fan of Hugo for building sites, this seems to be a significant release if you want more flexibility in how pages are managed. 

Hugo Team   

[Learn How Pact Makes Testing Your APIs and Microservices Fast + Easy](https://pactflow.io/go?utm_source=cp&utm_medium=newsletter&utm_campaign=cp20200221) 

Pactflow sponsor   

[Nodebook: A Minimalist Multi Language REPL with a Web-Based UI](https://github.com/netgusto/nodebook) — I think this started life as a Node specific REPL but it now supports Go, C, C++, Elixir, and more. It’s principally written in Go, though. 

Jérôme Schneider   

[go-memdb: An In-Memory Database Built on Immutable Radix Trees](https://github.com/hashicorp/go-memdb) 

HashiCorp   

[goxygen: Generate a Go and MongoDB-Backed React Project in Seconds](https://github.com/Shpota/goxygen) — An opinionated full stack app generator that builds a skeleton backend that uses Go and MongoDB with React on the front end. 

Sasha Shpota   

[Kivik: A Common Interface to CouchDB or CouchDB-like Databases for Go](https://github.com/go-kivik/kivik) — A mature library that has just been updated to use modules. 

Kivik  

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1582223818/mat7qqw29cqzjnbtog9h.png)](https://github.com/buckket/go-blurhash)  

[go-blurhash: A 'BlurHash' Implementation in Pure Go](https://github.com/buckket/go-blurhash) — A [BlurHash](https://blurha.sh/) is an ultra compact representation of a placeholder for an image that, as a blur, vaguely represents the original image visually. 

buckket   

[REST: An HTTP Client Specifically for RESTful APIs](https://github.com/sendgrid/rest) — SendGrid uses this in their own client library. 

Twilio SendGrid   

[Twirp: A Simple RPC Framework with Protobuf Service Definitions](https://github.com/twitchtv/twirp) — Think gRPC but without the HTTP server and transport stuff. This runs direct on `net/http` and can even run over HTTP 1.1. 

Twitch   

[SeqKit 0.12: A Go Toolkit for FASTA/Q File Manipulation](https://github.com/shenwei356/seqkit) — Perhaps a handful of you will find this _useful_ but it’s neat to see Go being used for working with biochemistry. FASTA/FASTQ are formats for storing “nucleotide and protein sequences”.. 

Wei Shen         

Curated by [Glenn Goodrich](https://twitter.com/ruprict) and [Peter Cooper](https://twitter.com/peterc). 

[Change your email address](https://golangweekly.com/edit_subscription/*|UID|*) or[Stop getting this newsletter](https://golangweekly.com/leave/*|UID|*) 

© Cooper Press Ltd · Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom
