Mastering Go, 3rd Edition
Mihalis Tsoukalous
Packt Publishing, 978-180107-931-0
By Si Dunn
To be honest, I’m not a great software developer. Actually, I retired from software development and software technical writing back in 2009, when the languages du jour–at least where I worked–were assembler and C, with a smattering of Erlang, and a relational database base management system (RDBMS) on the side.
Thirteen years after retiring, I still enjoy tinkering with code and learning how to create small programs in a variety of new and seasoned languages. Call it a hobby, a hedge against dementia, fun, whatever. Once in a while, I even get paid for some of my diverse but shallow software skills. My post-retirement computer play has involved JavaScript, Angular, Python, R, Erlang, Elixir, and several others. I’ve recently added Haskell to my try-soon list. Meanwhile, I’ve been attempting to learn Go, off and on for several years. But each time I’ve gained a little momentum, I’ve kept getting interrupted by other projects, deadlines, events, or sudden announcements of something new and shiny that’s supposedly “hot.”
Go is hot now, of course, even if it’s not new. Designed at Google, it first appeared in 2009. And it’s currently staying near the top of many software-language popularity surveys. So I was pleased when I got my hands on a copy of the 3rd edition of Mastering Go by Mihalis Tsoukalos. One of the first things I noticed in the book is a noticeable UNIX bias in some of its early discussions. No big surprise; the author is a UNIX systems engineer who’s written other books about Go. In a paragraph titled “Why UNIX and not Windows?”, he writes: “You might ask why we’re talking about UNIX…and not discussing Microsoft Windows as well. There are two main reasons for this. The first reason is that most Go programs will work on Windows machines without any code changes because Go is portable by design–this means you should not worry about the operating system you are using.”

The second thing that caught my attention is the author’s presentation of short, focused code examples on nearly every page of this 682-page book. I haven’t yet tried all of the code examples, but I’ve tried quite a few. They work as described. And the descriptions associated with each example have helped me feel that I am finally getting some momentum Go-ing (sorry, mediocre pun).
Tsoukalos’ book and a temporary reduction of other projects have been exactly the kick I’ve needed to improve at Go. I won’t master Go, of course. I have no reason to. Who’s hiring people born during World War II to develop or support Go-based software in 2022? But it feels good to my brain that I’m learning more than I’ve been able to grasp in previous efforts, using other Go introductory books.
Mastering Go, Third Edition is a solid, well-structured, and well-written work for those who are new to Go, as well as those who may already be using it in software environments. It’s a very good how-to reference book as well. I’m planning to keep this book handy for each time I’m able to spend a little more time building my Go skills.
—Si Dunn is a writer, screenwriter, photojournalist, and book reviewer in Austin, Texas.
#bookreview #go #golang
-30-
If you believe book reviews can help readers stay aware of worthy new books to consider, please click here to encourage this effort to continue. To have a new book considered for review on this blog, please email sidunn@sagecreekproductions.com. Thank you!
***