---
title: "#186: Eight Years of Go"
publication: "Go Weekly"
issue: 186
published_at: "2017-11-16"
canonical_url: "https://golangweekly.com/issues/186"
---

Golang Weekly 186   . 

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

[Golang Weekly](https://golangweekly.com) Issue 186 — November 16, 2017     

Featured [Celebrating 8 Years of Go](https://blog.golang.org/8years) While Go was created ten years ago, it became an open source project in 2009. In that time, it’s become a popular language with a great community. Steve Francia [Go, Don't Collect My Garbage](https://blog.cloudflare.com/go-dont-collect-my-garbage/) An extreme benchmarking of Go on a 24 core machine to find the optimum environment values and number of goroutines. Cloudflare Blog [A Look At The New 'pprof' User Interface](https://rakyll.org/pprof-ui/) In Go 1.10, pprof will come with a new Web-based UI, but you can already try it out if you want. JBD [Quickly Identify Errors in Your Query Syntax Thanks to Syntax Highlighting with PMM](https://learn.percona.com/download-percona-monitoring-and-management-pmm-1-4-manual?utm_campaign=CooperPress%20Q4%202017%20Ads&utm_source=GoNewsletter&utm_medium=Text%20Ad) [Percona Monitoring and Management (PMM)](https://learn.percona.com/download-percona-monitoring-and-management-pmm-1-4-manual?utm_campaign=CooperPress%20Q4%202017%20Ads&utm_source=GoNewsletter&utm_medium=Text%20Ad) is an open-source database monitoring and performance optimization tool for MySQL & MongoDB. PMM builds upon other popular open source projects and deploys locally. Perconasponsored[![\](https://copm.s3.amazonaws.com/2de2b564.png)](https://learn.percona.com/download-percona-monitoring-and-management-pmm-1-4-manual?utm_campaign=CooperPress%20Q4%202017%20Ads&utm_source=GoNewsletter&utm_medium=Text%20Ad) ['Learn To Code The Go Programming Language': A New Course](https://greatercommons.com/cwg) Google’s Community Outreach Working Group and GreaterCommons have teamed up to release a free Go course. GreaterCommons [Error Handling in Go](https://scene-si.org/2017/11/13/error-handling-in-go/) _“There are significant pain points related to error handling in other languages, and if Go is a little bit verbose about it - that’s the lesser evil by far.”_ Tit Petric [How Discord Resizes 150 Million Images Every Day with Go & C++](https://blog.discordapp.com/how-discord-resizes-150-million-images-every-day-with-go-and-c-c9e98731c65d) How a popular chat app amongst gamers handles images sent through the system. Discord Blog [fx: A Lightweight Serverless Framework Based on Docker](https://github.com/metrue/fx) Written in Go, but supports all major languages for the underlying functions offered as a service. H.​ Minghe Jobs [Interested in Blockchain, Smart Contracts, and Crypto?](https://decred.org/recruiting/) If so, we at Decred would love to make your acquaintance. We offer a fast paced environment where you will never get bored hacking on cool tech. Decred [Looking for a Job at a Company That Prioritizes Go?](https://www.vettery.com/?utm_medium=cooper-golangweekly&utm_campaign=ad-1300&utm_source=newsletter&utm_content=grouped&utm_term=tech) Try Vettery and we’ll connect you directly with thousands of companies looking for talented back-end devs. Vettery In Brief [Basic AST Manipulation in Go](https://zupzup.org/ast-manipulation-go/) tutorial Using the AST tools in Go to parse and modify a source file. Mario Zupan [Understanding Go Panic Output](https://joeshaw.org/understanding-go-panic-output/) tutorial Go explodes parameters in the stacktrace based on their data type which can be confusing. Joe Shaw [An Introduction to gosiris, An Actor Framework for Go](https://teivah.io/blog/an-introduction-to-gosiris-an-actor-framework-for-go/) tutorial Teiva Harsanyi [A Deep Introduction to bufio.Scanner](https://medium.com/golangspec/in-depth-introduction-to-bufio-scanner-in-golang-55483bb689b4) tutorial ..for processing a stream of data by splitting it into tokens. Michał Łowicki [Understanding SOLID Principles: The Interface Segregation Principle](https://codeburst.io/understanding-solid-principles-interface-segregation-principle-b2d57026cf6c) tutorial The fourth in the series on SOLID principles using examples in Go. Fanis Despoudis [Foldable Go](https://medium.com/zendesk-engineering/foldable-go-d74fb9cf2fc9) tutorial An attempt to write some functional constructs to replace `for` loops. Zendesk Engineering [Set Up a Netflix Style Streaming Service with Golang](https://developer.bitmovin.com/hc/en-us/articles/115001117733-API-Clients-Overview/?utm_source=cooperpress&utm_medium=email&utm_campaign=go-news) Cloud or On-Premise encoding solution on Kubernetes and Docker. MPEG-DASH, HLS, VP9, HEVC, Multi-DRM, VoD or Live. Bitmovinsponsored [Why We're Building A Blockchain in Go](https://medium.com/karachain/why-i-am-building-a-blockchain-in-go-6395a60b24dd) story Karachain [Learning Go by Porting A Medium-Sized Web Backend from Python](http://benhoyt.com/writings/learning-go/) story Ben Hoyt [Plotting Latency Distributions with gonum](https://www.youtube.com/watch?v=77ZFKuMLkp4) video [gonum](https://github.com/gonum/gonum) is a group of numeric libraries for Go. Francesc Campoy [6 Simple Tools to Improve Your Go Code](https://remy.io/blog/simple-tools-to-improve-your-go-code/) tools Brief overviews of tools that, mostly, perform static analysis of code. Rémy Mathieu [prealloc: Find Slice Declarations That Could Potentially Be Preallocated](https://github.com/alexkohler/prealloc) tools Alex Kohler [dgw: Generate Go Structs and Functions from Postgres Tables](https://github.com/achiku/dgw) tools Akira Chiku [Gophercises: Free Coding Exercises for Budding Gophers](https://gophercises.com/) tools Jon Calhoun [$100 Credit on a New Semaphore CI Account](https://semaphoreci.com/?utm_source=golangweekly&utm_medium=email&utm_campaign=gophember17-coupon) tools Hosted CI/CD that's 91% faster than the competition. Sign up for free and use code GOPHEMBER17 to get your credit. Semaphoresponsored [Minify: Go Minifiers for Web Formats (CSS, HTML, JSON, etc.)](https://github.com/tdewolff/minify) code An update in the past week has made it a _lot_ faster than before. Taco de Wolff [mchain: A Minimalistic Library for Middleware Chaining](https://github.com/prasannavl/mchain) code Prasanna V.​ Loganathar [gonfig: Go Package for Program Configuration](https://github.com/stevenroose/gonfig) code Take config values from a file, env variables, and cmd line flags. Steven Roose    

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/186) [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
