Starting to Get it, Understanding Computer Programming
I just discovered Structure and Interpretation of Computer Programs, by Abelson, Sussman, and Sussman aka SICP aka The Wizard Book. It’s a computer science text book that introduces computer programing. It uses Scheme, a dialect of LISP, as the example and basis with which to teach.
I’ve been on the hunt for a computer science book I can click with. I’ve read/skimmed a lot of them. I mean A LOT. Both in print form and on-line. For some reason my mind has a real hard time staying focused while reading about functions, lists, arrays, operators, etc. But this book feels different.
Maybe it’s the magic analogy at the beginning of the first chapter that inspires me.
We are about to study the idea of a computational process. Computational processes are abstract beings that inhabit computers. As they evolve, processes manipulate other abstract things called data. The evolution of a process is directed by a pattern of rules called a program. People create programs to direct processes. In effect, we conjure the spirits of the computer with our spells.
A computational process is indeed much like a sorcerer’s idea of a spirit. It cannot be seen or touched. It is not composed of matter at all. However, it is very real. It can perform intellectual work. It can answer questions. It can affect the world by disbursing money at a bank or by controlling a robot arm in a factory. The programs we use to conjure processes are like a sorcerer’s spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform.
Or possibly the call from Alan J. Perlis, the first recipient of the Turing Award, to keep computing fun. (Whom the book is dedicated.)
“I think that it’s extraordinarily important that we in computer science keep fun in computing. When it started out, it was an awful lot of fun. Of course, the paying customers got shafted every now and then, and after a while we began to take their complaints seriously. We began to feel as if we really were responsible for the successful, error-free perfect use of these machines. I don’t think we are. I think we’re responsible for stretching them, setting them off in new directions, and keeping fun in the house. I hope the field of computer science never loses its sense of fun. Above all, I hope we don’t become missionaries. Don’t feel as if you’re Bible salesmen. The world has too many of those already. What you know about computing other people will learn. Don’t feel as if the key to successful computing is only in your hands. What’s in your hands, I think and hope, is intelligence: the ability to see the machine as more than when you were first led up to it, that you can make it more.”
Alan J. Perlis (April 1, 1922-February 7, 1990)
What ever the reason I am some how starting to feel as if I get it. Get computer programing that is. I bet that the decade plus of reading a little bit here and a little bit there is adding up. But I have to thank MIT and this awesome free book for helping out. Getting a real foundation of knowledge is making a difference!
Now to leap over the wall my brain has built and release some code I’m proud of.
(Full free text of SICP is here http://mitpress.mit.edu/sicp/)
Twitter – BrianR- BrianR: @gabrielcoch thanks for the suggestions! February 22, 2012
- BrianR: How do you share your current to-do list with your colleagues at work? February 22, 2012
- BrianR: RT @omgubuntu: Watch Ubuntu for Android in Action http://t.co/QboAdNn9 #ubuntu #android February 21, 2012
- BrianR: @badanalog good point. Introducing The Hill & Gandalf is as far as we've gotten. Who knows how much we'll read now. February 21, 2012
- BrianR: Wonderful geek dad gift this morning. My 2 yr old son brought me The Hobbit to read to him. #love February 21, 2012
- BrianR: I <3 Linux & Ubuntu! Lots of answers from awesome community. Great easy 2 install software. Thanks 4 all your hard work! #geek #love February 21, 2012
- BrianR: @ChrisKubica beer & coffee! February 21, 2012
- BrianR: @indyweek tell that to Google & Groupon! ;) problem could be small market sizes of newspapers cc @smalljones February 20, 2012
- BrianR: @indyweek specifically media owners ignorance of selling ads online. Some still give it away to sell paper ads cc @smalljones February 20, 2012
- BrianR: @indyweek I'm sorry but the medium, Internet, didn't hurt newspapers. Ignorant media owners did. Cc @smalljones #uncsteiger February 20, 2012
Local Media
Archives
- January 2012 (2)
- September 2011 (2)
- July 2011 (3)
- May 2011 (1)
- February 2011 (9)
- December 2010 (1)
- November 2010 (3)
- September 2010 (3)
- August 2010 (2)
- July 2010 (1)
- June 2010 (1)
- May 2010 (14)
- April 2010 (2)
- October 2009 (4)
- July 2009 (2)
- June 2009 (2)
- March 2009 (1)
- February 2009 (1)
- January 2009 (3)
- December 2008 (1)
- October 2008 (4)
- August 2008 (7)
- July 2008 (6)
- June 2008 (4)
- May 2008 (8)
- April 2008 (12)
- March 2008 (2)
- February 2008 (13)
- January 2008 (20)
- December 2007 (13)
- November 2007 (14)
- October 2007 (22)
- September 2007 (17)
- August 2007 (20)
- July 2007 (21)
- June 2007 (32)
- May 2007 (23)
- April 2007 (15)
- March 2007 (15)
- February 2007 (32)
- January 2007 (34)
- December 2006 (14)
- November 2006 (29)
- October 2006 (21)
- September 2006 (23)
- August 2006 (14)
- July 2006 (20)
- June 2006 (5)
