TITLE: Computing's Great Ideas Are Everywhere AUTHOR: Eugene Wallingford DATE: June 13, 2007 7:52 AM DESC: ----- BODY: Philip Windley recently wrote about how he observed a queue in action at a local sandwich shop. Then he steps back to note:
The world is full of these kinds of patterns. There's a great write-up of why Starbucks doesn't use a two-phase commit. The fact that these kinds of process issues occur in everyday life would lead the cynic to say that there is nothing new in Computer Science -- people have always known these things.

But there's a big difference between someone figuring out to put a queue in between their order taking station and their sandwich making station and understanding why, when, and how it works in enough detail that the technique can be analyzed and applied generally.

These observations tell us that Windley is real computer scientist. They also lead me to think that he is probably an effective teacher of computer science, observing algorithms and representation in the world and relating them to concepts in the discipline. To say that because "these kinds of process occur in everyday life" there is nothing new in Computer Science would be like saying that because mass and light and energy are everywhere there is nothing new in Physics. It is the purpose of our discipline to recognize these patterns and tell their story -- and to put them into our service in systems we build. Windley's comment on big ideas from computing showing up in the world came to mind when I was thinking about Alan Kay's thesis, in particular his relating syntax and abstraction back to pre-literate man's recognition of fruitful patterns in their use of grunts to make a point. These big ideas -- the distinction between form and meaning; abstraction; the interplay between data and process, ... -- these are not "big ideas in computing". They are big ideas. These ideas are central to how we understand the universe, how it is and how it works. This is why we need computing for more than the construction of the next enterprise architecture-cum-web framework. It's why computer science is an essential discipline. -----