How the Internet Got Its Rules

The New York Times had an article recently, “How the Internet Got Its Rules,” which offered an intriguing glimpse of the beginning of a phenomena that is an integral part of life today. The article was written by Stephen Crocker, one of the people involved with creating those rules forty years ago in 1969.

One thing that’s striking is how the way the underlying rules for Internet programming were developed is reflected in the very nature of the Internet. As the group working on this matter proceeded, they were concerned about not “sounding presumptuous.” As a result, the process for making rules was open to all; bulletins on what was being discussed and decided were labeled “Requests for Comments,” or R.F.C.s. Crocker notes:

The early R.F.C.’s ranged from grand visions to mundane details, although the latter quickly became the most common. Less important than the content of those first documents was that they were available free of charge and anyone could write one. Instead of authority-based decision-making, we relied on a process we called “rough consensus and running code.” Everyone was welcome to propose ideas, and if enough people liked it and used it, the design became a standard.

Maybe it’s just me, but I’m sensing a bit of a “60’s vibe” in this paragraph. “Power to the people” indeed…

Anyway, the rules for the Internet were apparently an early form of open standards, which are integral to open source software today. This openness was key to the rapid development of the Internet and the World Wide Web:

This was the ultimate in openness in technical design and that culture of open processes was essential in enabling the Internet to grow and evolve as spectacularly as it has. In fact, we probably wouldn’t have the Web without it. When CERN physicists wanted to publish a lot of information in a way that people could easily get to it and add to it, they simply built and tested their ideas. Because of the groundwork we’d laid in the R.F.C.’s, they did not have to ask permission, or make any changes to the core operations of the Internet. Others soon copied them — hundreds of thousands of computer users, then hundreds of millions, creating and sharing content and technology. That’s the Web.

Put another way, we always tried to design each new protocol to be both useful in its own right and a building block available to others. We did not think of protocols as finished products, and we deliberately exposed the internal architecture to make it easy for others to gain a foothold. This was the antithesis of the attitude of the old telephone networks, which actively discouraged any additions or uses they had not sanctioned.

The way the rules for the Internet were encouraged to emerge through open collaboration is reflected in the emergent nature of the Internet itself.  Recognizing the power of this approach, Crocker has a suggestion regarding the issues we face today:

As we rebuild our economy, I do hope we keep in mind the value of openness, especially in industries that have rarely had it. Whether it’s in health care reform or energy innovation, the largest payoffs will come not from what the stimulus package pays for directly, but from the huge vistas we open up for others to explore.


About Dave Higgins

I've been interested in current events since at least the mid 1960's, and in ideas from modern science since the early 1990's. My website Quantum Age, which has been online since 1996, presents a basic framework for applying ideas from modern science to today's world. In this blog I discuss current events in the context of that framework.
This entry was posted in emergent and tagged , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s