 and do it really well." and the agile tenet of "refactoring." Why is collaboration SO important in open source? Especially given that one can get value out of open-source software without ever making a contribution. That is, until something needs to be changed. If the change is implemented in isolation, and not shared with others, then it also needs to be maintained in isolation forever. It is for this reason it makes sense to collaborate first, sell the other constituents (owners/reviewers/quality assurance team/automation team), the need for change. Building the Network of the Future To initiate the change, it may be necessary to lead. Therefore, collaboration across the community is an imperative. This is the art of getting help in the open-source community. Getting help in today's software landscape also involves a key concept-getting help from more capable or more experienced developers. As an example, using Kubernetes, the container-clustering software released to open source by Google derived from their internal Borg tool, means getting software and help from some of the best-distributed computer scientists and developers in the world with 10+ years of experience in production. Software will grow in complexity to the point where it needs a round of simplification or refac- toring. This is where the phrase "you should expect to throw one away" originates. There are always improved methods, programming languages, or new mechanisms to simplify software. Sometimes it takes starting over to take the learnings from the first version and apply it to develop a better second version. An example of this is the recent attempt at rewriting OpenStack in Go. The OpenStack developer community has been using Python-many think of OpenStack as only a Python project. Recently, Intel assembled a group that wrote a second version of the networking and virtual machine management components of OpenStack in an open-source effort called Ciao using the Go programing language and dramatically improved the scaling characteristics of