---
title: "Should Go directly support embedding files into binaries?"
publication: "Go Weekly"
issue: 291
published_at: "2019-12-06"
canonical_url: "https://golangweekly.com/issues/291"
---

The latest Go development news       

#291 — Decemeber 6, 2019 

[Read on the Web](https://golangweekly.com/issues/291)   

Golang Weekly 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/v1575584821/skr3q67h2me32i0k6qef.png)](https://github.com/golang/go/issues/35950)   

[A Proposal for Bringing Static File Embedding to `cmd/go`](https://github.com/golang/go/issues/35950) — There are great tools like [Packr](https://github.com/gobuffalo/packr) and [Statik](https://github.com/rakyll/statik) for embedding static files into Go binaries but Brad Fitzpatrick wonders if there should be official support for doing this in the usual `go` tool. 

Brad Fitzpatrick   

[The Principles of Versioning in Go](https://research.swtch.com/vgo-principles) — The _eleventh_ post in Russ’s versioning series dives deep into the story of the creation of what his _first_ post proposed: package versioning and the modules system. He focuses on three principles behind the modern Go approach versus other attempts. There’s a lot to digest here. 

Russ Cox   [![\](https://copm.s3.amazonaws.com/21732ce9.png)](https://www.jetbrains.com/go/promo/whatsnew/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=goland) 

[Please Welcome GoLand 2019.3](https://www.jetbrains.com/go/promo/whatsnew/?utm_source=cooperpress&utm_medium=cpc&utm_campaign=goland) — GoLand consumes less CPU and performs faster than ever before. Get excited about smarter Go Modules support, new quick-fixes, and debugging applications remotely with Mozilla rr. See all this in action with a free 30-day trial. 

JetBrains sponsor   

[Projects, Dependencies and `gopls`](https://www.ardanlabs.com/blog/2019/12/modules-02-projects-dependencies-gopls.html) — When you want to give editors and IDEs more intelligent access to a language’s features, you’d often implement a ‘[language server](https://en.wikipedia.org/wiki/Language_Server_Protocol)’. Here’s a look at how to use Go’s `gopls` for support in managing dependencies in VS Code. 

William Kennedy   

[Progress Made on Ebiten in 2019](https://ebiten.org/blog/2019.html) — [Ebiten](https://ebiten.org/) is a Go-based 2D game development library that’s made some big strides this year. 

Hajime Hoshi   

[Go 1.13.5 and Go 1.12.14 Released](https://groups.google.com/d/msg/golang-announce/2Vuzx20_rik/KLutIBYZAgAJ) — _Very_ minor, non-essential upgrades. 

Alex Rakoczy  

💻 Jobs  

[Stream Is Hiring a Go Engineer in Beautiful Amsterdam](https://angel.co/company/stream/jobs/241159-backend-software-engineer-go) — Enjoy building high-performance infrastructure at scale? Apply to work in our Stream Amsterdam office now. 

Stream   

[Golang Developer at X-Team (Remote)](https://x-team.com/remote-go-developer-jobs/?utm_source=cooperpress&utm_medium=email-ad&utm_campaign=go) — Work with the world's leading brands, from anywhere. Travel the world while being part of the most energizing community of developers. 

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) — Make a profile, name your salary, and connect with hiring managers from top employers. Vettery is completely free for job seekers. 

Vettery  

📘 Articles & Tutorials  

[Work-Stealing in the Go Scheduler](https://t.co/QwtHcBpB6E) — Go’s scheduler manages the running of different goroutines – here’s what happens when a processor is idle and ‘steals’ goroutines intended for another processor. 

Vincent Blanchon   

[Calling Go Code from Perl](http://perladvent.org/2019/2019-12-04.html) — It’s easy to create shared libraries from Go which means you can call the compiled Go code from other languages, such as Perl, as demonstrated here. 

Mark Fowler   

▶[Profiling a Go Service in Production](https://www.youtube.com/watch?v=19bxBMPOlyA) — A 25 minute talk from GopherConAU 2019 on instrumenting your code and using profiling tools to track and monitor performance. 

Alexander Else   

[The SaaS CTO Security Checklist](https://link.sqreen.com/6byGgaYe) — Learn all of the latest best practices for SaaS CTOs and technical leaders around leveling up your company’s security. 

Sqreen sponsor   

[On the Safe Usage of `unsafe.Pointer`](https://blog.gopheracademy.com/advent-2019/safe-use-of-unsafe-pointer/) — If you’re lucky, you won’t need to use the `unsafe` package to break free of some of Go’s (safety) constraints, but if you do.. here are some of the current and upcoming techniques that can verify your safe usage of the `unsafe.Pointer` type. 

Matt Layher   

[An Introduction to Using Protobuf from Go](https://scene-si.org/2019/12/01/introduction-to-protobuf-messages/) — The first in a series called “Advent of Go Microservices” (all located [here](https://scene-si.org/tags/advent2019/)). There will be a new article in the series every day leading up to December 25th. 

Tit Petric   

▶[13 Talks from Gopherpalooza 2019](https://www.youtube.com/playlist?list=PLeGxIOPLk9EL4BDb-8tAUY2YYv0aVgTXY#gopherpalooza2019) — [Gopherpalooza](http://gopherpalooza.com/) was a single day Go conference that took place in Silicon Valley last month. 

YouTube  

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60/js1kj46navcxhg4iyfnl.jpg)](https://github.com/brianvoe/gofakeit)   

[GoFakeIt: A Random Fake Data Generator](https://github.com/brianvoe/gofakeit) — Basically Go’s answer to Ruby’s exhaustive [Faker](https://github.com/faker-ruby/faker) library. GoFakeIt has over 120 functions for generating things like names, email addresses, phone numbers, colors, etc. 

Brian Voelker   

[Kubethanos: Kill Half of Your Kubernetes Pods at Random](https://github.com/berkay-dincer/kubethanos) — An interesting way to test the resilience of your Kubernetes setup by killing some pods within a set of your choice. 

Berkay   

[7 Popular Web Frameworks](https://deepsource.io/blog/go-web-frameworks/) — The list probably doesn’t include any you haven’t seen, but the examples and links to each repo and docs are nice to have in one place. 

DeepSource   

[Sparta: A Framework for Go-Powered Serverless Microservices](https://gosparta.io/) — Transforms Go programs into self-deploying AWS Lambda-based serverless services. See [the overview](https://gosparta.io/example_service/step1/) for how it operates. 

Matt Weagle   

[Build Video for Your Go App in Just Two API Calls](https://get.mux.com/35QAkw9) 

Mux sponsor   

[rqlite 4.6.0: It's SQLite, But Distributed](https://github.com/rqlite/rqlite/releases/tag/v4.6.0) — Essentially a lightwight distributed relational database that uses SQLite behind the scenes. [New features abound.](https://github.com/rqlite/rqlite/blob/master/CHANGELOG.md#460-november-29th-2019) 

Philip O'Toole   

[Go Stripe: The Go Library for the Stripe API](https://github.com/stripe/stripe-go) — If you’re using Stripe for your billing.. 

Stripe   

[enmime: A MIME Mail Encoding and Decoding Package](https://github.com/jhillyerd/enmime) 

James Hillyerd   

[Joker: A Small Clojure Interpreter (and Linter) Written in Go](https://github.com/candid82/joker) 

Roman Bataev         

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
