Go Community Linklog

Made a library? Written a blog post? Found a useful tutorial? Share it with the Go community here or just enjoy what everyone else has found!


Composition in Go

Go does not support inheritance, however it does support composition https://golangbot.com/inheritance/

 

Fake data generator in Go

Kolpa - Fake data generator

 Brian Scott

How to test Go HTTPS Services

 Brian Scott

JustForFunc - Understanding Go's type aliases

Justforfunc #18

 Brian Scott

Learning - The Go Programming Language Book

For those new to Golang, here is a pretty popular Go Programming Book

 Brian Scott

Why you need to learn Go

 Brian Scott

Go 1.9 Released

Go 1.9 Nuff Said

 Brian Scott

Embedding data in Go executables

 Brian Scott

Recipe for using Buffalo and Password Authentication

 Mark Bates

Golang Mutexes

Understanding mutexes, solving race condition using mutexes and channels https://golangbot.com/mutex/

 

Select Statement in Go

https://golangbot.com/select/ Learn how select statement works and also get to know the practical use of select.

 

Overmind and Hivemind, Procfile-based process managers for local web development

https://evilmartians.com/chronicles/introducing-overmind-and-hivemind

Procfile, introduced by David Dollar's foreman, is a popular format for declaring processes—everyone who ever used Heroku, knows it well. Anyone who didn't, really should learn it—it's an easy way to declare all the stuff that is needed to run your project (web app, additional apps, background processing, tools and daemons) and launch it.

Unfortunately, foreman had some limitations, so there are new kids on the block—tmux support, tons of features, speedy and stable. Check them out!

 Yaroslav Markin

Sending Emails in Buffalo

In this video we will look at how we can use the github.com/gobuffalo/x/mail package to send emails within a Buffalo application. We’ll see how to set multiple bodies, as well as an attachment, to the email. This video also demonstrates the new buffalo-mail plugin for this package.

https://blog.gobuffalo.io/sending-emails-in-buffalo-e211d3d8e20a

 Mark Bates

Go Developer, Go -- Bootstrapping "Go" for multiple operating systems and architectures

Read this article (https://www.fedux.org/articles/2017/07/29/bootstrapping-go.html) if you're interested in bootstrapping an environment for building go binaries to run on Windows, MacOS and Linux.

 Dennis Günnewig

Buffered Channels and Worker Pools

Learn how buffered channels work and how they can be used to implement worker pool. https://golangbot.com/buffered-channels-worker-pools/

 

Terraboard - A web dashboard to inspect Terraform States

Terraboard

Terraboard is a web dashboard to visualize and query Terraform states. It currently features:

an overview page listing the most recently updated state files with their activity a state page with state file details, including versions and resource attributes a search interface to query resources by type, name or attributes

 Brian Scott

Surf - Stateful programmatic web browsing in Go.

Surf is a Go (golang) library that implements a virtual web browser that you control programmatically. Surf isn't just another Go solution for downloading content from the web. Surf is designed to behave like web browser, and includes: cookie management, history, bookmarking, user agent spoofing (with a nifty user agent builder), submitting forms, DOM selection and traversal via jQuery style CSS selectors, scraping assets like images, stylesheets, and other features.

 Brian Scott

Contributing to Open Source Git Repositories in Go

The perfect explanation of how to commit to open source Go projects.

https://splice.com/blog/contributing-open-source-git-repositories-go/

 Mark Bates

Introducing vice: Go channels across many machines

Vice abstracts message queue technologies and gives you plain old Go channels through which you can communicate instead.

Blog Post

 Brian Scott

Dep 0.2.0 Released

 Brian Scott