Microservices with go-kit. Part 1

This is a text version of the “packagemain #12: Microservices with go-kit.

gRPC Client Authentication

Introduction Best practices for performing client authentication with gRPC is a question that comes up again and again, so I thought I’d dive into a few different methods for performing authentication, using the tools provided by the Go gRPC packages. Today we’ll expl...

Using gRPC with JSON

Introduction It’s often said that gRPC is tied to the Google Protocol Buffers payload format, but this is not strictly true. While the default format for gRPC payloads is Protobuf, the gRPC-Go implementation exposes a Codec interface which allows arbitrary payload encoding....

Organizing the first GopherCon in Vietnam

Hi Gophers! We’re working hard to organize the first GopherCon in Vietnam, HCMC this year.

Ultimate Go Service

Introduction I teach a class called Ultimate Go. The class is three days long and teaches you the history, mechanics and semantics of the Go programming language. The idea is to teach you how to read code to the level that you can understand the behavior and impact your program i...

One month working remote

It has been one month since I started working fully remote, and I think I learned some things I can share. I break the post down in good, bad and lessons learned: What’s good There are plenty of good things I found out working fully remote. Being able of working full remot...

Streamline Your Sublime Text + Go Workflow

For the past couple of years I've used Sublime Text as my primary code editor, along with the GoSublime plugin to provide some extra IDE-like features. But I've recently swapped GoSublime for a more modular plugin setup and have been really happy with the way it's worked out. A...

Cleanup old GitHub Forks

I like to keep my GitHub clean. I delete forks I’m not using anymore, move old abandoned repositories to my graveyard and etc. I don’t like to delete things manually though. I assume I can just delete forks that match all these rules: have no forks - no one depends...

What is Software Engineering?

What is software engineering and what does Go mean by it? (Go & Versioning, Part 9)

Getting Started with OAuth2 in Go

This is a text version of this video: packagemain #11: Getting started with OAuth2 in Go. Getting started with OAuth2 in Go Authentication usually is very important part in any application. You can always implement your own authentication system, but it will require a lot of wor...