---
title: "A Proposal for Versioned Go Modules"
publication: "Go Weekly"
issue: 203
published_at: "2018-03-22"
canonical_url: "https://golangweekly.com/issues/203"
---

Golang Weekly 203   . 

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

[Golang Weekly](https://golangweekly.com) Issue 203 — March 22, 2018     

Featured [A Proposal for Versioned Go Modules](https://github.com/golang/proposal/blob/master/design/24301-versioned-go.md) Versioning has been a common theme in discussions about Go’s future recently and this proposal firms up the idea of _package versions_ within Go’s toolchain. Russ Cox [The Basics of gRPC](https://www.youtube.com/watch?v=uolTUtioIrc) video gRPC is an efficient remote procedure call protocol for client/server apps created at Google. As an aside, NGINX has just added [support for gRPC](https://www.nginx.com/blog/nginx-1-13-10-grpc/). Francesc Campoy [Linux Cloud Hosting Starting at 1GB of RAM for $5/mo](http://welcome.linode.com/go-weekly?utm_source=cooperpress&utm_medium=sponsored&utm_term=go&utm_campaign=go-weekly-primary) Get a Linode server up and running in seconds. Simply choose your plan, distro and location and you’re ready to deploy your server. Get $20 credit on a new account. Linode Cloud Hostingsponsored[![\](https://copm.s3.amazonaws.com/49ed0edf.png)](http://welcome.linode.com/go-weekly?utm_source=cooperpress&utm_medium=sponsored&utm_term=go&utm_campaign=go-weekly-primary) [Making Go Faster Through Reducing Memory Allocations](https://www.youtube.com/watch?v=NS1hmEWv4Ac) video A 20 minute talk on looking at the performance of your Go code, garbage collection, and what really matters memory-wise. Bryan Boreham [Integration of a Go Service with systemd: Socket Activation](https://vincent.bernat.im/en/blog/2018-systemd-golang-socket-activation) How systemd, a common Linux init system, handles socket activation and how you can use it to get zero-downtime deployments of a Go service. Vincent Bernat [InfluxData Working on Go Implementation of Apache Arrow](https://www.influxdata.com/blog/influxdata-apache-arrow-go-implementation/) Arrow is a columnar in-memory data storage system and InfluxDB is keen to use it so have been working on a Go implementation whose development has been heavily powered by c2goasm. Stuart Carnie [How to Build an 'Exploit' in Go](https://www.youtube.com/watch?v=U2mpUQTWRhI) video A neat tutorial on reading CVE documents and creating packets at a low level with Go rather than in, say, C. As the video says, please only use these techniques for good. _13 minutes._ Ronald Eddings Jobs [GCP/Go Backend Engineer (New York, NY w/ Relocation Assistance)](https://jobs.madhive.com) Wanna build cool products in the heat of New York on Google Cloud, Big Data & Stellar blockchain? 100% Go stack. MadHive [Go Expert? Sign Up for Vettery](https://www.vettery.com/tech?utm_source=newsletter&utm_medium=cooper-golangweekly&utm_term=tech&utm_content=grouped&utm_campaign=ad-19591) Create your profile and we’ll connect you with top companies looking for talented back-end developers. Vettery In Brief [Webinar: 'The Benefits of Managed Cloud CI and CD for Enterprises' March 28](https://resources.codeship.com/webinars/codeship-saas-ci-cd-for-enterprises?utm_source=email-sponsorship&utm_medium=cpc-go-weekly-secondary&utm_campaign=enterprise-webinar) Codeshipsponsored [How to Write Go Middleware](https://kev.inburke.com/kevin/how-to-write-go-middleware/?lobsters) tutorial Some rules, patterns, and gotchas. Kevin Burke [How To Use Go Interfaces](https://blog.chewxy.com/2018/03/18/golang-interfaces/) tutorial A few pointers on writing interfaces the Go way as opposed to the Java (or other) way. Chewxy [Extracting PNG Chunks with Go](https://parsiya.net/blog/2018-02-25-extracting-png-chunks-with-go/) tutorial Parsia Hakimian [How to Use a Forwarding Proxy with Go](https://gianarb.it/blog/golang-forwarding-proxy) tutorial Gianluca Arbezzano [Build a Search Service with Go and Elasticsearch](https://outcrawl.com/go-elastic-search-service/) tutorial Outcrawl [Repeatable Builds with vgo](https://talks.bjk.fyi/bketelsen/gcru18-vgo) slidedeck Brian Ketelsen [Monitoring and Distributed Tracing for Go Apps](https://www.datadoghq.com/monitor-go/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-GoWeeklyS) tools Get full-stack monitoring and alerting for Go apps and 200+ infrastructure integrations. [Try Datadog free](https://www.datadoghq.com/monitor-go/?utm_source=Advertisement&utm_medium=CooperPress&utm_campaign=CooperPress-GoWeeklyS). Datadogsponsored [Getting Started with the Azure SDK for Go](https://channel9.msdn.com/Shows/Azure-Friday/Get-started-with-the-Azure-SDK-for-Go) video Channel 9 [Lile: Easily Create gRPC Services in Go](https://github.com/lileio/lile) code Lile [litfs: A FUSE File System in Go with Persistent File Storage](https://github.com/anaskhan96/litfs) code [FUSE](https://en.wikipedia.org/wiki/Filesystem_in_Userspace) is a Unix mechanism for creating your own userland file systems. Anas Khan [Cachego: An Interface over Multiple Caching Libraries](https://github.com/fabiorphp/cachego) code One interface for memcached, Redis, file, MongoDB and SQLite caching. Fábio da Silva Ribeiro [Annie: A Fast, Simple and Clean Video Downloader](https://github.com/iawia002/annie) code github.​com [fsquota: Native Go Library for Managing Filesystem Quotas](https://github.com/anexia-it/fsquota) code Anexia Internetdienstleistungs GmbH [Komiser: An AWS Environment Inspector](https://hackernoon.com/komiser-aws-environment-inspector-8340946b6237) code A self-hosted dashboard for AWS resources. Mohamed Labouardy [kit 0.7 Released: A Standard Library for Microservices](https://github.com/go-kit/kit/releases/tag/v0.7.0) code Go Kit [qr-filetransfer: Transfer Files by Scanning a QR Code from the Terminal](https://github.com/claudiodangelis/qr-filetransfer) code Runs a local HTTP server, prints out a QR code to the terminal, which you can then scan on your phone to download the file to it. Claudio d'Angelis [Build a Better Infrastructure for Your Go App with DigitalOcean](https://try.digitalocean.com/virtual-private-servers/?utm_source=paid_newsletter+golang+weekly&utm_medium=display&utm_campaign=Brand+tutorial+newsletter&utm_content=3-22-2018+golang+weekly+cooperpress) DigitalOceansponsored    

Golang Weekly is curated by [Peter Cooper](https://twitter.com/peterc) and [Glenn Goodrich](https://twitter.com/ruprict) [Read this issue on the Web](https://golangweekly.com/issues/203) [See our archives](https://golangweekly.com/issues) [Change your email address](*|UPDATE_PROFILE|*)  [Stop getting this newsletter](*|UNSUB|*)  

Published by [Cooperpress](https://cooperpress.com/)
Fairfield Enterprise Centre, Lincoln Way, Louth, LN11 0LS, UK
