An entire book could be written on the topic of the pipeline pattern. Some of the topics not covered in this chapter, but you should research on your own, include the following: Designing and implementing the Split and Merge filters Understanding how the sync.WaitGroup type helps you manage synchronization of channel communication Add branching and conditional workflow patterns to the pipeline Good reads: Go Concurrency Patterns: Pipelines and cancellation (https://blog.golang.org/pipelines) and Go by Example: Channels (https://gobyexample.com/channels)