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

Chapel Hill vs Carrboro

Chapel Hill and Carrboro are related but they have significant differences. I love them both like family. I feel like their little brother constantly annoyed with one or the other but will remain steadfastly in love with them both till the day I die.

Many of my fellow Chapel Hillians do not understand these differences. They see Franklin Street and Main Street in Carrboro as one long business thoroughfare. It’s not. I don’t mean to pick on Chapel Hill residents, both students and townies, but if you don’t spend a lot of time in Carrboro you wouldn’t know. The Towns have very unique histories that contain deep seated differences forged in race, class, and ideology. All fueled by the money and intellectual power of the University of North Carolina.

Yesterday I had a great conversation with several Chapel Hillians. They where a retired Town of Chapel Hill employee, a downtown business leader, a few University employees, and others who I do not know well. Our gathering was random.

At one point someone said, and I paraphrase, “Why does Chapel Hill and Carrboro have separate fire and police departments?” A smart gentleman that knows what he’s talking about said, “When we’ve discussed it the final conclusion has always been, ‘Hell no!’.” I took that as a definitive answer from a real source in the know. It also happens to be how I feel about the situation.

For the past four years I’ve been running a small business in Carrboro. It would NEVER have launched without the Town of Carrboro. A Alderman, a Economic Development Director, and the Mayor and other Alderman made it possible. Though the Town of Carrboro Revolving Loan Fund I was able to give this business a real go. This is a resource the Town of Carrboro has had since 1986. The Town of Chapel Hill just got a Economic Development Director a few years ago and gave out it’s first business loan recently.

The best way for me to sum this up is Chapel Hill follows Carrboro’s lead. Carrboro sets trends in numerous areas. The arts, environmental protection, economic development, transportation with many bike lanes, and more.

As far as I can tell the major start of Carrboro’s leadership is in the 1980’s when a few liberal folks where elected to the Carrboro Board of Alderman. Previously the board was dominated by local white men who held much more traditional values. Before the Carr Mill closed for the last time Carrboro was primarily a working class white Town. In the 1970’s it’s affordable housing attracted ex-students and others to migrate their from Chapel Hill and beyond. Soon a very new type of community formed in Carrboro and made it a very different place.

I need to do more research on this. To my knowledge there are no documents that explain just how Carrboro came to be the visionary leader it is. I only surmised this by knowing Carrboro didn’t always have the liberal reputation it has now. With that rep came a big dream for the future. One that has come true in many ways.

Note: For those who have lived here longer than I and know more historical facts I welcome your tweaks and corrections to my assertions about our local history.