Delivered once every Week. No Spam Ever.

Issue - 3


Worthy Read

Youtube playlist of the videos. Dave Cheney's SOLID Go Design is a must watch.

gRPC provides support for implementing streaming endpoints as well as streaming support in their clients. Bidirectional streaming is useful if you want both server and client to be able to communicate to the other side independently in a full duplex fashion. In this article, I will dig into how to use the streaming gRPC Go client to talk to a streaming API endpoint.

gRPC is a modern RPC framework and it looks like the future for our web services. A couple of recent announcements are exciting times for developing web services. AWS launched AWS Application Loadbalancer with support for HTTP/2 I’ve been writing HTTP/1.1 web services using Go for about eighteen months. Along the way we started using Protocol Buffers and found them to be great for defining and documenting the message format. gRPC adds service definitions for Remote Proceedure Calls over HTTP/2 along with plenty of other niceness for writing services. I wrote a test project to see what gRPC might look like for our uses. Here’s what I really liked.

Type assertions are used to check if value held by interface type variable either implements desired interface or is of a concrete type. This article explains with code snippets the various scenarios surrounding assertions.

Write up on my local vim setup and doing go development with vim.

Daisuke Maki explains the go-jsschema library ( written by him ). We look at parsing, validating JSON schema among-st other things.

In addition to the resources available at golang.org there are a range of community-driven initiatives listed on the golang wiki. Please add to the page if you know of any worthwhile resource.

Here is the release history for more information. https://golang.org/doc/devel/release.html

Taichi Nakashima - @deeeet shares a small video of gopher illustration on every page of a gopher book.

Microbenchmarks are all fine and good, but the first step from benchmarking one function and understanding the performance of a complex application in production is a doozie. This talk will cover seven different ways to profile a running Go application. We'll discuss the strengths and weaknesses of various approaches, and highlight some new options available in Go 1.7. Webinar by Dave Cheney.

This survey is run by the Go dependency management committee, and will capture your experience with dependency management tools. NOTE - SURVEY CLOSES on 9th SEPTEMBER.

Dates are announced along with venue. Register now.

Literals in source code allow to specify fixed values like numbers, strings or booleans. Go belongs to languages among f.ex. JavaScript or Python with ability to create using literals also compound types: arrays, maps, slices or structs. Golang’s simplicity and brevity reveals in composite literals too where single syntax is used for those types.


Projects

hey - 111 Stars, 4 Fork
HTTP load generator, ApacheBench (ab) replacement, formerly known as rakyll/boom

pocketsphinx-go - 38 Stars, 2 Fork
CMU PocketSphinx for Golang, a lightweight speech recognition engine.

gopkgs - 10 Stars, 1 Fork
List Go packages FAST by using the same implementation as goimports

go-sessions - 8 Stars, 1 Fork
The fastest session manager for the Go Programming Language. Supports both net/http and fasthttp

goplay - 5 Stars, 0 Fork
The Go Playground (https://play.golang.org/) client