travisjeffery

travisjeffery

Author of Distributed Services with Go

Distributed Services with Go: Testing chapters

Hey y’all, just wanted to provide some context for removing the testing chapters from the table of contents.

For all books PragProg has authors write a proposal that includes a planned table of contents. At this early stage I wasn’t sure whether to put testing in their own chapters or to write tests as we went through the book/project.

When I’m writing code or building a project I would write tests as I go of course and I’d want someone learning programming from this book to do so as well, so when I began writing the book it was natural to write the tests as we went.

After finishing all the other chapters I realized I’d covered most of what I wanted on testing already in the other chapters and there wasn’t much point for adding dedicated testing chapters that’d mostly reference code we had already written.

After I finish the initial draft, I’ll go back to the existing testing code/sections in the book and add to anywhere I held back because I thought there would be dedicated testing chapters coming up.

I also like the flow of the book now where we begin with nothing and end the book by deploying our service to the internet, it’s a complete story.

Thanks.

Marked As Solved

Margaret

Margaret

Editor at PragProg

Hi Travis @travisjeffery,

Your post provides some really cool glimpses of what it is like to write a book in addition to explaining your logic for moving testing topics. DevTalk has a new Content Creators forum area if you feel like sharing more of what it is like to write a book (while it is fresh in your mind). Just a thought.

Best,
Margaret @marg

Where Next?

Popular Pragmatic Bookshelf topics Top

New
belgoros
Following the steps described in Chapter 6 of the book, I’m stuck with running the migration as described on page 84: bundle exec sequel...
New
brianokken
Many tasks_proj/tests directories exist in chapters 2, 3, 5 that have tests that use the custom markers smoke and get, which are not decl...
New
mikecargal
Title: Hands-on Rust: question about get_component (page 295) (feel free to respond. “You dug you’re own hole… good luck”) I have somet...
New
AleksandrKudashkin
On the page xv there is an instruction to run bin/setup from the main folder. I downloaded the source code today (12/03/21) and can’t see...
New
nicoatridge
Hi, I have just acquired Michael Fazio’s “Kotlin and Android Development” to learn about game programming for Android. I have a game in p...
New
hazardco
On page 78 the following code appears: <%= link_to ‘Destroy’, product, class: ‘hover:underline’, method: :delete, data: { confirm...
New
rainforest
Hi, I’ve got a question about the implementation of PubSub when using a Phoenix.Socket.Transport behaviour rather than channels. Before ...
New
ggerico
I got this error when executing the plot files on macOS Ventura 13.0.1 with Python 3.10.8 and matplotlib 3.6.1: programming_ML/code/03_...
New
redconfetti
Docker-Machine became part of the Docker Toolbox, which was deprecated in 2020, long after Docker Desktop supported Docker Engine nativel...
New

Other popular topics Top

PragmaticBookshelf
Write Elixir tests that you can be proud of. Dive into Elixir’s test philosophy and gain mastery over the terminology and concepts that u...
New
AstonJ
What chair do you have while working… and why? Is there a ‘best’ type of chair or working position for developers?
New
brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
AstonJ
I’ve been hearing quite a lot of comments relating to the sound of a keyboard, with one of the most desirable of these called ‘thock’, he...
New
AstonJ
Just done a fresh install of macOS Big Sur and on installing Erlang I am getting: asdf install erlang 23.1.2 Configure failed. checking ...
New
Exadra37
Oh just spent so much time on this to discover now that RancherOS is in end of life but Rancher is refusing to mark the Github repo as su...
New
PragmaticBookshelf
Create efficient, elegant software tests in pytest, Python's most powerful testing framework. Brian Okken @brianokken Edited by Kat...
New
PragmaticBookshelf
Use WebRTC to build web applications that stream media and data in real time directly from one user to another, all in the browser. ...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
AstonJ
This is a very quick guide, you just need to: Download LM Studio: https://lmstudio.ai/ Click on search Type DeepSeek, then select the o...
New

Sub Categories: