Backend Log

Learning Go, in public

Started 19 August 2026. From basic syntax toward production backend work — what landed, where I got stuck, and what I broke to learn it.

  1. 15 Oct 2026Refactoring SeatRush: Building a Clean Storage Boundary in Go

    SeatRush worked. That was the problem. Every route, slice, mutex and ID counter lived in one Go file. The API could create events, add seats and stop two people from holding the same seat. The tests p

    GoBackendArchitecturePostgreSQL
  2. 5 Oct 2026A hundred people booked the same seat

    A hundred people tried to book seat 1 of the same event, and my booking API said yes to all of them. This is SeatRush, a ticket reservation API I am building in Go with Gin. A seat is AVAILABLE , HELD

    GoConcurrencyMutexBackend
  3. 11 Sept 2026My Concurrent Link Checker Deadlocked Before Printing a Single Result

    How an unbuffered channel, a missing WaitGroup.Done, and incorrect HTTP-status handling broke my first worker-pool project.

    GoGolangConcurrencyBackend DevelopmentDebugging
  4. 8 Sept 2026Starting My Go Journey: From First Program to Backend Engineering

    On 19 August 2026 I wrote my first Go program. It printed three lines to a terminal. Three weeks later there are 83 files and about 2,300 lines of Go on my machine, and this post is the start of writi

    GoBackendLearning in Public