Most of the time we write about technology topics close to our hearts, and open source software is certainly one of those topics. However, this post is also about the process of writing books, which we’ve been doing for almost 30 years now. How we came to embrace open source as part of our book publishing endeavors is a story going back to the early days of Systems Approach.
There was a ripple in the world of academic publishing a couple of weeks back when the entire editorial board of Neuroimage walked out in protest at the high publication charges being imposed by Elsevier. Our own story of freeing content from Elsevier is a bit less dramatic but still makes for an interesting tale. Let’s start with the origins of Computer Networks: A Systems Approach, which we first published in 1996, when both the Internet and the publishing world were very different places than they are today.
Larry started the book on his own in 1994 and there was considerable interest in the publishing world to sign the contract for a new textbook on networking. The Internet had just become mainstream enough to make the cover of Time magazine, as Internet access started to spread beyond academic and research institutions. One of the distinguishing features of Larry’s proposal was that it put the Internet and its protocols at the heart of networking, whereas other books at the time treated TCP/IP as just one example among many competing approaches. In the end, Larry signed with then-independent Morgan Kaufmann Publishers (MKP), whose main claim to fame was that they also published the iconic Computer Architecture book by Hennessy and Patterson. Not only did we like the idea of being associated with that book, but working with a small publisher, we discovered, meant that you had the attention of the entire company when your book was getting ready for publication.
Larry brought me on as a co-author in 1995 when he realized what a large task he had bitten off. We’d collaborated on research projects and academic papers before, so we knew that we could work together effectively, but I don’t think either of us quite appreciated how much work it takes to produce 500-plus pages of text and the images to go with them. I found writing a book that will be in print for years to be qualitatively different from writing academic papers, where a reviewer is likely to tell you what you did wrong and small errors may well go unnoticed. This work consumed our weekends and evenings for months. Often I would motivate myself to keep going by imagining that one day our work would be read by students of networking who would be influenced as much by our book as I had been when reading the works of Comer, Tanenbaum, and other giants of the field.
We submitted the final manuscript to the publisher late in 1995. Not entirely by coincidence, I also ended up deciding that day to leave my research job at Bellcore and go to work at Cisco. Having just finished a book on networking, I knew what I cared about most in the technology landscape, and I was pretty sure Cisco was going to be a better place to push forward on that technology than Bellcore. I wasn’t wrong.
Once the book was published, the team at MKP set out to get it adopted by as many professors as possible, and the fact that we had taken a “Systems Approach” and centered our work on the Internet gave us a good position in the market. We never got to be the most popular networking textbook, but we carved out a good niche in what turned out to be a rapidly growing market.
One thing we didn’t quite appreciate was that textbook publishers really like to publish new editions every couple of years. For one thing, it gives their sales teams something new to talk about, but more importantly for the publisher, it stifles the used book market. If you make enough changes from edition N to edition N+1, then students will find they can’t really get by with a used copy, so they are pushed to buying the new edition. More book sales! We were happy enough to write the second edition in any case, since we’d found plenty of things in the first edition that we wanted to change–in fact Larry came to refer to the first edition as the Beta version. Security and wireless networks were two topics of note that first appeared in the second edition.
It was when we got asked to produce a third edition that Larry and I realized our incentives were not well-aligned with those of the publisher. Thinking back to what motivated us to write the first edition, it wasn’t about selling as many books as possible–it was about having an impact on the upcoming generation of students. We wanted our books to be read. Making used books obsolete was irrelevant to our goals. Furthermore, we’d worked hard to make sure our book focused primarily on timeless, fundamental aspects of networking. We didn’t aim to be the encyclopedia of networking as it exists at one point in time, but rather the guide for future networking engineers and protocol developers to help them build on the foundations laid in the last 30-plus years. So even though networking standards do change, the fundamentals change much more slowly.
In parallel with this development, a chain of acquisitions left us writing for Elsevier, not MKP. (Readers who’ve worked for tech startups may recognize this phenomenon.) Our original, very supportive editorial team had moved on. Now we were just a mid-sized book project in the giant publishing machine. This made the non-alignment of incentives ever more apparent. We settled into a multi-year, low-key struggle with our publisher in which they were always asking us for a new edition–sometimes before the last one had even made it into print–and we were always trying to delay the next update.
Larry’s involvement in open source software goes back a long way, including the x-kernel code that was included in the first edition. But it was in 2012 that I really started to pay attention to open source, thanks to my joining the Nicira team and making some small contributions to the Open vSwitch project. Coincidentally, I had to take a medical leave of absence from work in mid-2012 after a serious cycling accident, and since I was neither working nor sleeping much for a couple of months, I had a lot of time for creative thinking. It was during one of those sleepless nights that I came to the realization that an open source model for our textbook would be the best path forward for us. We could achieve our main goal of making the book accessible to the widest possible audience, while also leveraging the input of the broad networking community to keep on making updates to the book. Our vision was that the book would become an open source repository just like a software project, taking contributions from the community, but with Larry and me still retaining the ability to steer the overall direction of the book. And every once in a while we could “release a version” to produce the next published edition for Elsevier.
The big problem with this plan was how to sell it to Elsevier. Clearly if the book was put online for free, that would negatively impact their book sales. But it would not drive them to zero. In fact Elsevier already had a series of books that were simply printed versions of RFCs on selected topics, which for some reason people paid for rather than reading the RFCs freely online. So we made the pitch that (a) the book would be better if we did it this way (b) they might not get another edition any other way, and (c) it wasn’t going to be the end of revenue for the book. To their credit, when we had the meeting to discuss this plan, one of the Elsevier editors made the analogy to the Oxford English Dictionary: a book that (apparently) loses money on every sale, but which is a great brand asset for its publisher (Oxford University Press). “We’re happy to be your OED”, we said. (It’s an open question whether we’ve done much to help the Elsevier brand, which obviously has bigger problems these days.)
It took several years to work out all the details, but today we are free to publish “Computer Networks: A Systems Approach” under a Creative Commons license, and we make small fixes to the online version frequently. A sixth edition, pulled from our repo, was published by Elsevier in 2021, and while sales aren’t anything like they were on the first few editions, they are indeed well above zero. There are now plenty of teachers and students using the latest version of the book without waiting for the multi-year update cycles that a publisher can manage. We even had a professor reformat the book with a large font that aids dyslexic students–a benefit of open source we had never anticipated. Getting control over our content also provided the starting point for a number of more focussed Systems Approach books, such as our one on TCP Congestion Control.
So this is also the origin story of Systems Approach, LLC. Last week we published our 4th book in the Systems Approach series: Private 5G: A Systems Approach. Like all our books now, it is an open source project and free to use under a Creative Commons license. Some of the details about our choice of license are covered in our submission to the 2020 Sigcomm Education Workshop. As we noted in that paper, open source software provides a model for textbooks that aligns well with where we believe the world of networking is heading, leveraging the input of the networking community and enabling us to share our efforts as widely as possible.
Another thing we can do with our open source content is license translations, and we recently did that with Edmar Candeia Gurjão producing a Portuguese translation of our 5G book. And we finally got that book to be complete enough that we have made it available as both print and eBook editions. And if you always wanted a Systems Approach coffee mug, now we have them too.
Our course on Magma, which we created two years ago, has now been revised and expanded. A good place to start if you want to learn about open source approaches to mobile networking.
Bruce is gearing up to give a lecture about “60 years of Networking” as part of the 60th anniversary event for Computer Science and AI at the University of Edinburgh. One of the themes will be the need to return to the decentralized roots of the Internet. Which is a reason why you should follow us on Mastodon and admit that Twitter is no longer fit for purpose.