The Best Go Content on the Internet


Go Advent Day 12 - Inside the Go Playground

Contributed by

From-the-state’s-secret-department Today’s post comes to us from the Go team’s own Andrew Gerrand. Reporting from deep inside an undisclosed location, Andrew lifts the lid on one of Go’s greatest mysteries: how does the Go Playground work?. Read all about it, and you too can learn the signficance of 11pm on the 10th of November 2009.

Read more...

Go Advent Day 11 - Build a Christmas List with Martini

Contributed by

Introduction Martini is a Go package for web server development that has gained quite a bit of popularity over the last month. Martini was written to help make web development in Go a convenient, expressive, and DRY (pun intended) process. As of this writing Martini has 161 watchers, 2316 Stars, and 153 Forks on Github. There is a ton of weekly activity around both the martini and martini-contrib repositories.

Read more...

Go Advent Day 10 - Beyond Static Binaries

Contributed by

Introduction Today we’re going to go against the general theme of the Go Advent Calendar and introduce No New Hotness™. That’s because today is all about why folks in IT operations <3 go. Fortunately, we’ve had a couple teasers of the ops perspective with discussions on environment variable configs and service discovery. Get in Touch with Your Inner Sysadmin Since you may not be a natural born sysadmin, let’s try and get you in the mood.

Read more...

Go Advent Day 9 - Building A Weather App In Go

Contributed by

Introduction At Ardan Studios we have spent the last 6 months, in our spare time and on weekends, building a consumer based mobile application called OutCast. The mobile application is tailored towards those who like spending time outdoors, whether that be fishing, hunting or any other type of activity. The Main Weather and Buoy Screens This first release of OutCast shows the conditions for the buoy stations and marine forecasts areas within the United States.

Read more...

Go Advent Day 8 - Doctor Who and the mutant Go compilers

Contributed by

At the end of 1963 the UK was in the grip of Beatlemania, but for an impressionable 7-year old like me, it was the arrival of Doctor Who that really fired my imagination. The highlight of my week was peeping out from behind the furniture in our living-room on a Saturday evening, alternately terrified and transfixed by the exciting new program on our small black-and-white television set. During the rest of the week, my friends and I would play “Daleks”.

Read more...

Go Advent Day 7 - A Router for GOV.UK

Contributed by

Introduction When we set out to build GOV.UK, the new home for UK Government information and services, we decided up front that we wanted an architecture that would allow us to build very focussed applications that did one thing well. We didn’t have a clear idea of how our product or our teams would develop and we wanted to keep our options open. And we wanted to encourage a culture of experimentation where people could easily plug in whichever HTTP-fluent tool helped them most effectively meet whichever user need they were working on.

Read more...

Go Advent Day 6 - Service Discovery with etcd

Contributed by

Introduction At Poptip, our first foray into Go was a small but critical service that required extremely high throughput for a non-trivial amount of text processing. Skeptical at first, I remember having a conversation with a friend who was raving about how much he had been enjoying Go, and noticed that some other very smart people had chosen to bet their entire companies on the language. After writing a few benchmarks, we were very happy with the results and confident to move forward with the project.

Read more...

Go Advent Day 5 - An introduction to beego

Contributed by

An introduction to beego Beego is an open-source, high-performance and lightweight application framework for the Go programming language. It supports a RESTful router, MVC design, session, cache intelligent routing, thread-safe map and many more features that you can check out here. This post will give you an overview and get you started with the beego framework. Overview The goal of beego is to help you build and develop Go applications effectively in the Go way.

Read more...

Go Advent Day 4 - GoConvey

Contributed by

Introduction One highly appealing aspect about Go is built-in testing with go test. From one who once eschewed test-driven development, I now wholly encourage it. Testing is fundamental to writing Go code, and Go 1.2’s new test coverage tools make TDD more compelling than ever. Introducing GoConvey GoConvey is a new project that makes testing even better in Go. It consists of (1) a framework for writing behavioral-style tests, and (2) a web UI which reports test results in real-time.

Read more...

Go Advent Day 3 - Building a Twelve Factor App in Go

Contributed by

Introduction I’ve been writing a lot of Go code lately, but only recently discovered the Twelve Factor App manifesto. Coming from an Operations background I really resonated with many of the topics and solutions covered by Twelve Factor. If you have not read the manifesto go check it out, I’ll wait… It’s pretty obvious there are twelve things you gotta do to build a Twelve Factor App, but in this post I’m going to focus on factor three, which mandates that application configuration be stored in the environment.

Read more...