The Best Go Content on the Internet


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...

Go Advent Day 2 - Go 1.2 performance improvements

Contributed by

Introduction 7 months, 1600 changes, well over 350 issues closed¹, and Go 1.2 is done. Go and install it now – it’s ok, it only takes a few minutes – I’ll wait. When Go 1.1 was released earlier in the year I did a series of posts (part 1, part 2, part 3) exploring the performance improvements the then current released provided. Go 1.1 was a herculean development effort, stretching some 14 months, and it brought with it equally impressive performance improvements.

Read more...

Go Advent Day 1 - Go 1.2 is released

Contributed by

Welcome Welcome to our first Go Advent Calendar. Gopher Academy is bringing you 25 blog posts about Go in 25 days and we’re starting from the top with a blog post from the Go team themselves. A new Go release It’s official: Go 1.2 was released this morning. The Go 1.2 development cycle started with a flurry of commits on the 14th of May. Shortly afterwards Andrew Gerrand posted a plan for the development cycle.

Read more...

Go Advent 2013 starts next week

Contributed by

Introduction Over at GopherAcademy, we’re getting in the Christmas spirit a little early this year. We’ve decided to do a Go Advent Calendar, highlighting cool Go projects every day from December 1st through the 25th. Other communities have done similar concepts in the past, and it’s a good way to highlight projects that people may not have seen. We’ve lined up a fantastic and varied set of contributors from around the Go multiverse who will bring you 25 Go related posts to fill your Christmas stockings.

Read more...

SkyDNS (Or The Long Road to Skynet)

Contributed by

SkyDNS and Skynet This article is in two sections. The first is the announcement of SkyDNS, a new tool to help manage service discovery and announcement. The second part of the article is a bit of a back story about why we needed this tool and how we got here. If you’re the impatient type, you can read the annoucement and description of SkyDNS and skip the rest. SkyDNS Today we’re releasing SkyDNS as an open source project on github.

Read more...

Recursion and Tail Calls in Go

Contributed by

Introduction This guest post is written by William Kennedy, author of the Going Go blog. I was looking at a code sample that showed a recursive function in Go and the writer was very quick to state how Go does not optimize for recursion, even if tail calls are explicit. I had no idea what a tail call was and I really wanted to understand what he meant by Go was not optimized for recursion.

Read more...

Introducing Gopher Academy

Contributed by

Introduction The people behind Gopher Academy have been active Go developers and contributors for several years. The Go ecosystem is vibrant, active, and full of smart people, but we always felt like it was missing a strong presence outside of Google. Recently, we were chatting about ways to promote Go to developers that either hadn’t yet heard of Go, or weren’t ready to take the leap. That’s when Gopher Academy was born.

Read more...

Contributed by

Read more...