Weekly · Maarten Bezemer · July 15 · Join for free or add the newsletter rss
Stay up-to-date and ahead of your peers with Maarten Bezemer’s weekly newsletter for Golang Ninjas.
Fundamentals
Inspired by a conversation with a co-worker about using a slice as a stack. The conversation turned into a discussion on the way slices work in Go.
Understanding the context package in Golang
The context package in Go can come in handy while interacting with APIs and slow processes, especially in production-grade systems that serve web requests.
Best-practices
Telemetry system for F1 2017, using Go, InfluxDB and Grafana
I discovered a feature in my F1 2017 Game (PS4), navigating in a menu I sow an option called UDP Telemetry Settings with many network configurations.
Use interfaces and dependency injection to future proof designs
The use of interfaces is an easy to understand technique which enables the creation of both testable and extensible code.
Tutorials
Simplifying cloud native development
The micro blog is a resource for microservices and distributed systems.
Using Go for WebAssembly Applications
A week ago, the first beta of Go 1.11 came out. For me this is a special release because it’s the first version that ships with initial WebAssembly (WASM) support.
Go WebAssembly: Binding structures to JS references
Support for WebAssembly will be shipped with Go 1.11 (expected in august 2018), and with it also the brand new syscall/js package.
Tools
For Go developers, Buffalo is a Ruby-on-Rails style rapid web development framework.
Small utility package to handle dependency injection in Go (it's in tinrab/kit, among other things). The goal was simplicity and for it to fit well in my current side project.
Go 1.11: WebAssembly for the Gophers
In February 2017, the issue for WebAssembly support was opened at golang/go by Brad Fitzpatrick member of the Go team.
Writing a reverse proxy in just one line with Go
Leave your programming language hang ups at the door and come admire the best standard library I’ve ever come across.
G.E.R.T: a Go-based toolkit for embedded apps
This paper presents a new embedded toolkit, the Golang Embedded RunTime (GERT), which is specifically intended for concurrent, bare-metal embedded apps. GERT is a modified version of the Go runtime which can boot on a bare-metal ARMv7a system and execute Go code.
Making Jepsen check linearizability in linear time
Testing consistency guarantees of distributed systems. Jepsen performs operations, injects faults, collects history and then tries to see if the history is linearizable.
Opinionated, P2P networking stack for decentralized protocols
The thing is, there has been no standardized solution to develop P2P applications that has been widely adopted by any community.
Perspectives
I fought the code, and the code won
I’ve been a “professional” developer now for almost 20 years. I’ve learned a lot in the time. I want to tell you a story about the last few weeks of my life when I ignored those life lessons.
Operational semantics of a weak memory model
On one hand, memory models must be lax enough to allow common hardware and compiler optimisations. On the other the more lax, the harder it is for devs to reason about their programs. To alleviate the burden a weak memory model should provide what is called the data-race freedom guarantee, which allows reasoning in terms of sequential consistency provided a program is data-race free.
Bye microservices: From 100s of problem children to 1 superstar
Segment is the analytics API you've always wanted. It's the easiest way to install all of your favourite analytics tools at once!
Videos
Simple Web App With Golang & WebAssembly
You'll see how to use Golang and WebAssembly to build a simple webapp.
Thejana Sakunajith Satanarachchi presents 'Killer Robots 101 with Go'. Robotics has always been an elusive art for most developers.
Measuring memory allocations and how to reduce them
In this episode we learn how to measure how many memory allocations a program is performing and how to reduce them thanks to sync.Pool, as well as how to identify which piece of your code is allocating the memory thanks to pprof.
Podcast
Go Time #79: New Go branding strategy with Steve Francia
Steve Francia joined the show and told us EVERYTHING about Go's new branding strategy (and don't worry, the gopher isn't going anywhere!)
Weekly · Maarten Bezemer · July 15 · Join for free or add the newsletter rss
Top comments (0)