Today we spoke about Software and Property, picking up where we left off last week. We were shown an ad from 1985 for the HP-85 personal computer because Jon could not get full power on the machine he brought last week. The sewing machine sized box was advertised as portable, friendly, expandable, and capable of “full-screen editing.”
We then discussed the Time magazine article that was assigned as the reading for today’s class. Interesting points on the “Machine of the Year” were: the back-up power provided by a hand crank, the fear that computers will completely replace human jobs, the very-un-PC jab at the Japanese out of fear of their success in the computing field, and the lack of prediction of the huge fields of software and tech support. A notable point was the very low estimate in the 1980s for the maximum number of personal computers in the 2000s: 80 million. Now, there are ~300 million computers sold each year worldwide. Although this includes the frequent replacement rate of the personal computer, the modern availability of the computer is far beyond what was predicted.
Next, we discussed “A Brief History of Hackerdom” by Eric Raymond. An interesting distinction between hacking and cracking, a distinction not made by the media. Where cracking is breaking into a system with malicious intent (the definition used for hacking by the mainstream media), hacking is entering a system without permission but without malicious intent, perhaps to understand and explore a system or to expose fatal flaws to security. Raymond’s point was that early hackers created the first internet culture by using the ARPANET to communicate about the innovations they were making and/or discovering. Although the ARPANET did not connect all computers like the modern internet, by logging into compuservers a user could log into discussion boards or download games. A fun thing to come out of this early internet culture was Blinkenlights.
Next, we read the folloing quote by Donald Knuth (1974):
“Computer programming is an art, because it applies accumulated knowledge to the world, because it require skill and ingenuity, and especially because it produces objects of beauty.”
This is not a common view of computer programming, as it seen as more of a math skill that a creative one. However, a program that works efficiently requires a measure of elegance and ingenuity beyond simply solving a problem. As a class, we decided that Knuth’s view of computer programming is the ideal, as the real world applied constrictions like limited time and funds. Although not all computer programming is artistic, all computer programming could be.
We then defined some terms:
—Open source: the code is available to be viewed, with or without a monetary fee
—Free software: two options, free as in beer, or free as in speech. Free as in beer means it costs no money, while free as in speech means that it is available everywhere, without restriction, with or without a monetary fee
Other ways that software could be “free” or “open” is when software is development in the open, with any hacker allowed the ability to edit and/or add their code to the software. This very similar to the way Wikipedia is run. In this way, saying software is “open” or “free” is a complex statement, with several possible meanings.
Andrew said:
I’ve always liked that Knuth named his books the Art of Computer Programming. It’s too bad programming isn’t more commonly thought of as an art. There is definitely a lot of room for creativity, more than any other “science” I can think of. It requires imagination, problem solving, collaboration…
And I feel like free/open source software is a great example of how it’s an art. People do open source projects for free because they love doing it and because they want to have an impact. I feel like those are the two main motivators behind any art.
And people need to learn their terminology! Big differences between hacking/cracking and open/free!