Is Free Software dependent on the Internet? I have fantasized a (hopefully) comical situation that describes where I believe Free Software would be today if the Internet had never been invented.
Once upon a time the was a man named Tommy. Tommy’s loved his job as systems administrator for the grain distribution giant Garcill. He never had to do any real work; he could get by fine by doing almost nothing at all. Every now and then someone would have a problem with one of their computers. No worries; it didn’t take any effort whatsoever to throw a new cd in the cd drive and wait for Windows to reinstall itself. Other than occasional responsibilities, Tommy was free to sit at his desk all day, eat popcorn, and play hours worth of “Captain Comic”.
In order to make it seem like he was really motivationally driven to create the best possible technology system for Garcill, Tommy would occasionally attend technology conferences. The Chicago Mid-summer IT Convention was one of his favorites. You see, most of the people attending this conference were going for technology news and advice. This was one of the few places these pieces of information could be obtained, other than the occasional newspaper or TV story. Tommy thought differently. He knew the tourist attractions in Chicago were plentiful, all of which could be paid for through company money. Plus, the presenters never used microphones, so they couldn’t wake you up during a well-deserved nap. Life was good, thought Tommy, as he loaded up his suitcase with the things he would need to have a blast roaming the streets of Chicago.
Tommy arrived at the convention ready for a good time. Every year, he would compare the sessions he attended with the ones from the previous year to see what the worst one was. So far, the most boring one was “Understanding the Security and Compliance Implications of Large Scale Data Management” from 2005. Would this year be better or worse? By the sound of the first session, it would be worse. “GNU: The Operating System of Hackers”. Wasn’t a gnu another name for the wildebeest, and what the heck was a hacker?
When he walked into this session, there was some hippie standing on the stage. A hippie? Why in the world was there a hippie standing on the stage? What could he possibly lecture about, freedom? Yeah right. “Go back to the 70s,” Tommy thought to himself. While waiting for the lecture to start, though, it started to bother him. What could a hippie possibly lecture about. He obviously wasn’t going to lecture about freedom. What did freedom have to do with technology? “Maybe it has to do with saving the wildebeests,” he thought. “But they aren’t endangered.”
Tommy’s mind kept ping-ponging until the hippie stepped up to the podium to begin his lecture. He introduced himself and claimed he was the last true hacker, and that a hacker was someone who programs for fun. When he wasn’t allowed to modify the source code to a printer during his days at MIT labs, he decided to make a complete operating system that allowed anybody to modify it. He called this operating system “GNU”. Releasing GNU this way allowed people to have the freedom (“uhhh”, Tommy moaned) to use the piece of software, make changes to it, and give away the original program with or without your changes.
The presenter went on to talk about how he created the GNU project. In the 1980s, he started working on some of the basic components of GNU. He continued working faithfully on it, and had a usable operating system by 2005. Another benefit, he explained, was that it kept growing. If somebody wanted to add a feature, they could add it, and then give away the new modified version to anyone interested. Then this person could modify the modified version, and give that away again. After explaining all of this, the speaker put an old computer disk on his head and said he was “Saint IGNUtious, of the church of Emacs, granting computer freedom to all.”
“That was different,” Tommy thought. “Some of these presentations are really boring, but that was just plain stupid. How many times am I going to find someone who just made the changes I need to a piece of software?” As he walked out, he noticed that there were some demonstration computers set up. Tommy thought he would try one out, just to see how powerful this GNU thing was. Tommy sat down at the computer, and stared blankly at a screen that was, well, almost blank. It was a terminal.
“What does this thing do?” he asked the man next to him. “Type ‘ls /usr/bin’,” he replied. Tommy typed ‘ls /usr/bin’ and words were printed on the screen. “Those are all of the files in the ‘/usr/bin’ directory.” “What else does this do? I can do that on any UNIX machine.” “Not much. I suppose, though, that no one person can program a good operating system all by himself.” “I am sure there are a bunch of people out there who really want to work on GNU, but have no way of doing so. How would that person get his/her changes integrated into the code?”
“I should have probably introduced myself. I am Dan, from Indianapolis. I work in the Garcill IT department.” “You work for Garcill!” Tommy exclaimed. “Yeah. I know it doesn’t sound like much, but I do a lot more work than you probably think. The technology director in Minneapolis doesn’t exactly do what he is supposed to, so I am usually stuck cleaning up after him. So, where do you work?” “Uh… I…” Tommy stuttered. “I am on the All-Mart IT staff in Kansas City,” Tommy lied. “Sounds much more appealing than my job cleaning up after that buffoon,” Dan joked.
Not finding that joke very funny, Tommy quickly looked back at his computer screen. It still had the output of the command he had typed earlier on it. Among those words listed was word ’emacs’. “Wasn’t Emacs the name of that ‘church’ from the presentation?” asked Tommy, trying to change the subject. “Yeah, I think it was.” Tommy typed ’emacs’, expecting something amazing to happen. A text editor popped up. After a few minutes, the two men gave up trying to figure out how to actually type something into the text editor and left to go their the next presentation.
“What is your next session?” Tommy asked. “Caldera UNIX Desktop Deployment for the Medium-sized Business.” “I’ve got the same one.” As the two men walked to their next session together, their conversation had nowhere to go but back to the previous presentation.
“So why would anyone ever use GNU over a more powerful version of UNIX?” “It seems to me that he has this insane dream of everyone working together to create software for the greater good.” “Unless people printed out their changes and mailed them to a central developer, there is no way to communicate changes to the main developer. It’s impossible for anything productive to ever happen.” “Yeah, it’s not like computers can call each other up on the phone and have a conversation!” They laughed, but the laughter was short-lived. For the next seven hours, Tommy got to sit through session after session after session.
After the convention, and some fun roaming the streets of Chicago, Tommy caught the flight back to Minneapolis. He forgot about the presentations he attended at the conference, but he didn’t forget about the fact that someone else had to clean up after him because of his laziness. Tommy learned that the time he put into his job really did make a difference. He had a good feeling that he was, ethically, doing the right thing. He walked hastily down the hall to help some co-workers with their Windows computers.