Categorygithub.com/corsc/Beyond-Effective-Go
modulepackage
0.0.0-20240515231637-ec98fb37cb2b
Repository: https://github.com/corsc/beyond-effective-go.git
Documentation: pkg.go.dev

# README

Beyond Effective Go

Are you a Go programmer with 6+ months of experience?

Have you learned everything you can from Effective Go and wondered what to learn next?

Then Beyond Effective Go is for you.

These books, aimed at competent Gophers, don't mess around with the basics. Instead, they dive right into the problems professional programmers face every day. Like, how to write applications and services that are fast, robust, and able to be maintained and extended as requirements change.

These books focus on both the programmer and the code by addressing four critical aspects of Go programming, developer productivity, application performance, code quality, and depth of understanding of the language and tools available.

After reading this book, you will know what aspects of your application or code to focus on and when. You will have a suite of tools, software patterns, and recipes to make your life easier and your code better, faster, and easier to maintain.

What is going on here?

The code in this repository is the companion code for this book series. The series was started a while ago, and due to, well, life issues, it was not completed then. This book was initially titled "Advanced Go" and was to be written under contract with Packt. However, because of the delay, this is no longer the case. I am now attempting to complete this work as a series of books in my spare time between other work and life commitments.

As you will see by the chapter statuses (below), it is a work in progress.

With that out of the way, I want to request help. I find no greater reward for my writing than knowing that I have helped someone learn; thus, I invite you to help me finish this book by reading any of the chapters below and letting me know your thoughts. Similarly, if you have read a completed book, please leave a review (good, bad, or ugly) on your favorite bookstore's website. I am absolutely looking for positive and negative comments (preferably in the form of constructive criticism).

If something needs more explanation, please tell me. If something needs less explanation, please tell me.
If something needs an example, please tell me.

Like software, the earlier problems are identified, the easier they are to fix. And once something is published, it can't be easily changed. Please check the appropriate link and request access to the individual chapters.

Structure

This book series is (currently) organized into 3 books:

  1. Achieving High-Performance Code
  2. Striving for High-Quality Code

Part 1: Achieving High-Performance Code

This book focuses on writing blazing-fast code because sometimes we need to extract every last drop of performance from our system.

Chapters:

ChapterTitleStatusLink
1Understanding Concurrency, Parallelism, and the Sync PackagesPublishedPurchase Book
2Applying Expert-level Go concurrency: Primitives, Patterns, and ToolsPublishedPurchase Book
3Achieving High-Performance CodePublishedPurchase Book

Part 2: Striving for High-Quality Code

This book discusses writing eminently readable, maintainable, and extendable code. In most applications, the code's quality determines how easy it is to maintain and extend and how much we will enjoy doing so. At the end of the book, I've also included some interesting "other" things you can do with Go, like functional programming and metaprogramming. These don't necessarily directly lead to quality, but they can lead to productivity and improved language understanding.

Chapters:

ChapterTitleStatusLink
4Exploring Software Design Principles and PatternsEditingPre-order link coming soon!
5Optimizing for Code UXEditingPre-order link coming soon!
6Advanced Unit Testing TechniquesEditingPre-order link coming soon!
7Improving your Development ProductivityEditingPre-order link coming soon!
8Examining Unusual Patterns for GoEditingPre-order link coming soon!
9MetaprogrammingEditingPre-order link coming soon!

If this content is your kind of thing, consider joining my Google Group (very low traffic and no spam). Book updates will be posted there.

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author