Welcome

This is the home of pragmatic know-how for all things Golang, with solid working examples. The core focus is on building and deploying web application using Go, but there will be a concise reference covering the fundamentals too. Moreover, additional practical guides will be include for building and deploying Go application using Podman and OpenShift.
Why Go?
Having spent a few years investing time into Python and the FastAPI web framework I have come to realize that while you will get further faster with the Python echo system it can result in a false economy. What I mean by this is there is a high dependency on third party packages when working with languages such as Java, Python or Node.js. These third party packages can often be in flux, and in the long run can lead to rapid build-up of technical debt.
So while there maybe a higher barrier to entry learning and using Golang for your projects, Go has some strong guiding principles including a commitment to backward compatibility. Go is a fully compiled cross-platform language with simplicity at its core. Built for concurrent, network enabled applications Go's standard library is a great language for cloud, network service and web application development.
In other words, a bit more investment up-front using Go pay's dividends for stable code and therefore applications in the future, not to mention the smaller footprint and performance gains to be reaped!
Key Features
- Efficient compilation
- Ease of coding
- Efficient execution
- Simplicity as a core value
- Commitment to backward compatibility
- Built for concurrent, network enabled applications
- Holistic approach to solve common problems
Language Characteristics:
- Strong static type system
- C inspired syntax
- Garbage collected
- Fully compiled
- Rapid compilation
- Single binary output
- Cross platform
Use Cases:
- Cloud and network (micro) services
- Command-line interfaces
- Cloud infrastructure
- Docker
- Kubernetes
- Terraform
- Prometheus
Go's Evolution
Go doesn't try to evolve alongside or upon languages such as Java, Python, Node.js, it's taken us back to basics and is more akin with C++. Where C++ evolved from C back-in-the-day, Go is C inspired but with a modern take on a language, making it lean, ideal for web microservices, fast and rock solid. Go is NOT and object orientated programming (OOP) language in the same sense of other languages such as Java or C#. However Go does have certain aspects of OOP.