Friends & fellow coders, I am overjoyed to share that part 2 has finally arrived. In this book, I share my secrets to writing high-quality Go code efficiently, effectively, and productively. It contains practical approaches to software engineering, software design, and code UX that will set you on the path to success. As you may know, in part 1, we focused on making our applications faster; part 2 focuses on making the programmer faster. As the DORA study has shown, writing high-quality code is key to delivering software quickly. For others, please pick up your copy of the book at your local Amazon website or your preferred bookstore.
Just dropping a quick update to let you know that Beyond Effective Go part two is finally going off for professional editing tomorrow! After the tremendous response to part one, I’m determined to make part two even better with the help of a professional copy editor. I used Reedsy to find and select a top-notch editor, and […]
In the previous posts, we examined the Why, When, and How Much of testing. In this post, we will complete the thread with an examination of What we should be testing and What we should not be testing.
In the previous post, we examined the Why and When of testing in this post, we will build on that foundation and look at How much we should be testing.
When it comes to testing, the most common misunderstanding is the motivations of testing itself. Some folks see testing as a burden imposed from on high. Some folks see testing, or more specifically, test coverage, as a metric that determines how well they did their job. Sorry, but neither of these is true. This post will address these fallacies and give you a different perspective on testing.
Introduction In Part 1 of this series, we introduced the goal of understanding how our system performs by adding instrumentation. This article expands on this goal by taking the instrumentation data captured and visualizing this data on a dashboard. The goal of SRE dashboards is to give us a simple and efficient means of understanding […]
Introduction After we set ourselves the goal of system reliability, our first goal must be awareness. Simply put, we must be fully aware of how our service performs. By performance, we are not referring to benchmark tests written and executed in isolation but rather how well our service delivers value to its users. The four […]
The following content is a small extract from my latest book Beyond Effective Go – Part 1 – Achieving High-Performance Code. Slow consumers When designing function and method APIs that publish data to a channel, we should consider how the code will respond to slow consumers. Will the producer block until there is additional space in […]
A small extract from my latest book about deadlocks
This is my light-hearted attempt to help engineering managers get the most value out of a downtime incident. Introduction So you had an incident? Condolences.On the bright side, however, perhaps there is an opportunity to learn and make things better? Process I will offer you a series of questions that you should ask yourself about […]