Learning Go through building a Command Line Application and following: https://pragprog.com/titles/rggo/powerful-command-line-applications-in-go/
After struggling to use Git via command-line I've discovered a tool using Lazygit. I thoroughly enjoyed using the terminal interface of lazygit and have become enamored by terminal applications/tooling. This prompted me into looking into Go and after some thought have decided to pick up Go and develop my own terminal app.
Learning Go has other advantages as well. Go is a language designed to be simple and address modern software problems. It is designed to be simple, efficient and scalable, making it well-suited for working with and building reliable and robust networks and distributed systems. Go also features a strong concurrency mechanism which helps with managing parallel processing, crucial for distributed computing.
Popular and well known Go tools include:
- Docker - A platform for developing, shipping, and running applications in containers.
- Kubernetes - An open-source system for automating the deployment, scaling, and management of containerized applications.
- Prometheus - A monitoring and alerting toolkit for operational metrics in cloud environments.
- Terraform - Infrastructure as code software to define and provision data center infrastructure.
- Grafana - A platform for monitoring and observability with support for various data sources.
- CockroachDB - A distributed SQL database designed for horizontal scalability and resilience.
- etcd - A highly-available distributed key-value store, serving as Kubernetes' backing store.
- Hugo - A static site generator that provides a framework for building websites quickly.
Please check out my todo app that is in development at: https://github.com/kevinwonart/kodo