Pointers in Go sound scary, but they’re actually very straightforward. Let’s find out what they are, why we need them, and what to watch out for.
Pointers in Go sound scary, but they’re actually very straightforward. Let’s find out what they are, why we need them, and what to watch out for.
What is test-driven development (TDD), and how does it work in Go? This friendly tutorial shows you how to build a new Go package from scratch, test-first, step by step. All you need is Go!
CUE is a new data language, inspired by Go, that promises to make JSON, YAML, and other annoying formats much easier to work with. It features type checking, validation, and an excellent set of tooling.
Do you find writing tests hard? Especially writing them first? Don’t let smug Internet thought leaders tell you what to do. Instead, embrace the new software paradigm that lets you just do whatever comes easiest.
Jon Bodner’s ‘Learning Go’ is simply the best single-volume Go book for experienced developers, and I don’t say that lightly. This book will give you a better, wider, deeper, and certainly more up-to-date knowledge of Go than any other.
I spend a lot of time working with students to help them write clearer, better, and more useful Go programs, using a fairly small set of general principles, and here they are. The first is “be boring”, and I’ve tried to follow that advice.
Learning is hard. How do you plan, study, organise your time, and build the right habits? Master teacher John Arundel gives ten helpful hints for students who want to really learn Go.
Which is better, Python or Go? Which language should you learn today, and why? How do the two compare in performance, ease of learning, scalability, and rapid prototyping? Let's find out, in this friendly and accessible overview of Python and Go for beginners.
Are you a grasshopper or a Go sensei? Can you wax on, wax off? Go mentor and would-be Mr Miyagi, John Arundel, explains how he grades his students using a system of coloured belts like those used in the martial arts. Find out how your skills compare to typical junior, mid-level, and senior devs!
Optimizing Golang code for performance is almost certainly a waste of your time, for several reasons: performance doesn’t matter, Go is fast, and readability is more important than speed. You can buy a faster computer, but you can’t buy a faster brain.
What is a map in Golang and how does it work? Are Go maps thread-safe? Are maps pointers? How do you check if a map is empty? Can maps be nil? Go teacher and expert John Arundel answers these and other questions about Go maps.
What is a map[string]interface{} or map[string]any in Go, and why is it so useful? How do we deal with maps of string to interface{} in our programs? What the heck is an interface{}, anyway?
How do you iterate over Golang maps? How do you print a map? How do you write a for loop that executes for each key and value in a map? What is the iteration order of Go maps? Let's find out, in this practical, easy-to-follow tutorial.
What happens if you look up a key in a Go map that doesn’t exist? How do you check if a key is present in a map? How do you represent a set of objects as a map in Golang, and efficiently check whether a given value is in the set?
More about Golang maps: looking up keys, adding and updating values, and how to update the fields of a struct within a map. This mini-tutorial is part of a series on everything you need to know about maps in Go!
What map types exist in Go? What data types can we use as map keys? What about map values? Are different kinds of maps considered distinct types? And what’s the difference between nil and empty maps? Find out in this handy, bite-size tutorial on map types in Golang.
What is a Golang map? Why is it useful? How does it compare to a slice? How do you declare a map? How do you initialize a map in Go? Fear not, all these questions are answered in this friendly introduction to one of Go’s most powerful features.
Let's build a Docker container with Golang! It sounds complicated, but it really isn't. All you need are a few tools, a couple of simple commands, and ideally some cake. (The cake isn't strictly necessary, but coding is hungry work.)
Get friendly, professional, one-to-one remote mentoring in Go with experienced trainer John Arundel. Absolute beginner? No problem. John will get you up and running. Some Go background, but looking to level up your skills? Don’t worry, we’ve got this!