I’m just beginning to learn Go, really for the sheer fun of it, and joined this forum a few days ago. I am already aware that this community offers a great GitHub Go Wiki that includes links to some nice educational resources for learning Go, including online tutorials and paperback books.
I’d like to purchase a paperback introduction to Go for the purpose of being able to read it at a relaxing pace, interspersed with trying out some examples of Go code. Accordingly, I’d be most grateful if a few members of the community could post some of their own recommendations for such paperback books that might be their favorites. Thanks!
It may be relevant that I already have some experience with programming in other languages, such as Python and Java, and so am familiar with general principles of programming.
It’s slightly outdated (no generics and it predates Go Modules) but it’s one of the better programming books on any language I’ve read. You can read up on generics and go modules pretty quickly on go.dev to supplement your knowledge there. Alan Donovan is an excellent author and Brian Kernighan has been writing books with Rob Pike since 1984:
If you go to the website you can read the first chapter for free. There are other options, but none I’ve enjoyed quite as much as this book. The pacing is perfect for me (it’s a rather quick read compared to many!) and the level of detail is also just right.
Thanks, @Dean_Davidson! The online Preface and Tutorial of the Donovan and Kernighan book look great, so I may go ahead and purchase a paperback copy of it. Meanwhile, if anyone else here has a favorite to recommend, I’d gladly consider additional suggestions.
Obviously focuses on concurrency and thus isn’t a suitable book for your first Go book. But, if you read GPL and enjoy it and want to deep dive on concurrency, this is another excellent book!
Thanks, again, @Dean_Davidson. These resources all look great. I will try out the easy ones in the near term and the more advanced ones after having learned more.
The Time Formatting / Parsing structure is just the kind of detail that I, too, would expect to need to look up repeatedly. For me, another example would be Regular Expressions.
I really like Jon Bodner’s Learning Go, 2nd Edition [Book] (I read the previous edition).
The first thing it taught me was the len(s) and cap(s) of slices which was slightly more complex than I had grokked from simple examples online. It’s thorough but still beginner-level - the way I like it.
Thanks for all your help, @Dean_Davidson, @AxelRHD, and @duckduck! As is evident from this post, your advice is already proving valuable to other users in addition to myself: