On one side of the table sat Peter H Newton, thin and balding, with a nervous tick in his left eye. Peter was a lawyer for the Open Source Software Initiative, an organization dedicated to ensuring that software was available and accessible to all people. Peter had everything on his desk — 3 pencils, 4 pens (blue, red, and two black), an eraser, a coffee cup, and an oversize legal notepad — placed in rectilinear relation to the table's edges, equidistant from each other, and perfectly centered. His involuntary eye tick was like a fashion model's mole — marring his perfection just slightly.
On the other side was Adam Spencer, the second youngest vice president at Xelerated Networks. He graduated with an engineering degree from Carleton, and a law degree from Brown. Spencer was in charge of Xelerated's legal affairs division. Adam had been out at the cottage, teaching his daughters to swim, when the call came in. The girls were splashing in the water, and he was splashing back at them. His wife had to call out several times in order to get his attention. The urgent phone call dragged him away, during his one and only precious week with the family.
"Let's get started, then, shall we?" said Adam. He looked at Peter and wished he was back at the cottage. He still couldn't believe that this 3-month old situation had to come to a head today. "As I understand it, you, Mr. Newton, are claiming that Xelerated Networks has violated the copyright on your software. Is that correct?"
"Yes," said Peter in his squeaky voice. "Xelerated took code from a copyleft-licensed program, and incorporated it into their own work. They failed to make the derived work conform to the same licensing requirements as the original work that they incorporated. This is a clear violation of our license, and we're here to seek enforcement of our licensing terms, otherwise we'll have no option other than to take you to court and seek a penalty of at least $5 million in fines, as stipulated under the DMCA." Peter's hands made precise cutting motions above the desk with each point.
Adam leaned forward at the mention of the DMCA. This was certainly an interesting twist. The last time he'd been involved with the Digital Millennium Copyright Act was several years ago, when he was still at Brown. A couple of frat boys got busted after downloading movies off the net and selling the home-made DVDs to raise money for some glorious house party. Seeing as how they were mostly harmless, Adam had helped to mitigate the charges against them, pro-bono, resulting in only a $600 fine and 30 days community service. Frat boys didn't have deep pockets.
Adam waved his hand, "Hold on a sec." Peter's head jerked to look at him. "Just so we're on the same page, what exactly do you mean by copyleft? It's a term that's become so abused of late."
Peter's eyebrows twitched upwards slightly. How dare Adam question The Copyleft License? However, he recovered almost instantly. There were still pockets of resistance, and he should have expected that from a large corporation. "Ah, yes. You see, the term copyleft is basically a short form for a perfectly legal and enforceable form of copyright. The term encompasses both the rights of the author, as well as the obligations imposed on the user, or licensee. In this case, that's Xelerated. Now, the -"
"And this all stemmed from the early days of software development, right?" Adam interrupted.
Peter wondered what Adam was getting at. He neatly rearranged two of his pens for the occasion. "Yes. Basically, in those days, there were various licensing models. You had your shareware, where the end-user would get to use the software, but wasn't given the source code, and hence couldn't make modifications. In some cases, a nominal fee applied. You also had entirely proprietary software, made by commercial organizations, where the user would have to sign a very restrictive license, and pay a usually much bigger fee — sometimes even paying a yearly license fee.
"The problem with this is that it didn't encourage people to share the source code for the software. We saw this as concentrating software ownership in the hands of the commercial companies. This could eventually lead to there being a small number of very large software companies, perhaps even just a monopoly." Peter shuddered at the word, replacing the blue pen he was holding with a red one. "So we, at the Open Source Software Initiative, decided to do something about it. In 1986, we came up with our so-called copyleft license — the original one, I might add. This license means that the person receiving the software must be able to get the source code to the entire piece of software at any time they want, simply by asking for it. But, it also means that the person receiving the software may only redistribute it to others under the same terms, even if they had added their own content to it, or, in the case of Xelerated, added it to their code — either way. This way, copyleft software would flourish, creating an entire open source community." His eyes glowed as he finished, and now he sat back, waiting for the evil corporation's next move.
Xelerated Networks, however, wasn't going to release their source code to anybody. Ever. Their XN-1 IPv6 Router, a best seller for the last 2 years, had been miles ahead of the competition. Xelerated's teams of programmers crafted 3 million lines of code to run the 16-cabinet all dark-blue behemoth, totalling several hundred person-years worth of development, and costing tens of millions of dollars. Adam's best guess was that there were probably on the order of a hundred or so juicy patents still in the code, and tons of minor ones. These were waiting to be mined by the legal team — now with almost as many people as all the software development teams put together.
Adam shook his head a little, and said, "But, I'm going to show you that we didn't copy nor steal the code in question."
The boardroom lights were dimmed, and a pageful of computer source code appeared on the projection screen. Peter waved his laser pointer at a section of the code. "This is code from the Ospix kernel, a free, open source operating system, dated January 20th, 1992, that is subject to the copyleft license. As you can clearly see, this section of code deals with management of the call gate when the kernel goes from ring 0 to ring 3 to service a user request."
Adam gave a little shrug. He didn't understand the code, but then only a few hundred people in the world would — it was pretty obscure stuff.
Peter clicked again and a second window opened up on the projection screen, beside the first. "And here we have the Xelerated Networks code that does the exact same thing."
Adam squinted. Sure, they looked similar, but the Xelerated code seemed to be much better formatted. He rebutted, "There, see? They're not identical, just as we maintained all along. Similar problems have similar solutions. Identical problems may have almost identical solutions. It's no wonder that the code looks the same, it's trying to solve the same problem.
"For example, if I was writing a simple program to sum up the numbers from 1 to 10, and you were writing the same program, I'd be willing to bet that the two programs would end up looking almost identical, except perhaps for some minor formatting issues. "I'm asserting that's the case here — similar problem, similar program. Not identical."
When Adam got to the office that morning, he had called an emergency meeting with the programmer who wrote that piece of code. As luck would have it, he too was on vacation. Adam decided one ruined vacation was enough, so instead of hauling Martin Hovinko into the office, he just teleconferenced with him. Martin wasn't able to remember the exact origin of the code. He had committed it to the repository about a year ago, during an astoundingly hellish week of missed deadlines, angry customers and impatient managers.
"That's fine, but hold on a second," Peter said, "I have another slide..." He clicked the mouse again. "On the left, you can see Xelerated's code from July 16th, 2006, at 07:55:33 GMT. This is before the change." The code in question was no longer there, but in its place there was a comment, saying "add ring switch code here when we move to protected mode (V2)."
Another click. "And, on the screen on the right, you can see the CVS log from July 16th, 2006, at 08:22:34 GMT." Peter used the laser pointer to show a particular line on the second screen. "Notice the log entry, from user ID mh stating, 'Added ring0/ring3 code' and the accompanying delta change, +53 -1."
Adam stated the obvious, wondering what Peter's next move would be. "Ok, so over the course of 27 minutes and one second, one of our programmers, mh, deleted one line of code, and added 53 new lines of code into the Concurrent Versioning System repository."
Adam had gone over the CVS logs with his legal team several times this morning. It had really come down to the origin of the code. Where had Martin gotten it? Had he, in a Jolt-Cola caffeine and sugar induced coding frenzy, crafted 53 lines of code dealing with a fairly complicated issue in a mere 27 minutes? Or had he found the code on the net somewhere? Or had he, as Peter Newton alleged, really just stolen those lines from some copylefted code? When asked, Martin honestly couldn't recall. Adam didn't really think Martin came up with 53 lines of code in 27 minutes, so he must have gotten it from somewhere.
Hoping to get back to his kids earlier rather than later, Adam gave in. "Ok, we're willing to concede the point that the code looks similar to yours." Adam smiled at Peter. "And therefore we're prepared to release that one module under the terms of your license."
Peter looked like he was about to burst. "Right! 500 some-odd lines of code? I don't think so." ejected from him, along with some spittle. "We want all of it. All 3 million lines of code released. Otherwise, no deal." His face red, he was furiously turning his eraser over and over in his hand.
Adam made a calming motion with his hands. "Hold on, hold on — I'm not sure of the problem. Doesn't this meet the terms of your license agreement?" he asked in his best imitation of innocence. If Peter wasn't going to play nice, neither was he.
"Look, Spencer, that doesn't even come close! Our license states that the entire source base for the product must be released. Not just a part of it. And certainly not something that's," he glanced into a far corner of the room while he did the math, "less than 0.02% of the total!"
"And that's the problem with your damn license," retorted Adam. "It's a virus! Once one little tiny bit of copylefted code is added to an otherwise pristine piece of code, the entire codebase becomes infected."
"Well, we don't call it a virus, but yes, that's basically the idea," confirmed Peter hotly. He hated it when people called it a virus. He replaced his eraser and rotated his notepad just so in order to rebalance the universe again. The term was, after all, technically accurate, even if unflattering. "It keeps free software free," Peter justified, and then continued on a different angle. "Mr. Spencer, your company voluntarily used copylefted code. Nobody forced you to do this, right?"
"Yeah, that's true." Adam had calmed down. He sighed, and then took a deep breath. In. Out. "Are you sure you want to proceed in this vein, though?" he said cautiously, watching Peter's face.
Peter, convinced he had the upper hand, didn't think there was a trap, and said "Absolutely!" with great vigour.
"Very well then. I'd like to bring in an expert." Adam stood up and opened the door. He motioned to a shabby, long-haired hippie with a foot-long scraggly beard to join them in the conference room. "Peter Newton, I'd like to introduce Dennis Penner, and vice versa."
Only after the introductions were made did it slowly dawn on the men that Penner was in a suit. The suit looked like it was from the early eighties — out of style, but still in good condition, even if a little wrinkled and tight.
Adam began with, "Mr. Penner, are you familiar with Ring 0 / Ring 3 call gate code?"
"Yeah, sure," replied the man through his overflowing beard. Penner seemed to be preoccupied trying to figure out what operating system was running on the portable, rather than paying any particular attention to the question.
"Can you tell us your history with that particular type of code?"
"Huh? Oh, yeah," he mumbled, "I'm the original author. I wrote it back in uh... '89."
Peter was floored.
"Mr. Newton, would you be so kind as to go back to the slides showing the two samples of code, please?" Adam said pleasantly.
Peter complied with trembling hands. His perfectly aligned desk paraphernalia was starting to look strangely out of joint.
Adam waved towards the code, and asked Penner, "do you recognize this code?"
Dennis stared a little, his mouth working as if he was chewing something, and then said, "Yup."
"Could you elaborate, please?"
"The code on the left is mine, verbatim except without my copyright on it, and the code on the right is a derivation of that ... hmmm ... apparently with a small bug, I might add." Dennis grinned.
Adam came in for the kill. "So you're saying that Mr. Newton's Institute has, in fact, stolen your code, is that correct?"
Peter's face drained of all remaining colour. "Prove it," was all he could manage. He looked dully at his desk, but couldn't think of what to rearrange to invite harmony and order back.
"Yeah, sure. Borrow your laptop?" Dennis moved towards the laptop without waiting for the answer, scattering two of Peter's pens. His short stubby fingers moved at lightning speed and pulled up a website, showing the code, and a copyright date of October 14th, 1989.
"Fine." Peter crumpled. "I guess we're done here," he finished in a whisper.
"Um, sorry, no... not just yet." All eyes turned to Adam. Xelerated had gone to the trouble to fly Penner from California in their corporate jet, bumping a senior VP's Las Vegas conference junket. Adam wasn't going to just roll over and thank Mr. Newton for today's festivities. "Can you click on your license terms for us Mr. Penner?"
As Penner clicked on the license terms, his grin became so wide that you could actually see his teeth through his arboreal growth.
Five seconds into reading the license terms, an almost inaudible "My God," came from the now completely dejected Peter Newton.
"Yes, that's right, Peter," chuckled Adam. He might yet get out of here early.
"Everything?" Peter's tick was now working in earnest. There were no more straight lines in his world — everything was now bent, twisted, and misaligned.
"Mr. Penner, why don't you tell us what Mr. Newton has gotten himself into?" cajoled Adam.
"Sure can. This here license is what I call an anti-virus.
"I never liked the copyleft license terms, and so I made my own license. My code is licensed somewhat like copyleft code — if you include my code, then my license says that the rest of the code must also be licensed similarly. In fact, it says that all code in use by that particular organization has to be licensed similarly." He grew animated. "My license says that software should be totally open and free. And that -"
"And that means," Adam interrupted Dennis's soapbox, "that your entire codebase of copylefted stuff is now free." Adam turned to look at Peter. "Truly free. Free to be used by whomever, however they like. No restrictions whatsoever. And that includes us — we can give it away, we can sell it, we can modify it, we can — in short — do whatever we want. Including not releasing other code. Isn't real freedom great?"
The next evening, gathered around the campfire, the girls were cooking their marshmallows. The youngest turned to Adam and asked, "Tell us again, Daddy, the story of how you saved the world from the evil virus!"