This path starts with some books to grasp the basics of the language but building applications to make you apply knowledge to near real case scenarios. After that you will have to choose the following steps depending on your needs or interests.
Order | Cover | Info | Description |
---|---|---|---|
1 | Learning Go Jon Bodner Published in 2021 375 pages 🐥 📙 |
Golang from the ground up, learn the basics and all the language tools at your disposal to create applications in a modern programming language. | |
2 | Let's Go: Let's Go Alex Edwards Published in 2019 305 pages 🐕 📗 🔝 |
Once you are familiarized with the foundations of the language, this book will help you to wire things up and learn how to use the tools Go offers to build a real application. You will follow the author while he builds a snippets mangament webapp, along the way you will use the Go to create a web with html templates, to process html requests, to store content in a database, manage user sessions, some security practices, and more. I found this one of the best books about Golang out there, don't let it pass and grab it!. | |
3 | Let's Go Further!: Let's Go Further! Alex Edwards Published in 2021 582 pages 🐅 📗 🔝 |
Following Let's Go comes this book, where the author teachs you how to build an API and some common techniques to manage thinks like encoding/decoding JSON messages, rate limiting, CORS, pagination techniques, user data management, etc. Definitely a wothy read if you want to increase your knowledge in Go and how modern applications are built. | |
4 | Cloud Native Go: Cloud Native Go Matthew A. Titmus Published in 2021 433 pages 🐉 📗 🔝 |
In this book you will discover what properties an application should have to be considered cloud native by reviewing and extending in detail the classic 12 factors. It will show you some useful patterns used to achieve things like: scalability, resilience, observability, and more. Along the way the author drops some insightful best practice pills about essential things like logging, caching, configuration management, etc. |
The following paths are opened to you now, choose wisely:
- Software Architecture 🚧: Building software is not only about writing code, to design great platforms you should learn to think about extensibility, efficiency, easy integration, resilience, flexibility, and much more.
Want to change the subject? Here are some suggestions about other paths you can explore:
-
CI/CD 🚧: Automation is key to improve quality and shorten software releases. Read all about continuous integration and delivery principles, master the tools and learn the bases that will make you be more effective and efficient.
-
Kubernetes ☑️: Run containers at scale and unlock the power of building microservice platforms thanks to the Kubernetes orchestrator.
-
Microservices 🚧: Study the pinnacle of distributed systems architectures, learn its tenets, and foremost, when and how to implement it.
Bonus quest: learn about these related concepts! 📍 🔰 💎
#goroutines #concurrency #channels #context #waitgroup #command-line
Last modified 2024-03-25