## Featured
[Reducing Type Hierarchies](https://www.goinggo.net/2016/10/reducing-type-hierarchies.html?utm_source=studygolang&utm_medium=email)
William Kennedy provides some useful guidance as to why type hierarchies aren’t often the best pattern to use in Go and why to group types together by common behavior.
[A Random Blog Post: Generating Random Numbers](https://appliedgo.net/random/?utm_source=studygolang&utm_medium=email)
The trickiness behind generating random numbers on deterministic machines, the difference between math/rand and crypto/rand in Go, and some other Go packages to try.
[bytes.Buffer, I Thought You Were My Friend](https://hackernoon.com/bytes-buffer-i-thought-you-were-my-friend-4148fd001229?utm_source=studygolang&utm_medium=email)
A look at why benchmarking your code is a good idea, because your assumptions on what might be slower or faster might not necessarily hold true.
[SummitDB: In-Memory NoSQL ACID Compliant DB with Raft Consensus](https://github.com/tidwall/summitdb?utm_source=studygolang&utm_medium=email)
An interesting new database written in Go that uses a Redis-like API, but is ACID compliant, supports custom indexes, JSON documents, and JavaScript scripting.
[Conv: Type Conversions Without Reflection Across Most Built-In Types](https://github.com/cstockton/go-conv?utm_source=studygolang&utm_medium=email)
conv.Bool("true") // bool(true)
conv.Int64("-1.23") // -1
conv.Duration("123ns") // time.Duration(123)
## In Brief
[Tracing HTTP Request Latency in Go with OpenTracing tutorial](https://medium.com/opentracing/tracing-http-request-latency-in-go-with-opentracing-7cc1282a100a?utm_source=studygolang&utm_medium=email)
[A Book on Building a Webapp with Go](https://github.com/astaxie/build-web-application-with-golang?utm_source=studygolang&utm_medium=email)
It’s available in 9 languages (many are in progress) and can be read online.
[Deploying a Go App to Google Cloud with Docker and Semaphore CI](http://blog.codepipes.com/containers/go-docker-semaphoreci-gcloud-tutorial.html?utm_source=studygolang&utm_medium=email)
[A Look at the Single Responsibility Principle in Go](http://cored.github.io/blog/2016/09/26/following-solid-in-go-srp?utm_source=studygolang&utm_medium=email)
[Panicking like a Gopher](https://medium.com/golangspec/panicking-like-a-gopher-367a9ce04bb8?utm_source=studygolang&utm_medium=email)
[A Guide and FAQs for Running a Go Meetup](https://github.com/corylanou/go-meetup?utm_source=studygolang&utm_medium=email)
[Stateful Locks in Go: How to Check if Something is Locked](https://scene-si.org/2016/10/12/stateful-locks-in-go/?utm_source=studygolang&utm_medium=email)
[revgrep: Filters Output From Static Analysis Tools, Showing Recently Changed Code](https://github.com/bradleyfalzon/revgrep?utm_source=studygolang&utm_medium=email)
[Gocoverage: Simplifying Go Code Coverage](http://winderresearch.com/2016/10/11/gocoverage-simple-go-code-coverage/?utm_source=studygolang&utm_medium=email)
[Arithmetic: An Arithmetic Parsing Library for Go](https://github.com/moxar/arithmetic?utm_source=studygolang&utm_medium=email)
[go-rm: Helpers for Writing Redis Modules in Go](https://github.com/wenerme/go-rm?utm_source=studygolang&utm_medium=email)
Redis recently added support for external modules.
[kcptun: A Simple UDP Tunnel Based On KCP](https://github.com/xtaci/kcptun?utm_source=studygolang&utm_medium=email)
Note: Docs are all in Chinese.
[few: Fastest Encoder in the West](https://github.com/lukechampine/few?utm_source=studygolang&utm_medium=email)
Aims to be the fastest possible encoder for Go data.
[Infrakit: A Toolkit for Creating Declarative, Self-Healing Infrastructure](https://github.com/docker/infrakit?utm_source=studygolang&utm_medium=email)
Infrastructure tooling increasingly seems to be written in Go.
有疑问加站长微信联系(非本文作者)