How to Mix Magic: A Fun Dive into Go, Gin-Gonic, Gorm, and HTMX, Part 4: The Front-end
Introduction In the previous installments in this series, we worked on the backend for a simple todolist. Now...
How to Mix Magic: A Fun Dive into Go, Gin-Gonic, Gorm, and HTMX, Part 3: The API
Introduction In the previous post we saw how we setup our database functions using GORM. In order for...
How to Mix Magic: A Fun Dive into Go, Gin-Gonic, Gorm, and HTMX, Part 2: The database
Introduction In my previous post, we set up the packages for our website. Now it is time to...
How to Mix Magic: A Fun Dive into Go, Gin-Gonic, Gorm, and HTMX, Part 1: Setting up
Introduction I have been experimenting with Go for a while now, and I am beginning to like it...
Easy Concurrency: Harnessing the Reactor Pattern in Go Programming
Introduction There are many ways to handle incoming events. If you need to be able to handle many...
Simple Concurrent Join Pattern: Streamlined Coordination in Go
Introduction In some applications it is handy not to say necessary for the main thread (or a thread)...
Simple Double Checked Locking in Go for Effortless Concurrency Control
Introduction Sometimes when locking data or objects it can be handy to reduce the overhead of acquiring a...
Simple Implementation of the Monitor Object Pattern in Go for Easy Concurrency Control
Introduction Sometimes in a multi-threaded program, you need to protect a resource from concurrent access, that is access...
Demystifying the Read-Write Lock Pattern in Go: Simple Strategies for Easy Concurrency
Introduction In another article we discussed the LockĀ pattern. In this we used the sync.Mutex struct. The problem with...
Demystifying Concurrency: Simple Implementation of the Binding Properties Pattern in Go
Introduction Especially in multi-threaded applications it can be necessary to synchronize properties between objects, or at least be...