Hi all, I wanted to share that my latest book is on Go programming and
it is now out electronically as well as in print. It is titled
"Practical Go: Building Scalable Network and Non-Network Applications"
(
https://practicalgobook.net/) and published by Wiley publications.
The book targets readers who have learned the language basics -
syntax, understanding of types, being able to write functions (details
are available in the "Getting started" chapter - but essentially, just
a passing familiarity with the language is enough I think). With that
assumption:
In Getting Started, I guide you through the installation of the
software required for the book. I also discuss some of the assumed
knowledge for the following chapters.
In Chapters 1 and 2, I show you how to write command line applications
using the standard library’s flag package.
In Chapters 3 and 4, I show you how you can write robust HTTP clients,
using the standard library’s net/http package and friends.
In Chapters 5, 6 and 7, I show you how you can build production ready
HTTP servers using net/http
and related packages from the standard library.
In Chapters 8, 9 and 10, I show you can build production ready gRPC
applications using the Go gRPC implementation.
In Chapter 11, I show you can work with two categories of data stores
- Object store and a SQL data store using the
https://gocloud.dev
library.
In Appendix A, you will learn to implement instrumentation in
applications to emit telemetry data - Logs, Metrics, and Traces.
In Appendix B, you will learn to read configuration data in your
application, learn to build a container image for your application and
get some guidance around deploying your applications.
I wrote this book, not to share with you things I already knew - far
from it. The book is essentially a documentation of my journey of
learning Go and applying it to solve problems which I think based on
my experience are being solved by folks in the industry today.
On that note, you may find bugs/inconsistencies and so if you read the
book, please let me know and/or leave a review.
You can find a detailed table of contents here:
https://practicalgobook.net/toc/ along with a link to an excerpt of
Chapter 1. Any further questions, let me know, i will be happy to
answer!
I wanted to thank all the members of this list who helped me
understand and figure out problems when I found myself stuck when
writing the book.
Thanks,
Amit.