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

iPaul
page 37 ANTLRInputStream input = new ANTLRInputStream(is); as of ANTLR 4 .8 should be: CharStream stream = CharStreams.fromStream(i...
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
jeffmcompsci
Title: Design and Build Great Web APIs - typo “https://company-atk.herokuapp.com/2258ie4t68jv” (page 19, third bullet in URL list) Typo:...
New
Chrichton
Dear Sophie. I tried to do the “Authorization” exercise and have two questions: When trying to plug in an email-service, I found the ...
New
swlaschin
The book has the same “Problem space/Solution space” diagram on page 18 as is on page 17. The correct Problem/Solution space diagrams ar...
New
jgchristopher
“The ProductLive.Index template calls a helper function, live_component/3, that in turn calls on the modal component. ” Excerpt From: Br...
New
dsmith42
Hey there, I’m enjoying this book and have learned a few things alredayd. However, in Chapter 4 I believe we are meant to see the “>...
New
bjnord
Hello @herbert ! Trying to get the very first “Hello, Bracket Terminal!" example to run (p. 53). I develop on an Amazon EC2 instance runn...
New
mcpierce
@mfazio23 I’ve applied the changes from Chapter 5 of the book and everything builds correctly and runs. But, when I try to start a game,...
New

Other popular topics Top

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
Learn different ways of writing concurrent code in Elixir and increase your application's performance, without sacrificing scalability or...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
PragmaticBookshelf
Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single...
New
PragmaticBookshelf
Build efficient applications that exploit the unique benefits of a pure functional language, learning from an engineer who uses Haskell t...
New
New
First poster: AstonJ
Jan | Rethink the Computer. Jan turns your computer into an AI machine by running LLMs locally on your computer. It’s a privacy-focus, l...
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New
PragmaticBookshelf
Use advanced functional programming principles, practical Domain-Driven Design techniques, and production-ready Elixir code to build scal...
New

Sub Categories: