Beginning Go Programming
258 pages
English
PDF
4.5

Beginning Go Programming

Beginning Go Programming

Author:

Year:

Summary:

Introduction

The book «Beginning Go Programming» by Ioannis Balkouras was published in 2019 and is a compact yet comprehensive introduction to the Go language (Golang). Unlike many «tomes» on programming languages, this textbook is only 258 pages long, making it an ideal choice for those who want to quickly master Go syntax and core concepts without unnecessary fluff. The book is aimed at readers who already have basic programming experience (in any language) and aims not just to introduce the syntax, but to teach thinking in the Go paradigm — simple, efficient, and pragmatic.

What the book is about

The book covers fundamental topics needed to start working with Go. The author consistently guides the reader from installing tools to creating full-fledged console applications. Main sections include:

  • Installing Go and setting up the working environment (GOPATH, modules).
  • Basic syntax: variables, data types, control structures (if, for, switch).
  • Functions, scopes, returning multiple values.
  • Arrays, slices, and maps — working with collections.
  • Structs and methods — basics of the object-oriented approach in Go.
  • Interfaces — a key concept for polymorphism.
  • Error handling (idiomatic error handling).
  • Goroutines and channels — basics of concurrent programming.
  • Packages and modules — code organization.
  • Testing and benchmarking using built-in tools.
  • Working with files, input/output.

Each chapter contains practical code examples that can be immediately run and modified. At the end of the book, there is a small project that combines the topics studied.

Who this book is for

The book is intended for beginner programmers who are already familiar with the basics of programming (variables, loops, functions) in any other language — Python, Java, JavaScript, C++, etc. If you have never programmed before, the book may seem difficult, as the author does not explain basic concepts like «what is a variable» or «why loops are needed». However, for those who want to quickly switch to Go from another language, this is an ideal option. The book is also suitable for experienced developers who want to get acquainted with Go over a weekend — the material is concise and focused on the essentials.

What the reader will learn

After working through the book from cover to cover, the reader will be able to:

  • Install Go and set up a workspace.
  • Write programs using all basic language constructs.
  • Work with slices, maps, and data structures.
  • Create and use interfaces for flexible code.
  • Handle errors in the Go style (without exceptions).
  • Write simple concurrent programs with goroutines and channels.
  • Organize code into packages and modules.
  • Write unit tests and benchmarks.
  • Read and write files.
  • Understand the Go philosophy: simplicity, readability, efficiency.

Strengths

The main advantage of the book is its conciseness. The author does not get distracted by long theoretical digressions but gets straight to the point. Each topic is illustrated with a small but complete example. The code is neatly formatted and accompanied by comments in English (which is useful for practicing technical English). Another plus is the emphasis on modern Go features: modules (they are already mentioned in the book, although it was published in 2019), contexts, testing. The book teaches «proper» Go, not just a translation of syntax from another language.

The chapter on concurrency deserves special mention — it is written very accessibly, with simple analogies and examples that help understand goroutines and channels without unnecessary headaches. For a book of 258 pages, this is a great achievement.

Who it is recommended for

I recommend it

Recommendations