Recent Series

Exercise: Building a Blog in Go

Much like the exercises in Gophercises, this exercise is designed to help developers continue learning Go. In this particular series we look at how one might approach building an application to power a personal blog. This entails looking at things like a web server, interacting with markdown files, caching, and more.

Build a Blog with Go

Outline Basic blog Markdown to HTML Frontmatter Index Page Aside Parser Github v1 Tailwind CSS Deploy Github Webhooks Optimizing: cache? Optimizing: goroutines Feature: Specify subdirectory and ignore files Feature: Pagination Optional: Redesign as a backfiller that we run at startup, then have a service that can deliver blog posts as it runs?

Interfaces in Go

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.

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

Working From Home

In this series we explore various aspects of working remotely your home.

Structuring Web Applications in Go

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.

Avatar of Jon Calhoun
Articles and Tutorials by
Jon Calhoun

Jon Calhoun is a full stack web developer who teaches about Go, web development, algorithms, and anything programming. If you haven't already, you should totally check out his Go courses.

Previously, Jon worked at several statups including co-founding EasyPost, a shipping API used by several fortune 500 companies. Prior to that Jon worked at Google, competed at world finals in programming competitions, and has been programming since he was a child.

Recent Articles All Articles Mini-Series Progress Updates Tags About Me Go Courses

©2024 Jonathan Calhoun. All rights reserved.