The spectrum of programming

In the beginning, everyone who worked with computer software was a programmer.  It was the most natural thing.  Software is the lines of code that make the computer chip, connected to its peripheral devices, do binary arithmetic and thus “process data” in ways that we want.  To work with computers was to write those lines of code, in order to see what the results would be.  Everyone was a programmer.
Continue reading

Unix as political culture

When I was teaching political science to university students in Ukraine, I was sometimes asked surprising and insightful questions about what is the best form of government.  When we were discussing the system of government in Canada and Britain, for example, the students were very curious about the notion of parliamentary supremacy, which is the simple notion that the legislature can pass any law it wants because it has democratic legitimacy to do so.  If that is so, then how is it that Canada or Britain do not suffer from the worst sort of tyranny of the majority or rule by the mob?  On the other side of the coin, how could the Soviet Union have had a constitution that looked on paper to be a perfect model for liberty, equality, and fraternity, and yet the political practice there turn out to be a horrific tyranny by a small, self-serving elite?  The simple question my students were asking was: what was the difference?  My answer was brief and took a lot more explanation: the difference lies in political culture.   Continue reading

Open source versus proprietary software

Is computer software a commodity like a lawn mower that you can buy in a hardware store?  You can take that lawn mower home and use it for its intended purpose, which is mowing grass.  Or, you could take it apart, or you could re-sell it or give it away to a friend, or you could destroy it, or you could weld it into a giant piece of folk art if the mood struck you.  You own it and you are free with respect to it.  You possess the thing and you possess “the use of the thing,” and the cry of liberty is that we ought not to separate these two concepts.

Continue reading

Why don’t we train for better security?

Breaches of computer and network security are headline news.  The mainstream press delights in the shock value of telling us that the data we all have stored on computers and transmitted across the Internet are exposed and exploited by mysterious forces, whom the media usually call “hackers.”  In fact they are criminals, with the same motivation that many violent or white-collar criminals have.  They are thieves who want to dispossess you, wrongly, of something you value so that they will have it instead.

Continue reading

Dennis Ritchie and genius from failure

In October 2011, the world of computing and information technology lost a giant.  Dennis Ritchie passed away at the age of 70.  Along with his partner at AT&T, Ken Thompson, Dennis Ritchie invented the Unix operating system, which is the foundation of all modern multi-purpose time-sharing computing environments.  He created the C programming language to code this new operating system, and C became the foundation of modern and object-oriented programming languages such as C++, Perl and Java.  Quite rightly, Dennis Ritchie was awarded the Turing Medal and numerous other awards for his achievements.  His inventions and discoveries moved us from a world where computers were large and expensive boxes, locked away in labs and accessible only to a few, to a world where anyone can walk around with affordable and accessible computing power in the palm of his hand.

Continue reading