Beyond Effective Go: Part 1 - Achieving High-Performance Code

· Corey S. Scott
3 reviews

About this ebook

Are you an experienced Go developer that wants to be more productive?

Do you want to write cleanerfaster, and easier to maintain code?

Then the Beyond Effective Go book series is for you.

This series is aimed at competent Gophers. It does not mess around with the basics but instead dives right into the daily problems that professional programmers face. Chiefly, how to write fast, robust applications and services that can be maintained and extended as requirements change.

Unlike most books, Beyond Effective Go focuses on the programmer and the code by addressing the four critical aspects of programming in Go - developer productivity, application performance, code quality, and depth of understanding of the language and tools.

This book, Part 1 of the series, focuses on achieving high-performance code. You will learn which aspects of your application or code to focus on and when. You will have a suite of tools, software patterns, and recipes at your disposal to make your life easier.

After reading, you will:

- Understand the differences between Concurrency and Parallelism.

- Identify and avoid concurrency issues like deadlock, starvation, livelock, and data races.

- Understand the various concurrency interaction patterns and be able to apply the one that best fits the problem at hand.

- Take a deep dive into Go’s concurrency primitives and be able to apply them expertly but also avoid many of their gotchas.

- Be able to diagnose concurrency and performance issues using Go’s profiler, execution tracing, and benchmarking tools.

- Be able to identify when code needs optimizing, what needs optimizing and how.

- Have a catalog of concurrency and performance patterns that you can quickly apply to your projects.

Ratings and reviews

3 reviews

About the author

Corey Scott is currently a Principal Software Engineer at Grab & OVO, living in Melbourne, Australia.

He has been programming professionally since 2000, with Go as his preferred language for building large-scale distributed services since 2014.

He is the author of multiple books on Go, an occasional blogger on various software-related topics, and is most passionate about the ideals of Software Craftsmanship and Code UX.

Also, he is always up for a good debate about Software Engineering, Continuous Delivery, Testing, or Clean Coding.

Rate this ebook

Tell us what you think.

Reading information

Smartphones and tablets
Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.
Laptops and computers
You can listen to audiobooks purchased on Google Play using your computer's web browser.
eReaders and other devices
To read on e-ink devices like Kobo eReaders, you'll need to download a file and transfer it to your device. Follow the detailed Help Center instructions to transfer the files to supported eReaders.