With the introduction of Generics into the Go language, it became necessary to be able to use different versions of Go on a single system with minimal effort. While exploring different methods for managing different go versions on a single system I realized that there was a need for a tool to manage …
Concurrency Pattens are not new to Go. They are a part of the wider distributed computing ecosystem. This post covers basic concurrent design patterns and techniques. Building out concurrent applications is easy once you have a handle on the basics.
A deep dive into the native Go concurrency primitives and how they can be used to build correct applications using best practices.
Understanding the difference between parallelism and concurrency can be a bit tricky. This post covers common misconceptions and how to avoid them. It also breaks down the differences between parallelism and concurrency and how to use them to your advantage.
Google Go (golang) Version 1.16 released a number of new features including the embed, io/fs and runtime/metrics packages as well as support for the Apple M1 chips. Along with that new module improvements such as retracing module version.
Run your very own Monte Carlo π simulation using a Massively Parallel Distributed Computing framework Atomizer with Docker!
Monolithic applications have been given a bad name in recent years. Is it deserved? Not really. Monoliths have their place, and knowing what that is can inform our architectural decisions in a healthy way.
Scaling your application shouldn't be hard. Here I cover different scaling architectures and what it means to scale. Actionable options for scaling existing applications.
The evolution from single-core to multi-core processing helps us to inform solutions to issues of scaling our architecture and solving the problem of diminishing returns.
I want to share my love of artificial intelligence and cybersecurity with you. Join me for a deep dive into research and application of these topics.