---
title: "A CLI podcast player built in Go"
publication: "Go Weekly"
issue: 308
published_at: "2020-04-17"
canonical_url: "https://golangweekly.com/issues/308"
---

Plus more Go news and links.       

#308 — April 17, 2020 

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

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/vlhpz8rzdnriujm0bdhq.jpg)](https://github.com/aletheia-icu/broccoli)   

[Broccoli: Using Brotli Compression to Embed Static Files in Go](https://github.com/aletheia-icu/broccoli) — There’s been talk about making static file embedding a standard part of Go, but for now you might find this project interesting. It uses the [Brotli](https://en.wikipedia.org/wiki/Brotli) compression system to embed a virtual file system of static files in your Go executables as tightly as possible. 

Aletheia   

[How Thanos Would Program in Go](https://www.bwplotka.dev/2020/how-thanos-would-program-in-go/) — An introduction to the [Thanos Go Style Guide](https://thanos.io/contributing/coding-style-guide.md/) built for [Thanos](https://thanos.io/), the distributed metrics system project, not the Marvel super-villain, BTW 😏 

Bartek Płotka   [![\](https://copm.s3.amazonaws.com/9b570d18.png)](https://www.jetbrains.com/go/promo/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=galand-ps&utm_content=17042020) 

[Introducing GoLand 2020.1](https://www.jetbrains.com/go/promo/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=galand-ps&utm_content=17042020) — A variety of upgrades for Go Modules support, code-editing features that require little to no interaction from the user, an expanded code completion family, and more! Try free for 30 days. 

GoLand sponsor   

[Understanding Bytes in Go by Building a TCP Protocol](https://ieftimov.com/post/understanding-bytes-golang-build-tcp-protocol/) — There is a lot more in this long-ish tutorial than just learning about bytes. This is great if, let’s say, you are stuck at home and need a challenge. _(Note: If you’ve got deja-vu, we linked this in last week’s brief non-issue.)_ 

Ilija Eftimov   

[Ebiten 1.11.0 Released: The Go 2D Gamedev Library](https://ebiten.org/blog/v1.11.0.html) — Ebiten is one of those genuine gems of a project. Maybe use it to take part in this weekend’s [Ludum Dare game jam?](https://ldjam.com/) More Go entries would be neat.. 

Ebiten   

[Generics in Go: How They Work and How to Play With Them](https://blog.tempus-ex.com/generics-in-go-how-they-work-and-how-to-play-with-them/) — Generics are a lot closer than you might think. So much so that you can try them today in a browser or compile locally. 

Chris Brown  

💻 Jobs  

[Senior Software Engineer (Go) – 100% Remote (UK/EU Only)](https://form3.tech/jobs/job-application.html?gh_jid=4003519002) — Form3 is building the most exciting banking technology on the planet and are looking for Talented Engineers to join the team. 

Form3   

[Golang Developer at X-Team (Remote)](https://x-team.com/remote-go-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=go) — 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](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-golangweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-77582) — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started. 

Vettery  

📚 Articles & Tutorials  

[Statically Compiling Go Programs](https://www.arp242.net/static-go.html) — If you thought all/most Go binaries were static, you might be surprised to find out that some core packages use cgo code and result in dynamically linked libraries. 

Martin Tournoij   

[How To Create Testable Go Code](https://engineering.kablamo.com.au/posts/2020/testing-go) — Structure your code and tests to be mockable, testable, and maintainable, even if it calls external services. 

Dave Wales   

[The Go Security Checklist](https://link.sqreen.com/iwsY6ZRt) — Ensure the infrastructure and the code of your Go applications are secure with the latest actionable best practices. 

Sqreen sponsor   

[Build Your Own Neural Network in Go](https://t.co/RXym8zLaN6?amp=1) — A beginner’s guide to building the simplest parts of a neural network completely from scratch. 

Dasaradh S K   

['How I Built a Cloud Gaming System with WebRTC and Go'](https://webrtchacks.com/open-source-cloud-gaming-with-webrtc/) 

Thanh Nguyen  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/vh5rivfwojfimqwdbrs4.jpg)](https://github.com/goulinkh/podcast-cli)   

[podcast-cli: A Podcast Player with a Terminal-Based Interface](https://github.com/goulinkh/podcast-cli) 

Goulin   

[Godocgen: A Go Documentation Generator](https://zoralab.gitlab.io/godocgen/en-us/) — Godocgen can output to multiple formats/destinations, making it easy to host as a static site. [More background here.](https://forum.golangbridge.org/t/created-godocgen/18432) 

Holloway Chew Kean Ho   

[3mux: An i3-inspired Terminal Multiplexer](https://github.com/aaronjanse/3mux) — Imagine something like [tmux](https://www.hamvocke.com/blog/a-quick-and-easy-guide-to-tmux/) but easier to learn and with sensible defaults. Plus, it’s written in Go so you can tweak it as much as you like :-) 

Aaron Janse   

[Micro 2.5: A Go Micro Services Development Framework](https://github.com/micro/go-micro/releases/tag/v2.5.0) 

Micro   

[Beta Launch: Code Performance Profiling - Find & Fix Bottlenecks](https://blackfire.io/go?utm_source=golang_weekly&utm_medium=newsletter&utm_campaign=g_beta_launch) 

Blackfire sponsor   

[Goph: A Native Go SSH Client](https://github.com/melbahja/goph) — Supports connections using passwords, private keys, keys with passphrases, doing file uploads and downloads, etc. 

Mohamed El Bahja   

[GeoDB: A Persistent Geospatial Database with Geofencing and Google Maps Support](https://github.com/autom8ter/geodb) — Built using Badger gRPC and the Google Maps API. Track the geolocation of objects across boundaries or in relation to other objects. 

Coleman Word   

[oneinfra: A 'Kubernetes as a Service' Platform](https://github.com/oneinfra/oneinfra) — Provide or consume Kubernetes clusters at scale, on any platform or service provider. 

oneinfra   

[Gocorona: Track COVID-19 Statistics From Your Terminal](https://github.com/ayoisaiah/gocorona) — A short and sweet demonstration of what you can throw together quickly using [termui](https://github.com/gizak/termui), a customizable Go-powered terminal dashboard and widget library. 

Ayooluwa Isaiah         

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
