Jon Calhoun Avatar

Jon Calhoun

Jon started programming at an early age (around 8-9) when introduced to Apple Basic. Since then he has been hooked, learning about web development, scripting levels in videos games, algorithm competitions, and more. He eventually discovered Go and loved the language, but felt the resources for newcomers was lacking which lead to him starting to create videos, tutorials, and other educational resources. Some of his more popular courses include Gophercises, a course composed of mini coding exercises each designed to teach something unique aspects of Go, and Web Development with Go, an in depth course that teaches how to build production grade web applications from the ground up in Go.

PA, USA · Twitter · GitHub · Website
81 episodes

Go Time Go Time #209

Coding Go in the blind

Play
2021-12-09T18:30:00Z #go +1 🎧 19,995

In this episode Dominic speaks with Jon about his experience transitioning to using a screen reader and learning to code without his vision. They discuss how some of the tooling works, things other developers can do to make their code more accessible for blind teammates, and more.

Go Time Go Time #194

Don't forget about memory management

Play
2021-08-26T21:00:00Z #go 🎧 22,110

Bryan Boreham (Grafana Labs) and Jordan Lewis (Cockroach Labs) join Mat and Jon to talk about memory management in Go. We learn about the heap, the stack, and the garbage collector. There are also some absolute gems of wisdom scattered throughout this episode, don’t miss it.

Go Time Go Time #193

Caddy V2

Play
2021-08-19T15:30:00Z #go +1 🎧 20,622

Matt Holt joins Jon Calhoun to discuss Caddy, its history, and the process of creating a v2 of the popular web server. In the episode they discuss some of the challenges encountered while building the v2, reasons for doing a major rewrite, and more.

Go Time Go Time #192

Data streaming and Benthos

Play
2021-08-12T20:45:00Z #go 🎧 20,630

Mihai and Ashley join Jon to discuss data streaming. What is it, why is it being used, and common mistakes developers make when setting up. They also discuss some of the tools in the ecosystem, including Benthos, a tool created by Ashley Jeff’s to make the plumbing part of data streaming easier to get right.

Go Time Go Time #188

SIV and the V2+ issue

Play
2021-07-15T15:30:00Z #go 🎧 18,809

Go modules brought about quite a few changes to the Go ecosystem. One of those changes is semantic import versioning (SIV), which has a fairly pronounced effect on how libraries are identified. In this episode we are joined by Tim Heckman and Peter Bourgon to discuss some of the downsides to these changes and how it has lead to what a subset of the Go community refers to as the “v2+ problem.”

Go Time Go Time #186

Pop quiz time! 😱

Play
2021-07-01T16:10:00Z #go +1 🎧 18,015

Learning Go with code pop quizzes is a fun way to zoom in on different language features. People are looking forward to pop quizzes on Twitter and in conferences, and they also learn from that. Let’s chat about pop quizzes!

Go Time Go Time #182

Go Battlesnake Go!

Play
2021-06-03T16:20:00Z #go +1 🎧 15,146

In the past decade a variety of games have emerged where players need to create an AI to play the game rather than play the game directly. In this episode we speak with the creator of one of those games - Battlesnake. Brad Van Vugt joins us to talk about building a game engine using Go, making programming games easier for beginners to get started with, the long term vision for games like Battlesnake, and more.

Go Time Go Time #179

Event-driven systems

Play
2021-05-13T16:00:00Z #go +1 🎧 20,336

In this episode we talk with Daniel and Steve about their experience with event-driven systems and shed some light on what they are and who they might be for. We explore topics like the complexity of setting up an event-driven system, the need to embrace eventual consistency, useful tools for building event-driven systems, and more.

Go Time Go Time #177

Building startups with Go

Play
2021-04-29T15:45:00Z #go +1 🎧 17,978

Startups are all about iterating quickly, building MVPs, and finding that elusive product market fit, so how does Go fit into that picture? Is Go a good choice for startups, or is it exclusively for the larger corporations? In this episode Jon is joined by four startup founders to learn about their experience building a startup with Go.

Go Time Go Time #176

TCP & UDP

Play
2021-04-22T16:15:00Z #go 🎧 18,726

The internet wouldn’t exist as we know it if it weren’t for TCP and UDP, yet many developers don’t quite understand the technology powering the web. In this episode we talk with Adam Woodbeck, author of Network Programming with Go, to learn about TCP and UDP; what they are, how they work, and how one can experiment with tools like Wireshark and Go to learn more.

Go Time Go Time #169

Go at Clever

Play
2021-03-04T16:30:00Z #go +1 🎧 14,043

In this episode we explore how Clever started using Go. What technologies did Clever start with, how did they transition to Go, and what were the motivations behind those changes? We then explore some of the OS tech written by the team at Clever.

Go Time Go Time #165

When Go programs end

Play
2021-02-04T17:00:00Z #go 🎧 14,931

Michael Knyszek from the Go team joins us to talk about what happens when a program ends. How are file handles cleaned up? When are deferred functions run, and when are they skipped entirely? Is there a way to terminate all running goroutines? Tune in to learn the answers to these questions and more!

Go Time Go Time #164

Why writing is important

Play
2021-01-28T17:00:00Z #go +1 🎧 14,031

In this episode we talk about various types of writing and how we as Go developers can learn from them. Whether it is planning and preparing to write, communicating with team members, or making our code clearer for future developers to read through style guides.

Go Time Go Time #162

We're talkin' CI/CD

Play
2021-01-14T16:30:00Z #go +2 🎧 17,144

Continuous integration and continuous delivery are both terms we have heard, but what do they really mean? What does CI/CD look like when done well? What are some pitfalls we might want to avoid? In this episode Jérôme and Marko, authors of the book “CI/CD with Docker and Kubernetes” join us to share their thoughts.

Go Time Go Time #158

Play with Go

Play
2020-12-03T17:30:00Z #go +1 🎧 13,820

Play with Go is a set of hands-on, interactive tutorials for learning the tools used while programming in Go. In this episode we are joined by its creators, Paul Jolly and Marcos Nils, as we learn more about what motivated the creation of the project, what technology it was built on, and how you can help contribute additional guides to help your fellow gophers!

Go Time Go Time #155

What would you remove from Go?

Play
2020-11-12T16:20:00Z #go 🎧 14,735

When we talk about improving a programming language, we often think about what features we would add. Things like generics in Go, async/away in JS, etc. In this episode we take a different approach and talk about what we would remove from Go to make it better.

Go Time Go Time #153

GitHub's Go-powered CLI

Play
2020-10-29T16:15:00Z #go +2 🎧 16,483

In this episode we discuss Mislav’s experience building not one, but two Github CLIs - hub and gh. We dive into questions like, “What lead to the decision to completely rewrite the CLI in Go?”, “How were you testing the CLI, especially during the transition?”, and “What Go libraries are you using to build your CLI?”

Go Time Go Time #151

Introducing your team to Go

Play
2020-10-15T21:00:00Z #go +2 🎧 15,178

Can’t find a job working in Go? Perhaps introducing your current team to Go is the solution. In this episode we talk about how Go was introduced at different organizations, potential pitfalls that may sabotage your efforts, some advice on how to convince your team and CTO to use Go and more.

Player art
  0:00 / 0:00