Go makes it easier (than Java or Python) to write correct, clear and efficient code.
Fyne's APIs aim to be the best for developing beautiful, usable, lightweight applications for desktop and beyond. Driven by design and usability principles we are breaking free of the current desktop app drudgery and create a joyous experience.
Fyne is an easy to use UI toolkit and app API written in Go. We use OpenGL (through the go-gl and go-glfw projects) to provide cross platform graphics.
gomacro is an almost complete Go interpreter, implemented in pure Go. It offers both an interactive REPL and a scripting mode, and does not require a Go toolchain at runtime (except in one very specific case: import of a 3rd party package at runtime).
When I first started trying to understand the memory allocator of Go, it was maddening. Everything seemed like a mystical black box. As almost every technical wizardry is hidden beneath abstractions, you need to peel off those layers one by one to understand it.
Practical Go: Real world advice for writing maintainable Go programs
The distributed, multicore train is stopping for no programmer, and especially the systems programmer will need to be ready to hop on to the distributed parallel programming paradigm to keep their systems running as efficiently as possible on the latest hardware environments. There are three new systems programming languages that have appeared in the last few years which are attempting to provide a safe, productive, and efficient parallel programming capability. Go is a new language from Google, Rust is a new language from Mozilla, and ParaSail is a new language from AdaCore.
Go's built-in net/http package is convenient, solid and performant, making it easy to write production-grade web servers. To be performant, net/http automatically employs concurrency; while this is great for high loads, it can also lead to some gotchas. In this post I want to explore this topic a bit.
env GOOS=linux GOARCH=arm GOARM=5 go build
This page links to blog posts, videos, and slide decks discussing moving a code base to Go from some other language.
Learn how to stop worrying and love error handling in Go. Author of Overmind and imgproxy describes his journey through all five stages of Kübler-Ross model—from denial to acceptance—as he went deeper into the language, and shares his favorite patterns for dealing with errors in Go code.
echoip - A simple service for looking up your IP address. This is the code that powers https://ifconfig.co
Because I'm interested in web application development, I used my free time to write this book as an open source version. It doesn't mean that I have a very good ability to build web applications; I would like to share what I've done with Go in building web applications.
GoCity is an implementation of the Code City metaphor for visualizing Go source code.