Interfaces in Go are going to be a foreign concept to many developers. In this series we explore what interfaces are, why they are useful in a dynamically typed language, and how the subtle differences from other languages have a big impact on how interfaces are used effectively in Go.
In this series we explore using concurrency with Go. From using a WaitGroup to let various goroutines finish doing work, all the way to more complex patterns involving channels, fan-out, fan-in, and more.
In this series we explore various aspects of working remotely your home.
In this series we explore how you might structure an application written in Go. We start by examining why it is so hard for everyone to just agree on a universal structure, and then dive into a few various options looking at the pros and cons of each. By the end you should have a solid understanding of how to go about deciding what structure is best for your context when you start your next application in Go. We will mostly focus on web applications, but the overall message applies for almost all apps written in Go.
This three part series explains what closures are, how to create them in Go, and then goes on to discuss some common use cases where you might need them. After that it covers some common mistakes that developers make when creating closures in Go
This four part series explores Go's template package, which can be used to render HTML or text. Topics covered include contextual encoding, actions, using functions in templates, and how to build a proper view layer for a web application.
Jon Calhoun is a full stack web developer who also teaches about Go, web development, algorithms, and anything programming related. He also consults for other companies who have development needs. (If you need some development work done, get in touch!)
Jon is a co-founder of EasyPost, a shipping API that many fortune 500 companies use to power their shipping infrastructure, and prior to founding EasyPost he worked at google as a software engineer.
Jon's latest progress update: Writing Course Notes
©2018 Jonathan Calhoun. All rights reserved.