Ben-Ari voices "a plea for maturity." In most fields, there are principles and artifacts. Principles are core knowledge (math, science, theory) and artifacts are facets of the field that specialists will study (such as AI, vision). Most CS curricula are half and half, but an engineering degree covers more of the principles. He thinks that maybe CS should mature to do this too...
With regards to older computing technology, Ben-Ari asks why in physics students learn Newtonian stuff first. If we taught CS students old languages first, we'd get yelled at, yet physicists come up with new stuff all the time. He says, "Pascal is a great improvement on languages that came later." Maybe he's right. Maybe we've forgotten the past and need to stop re-inventing things.
"We spend a lot of time trying to make computer science easy -- I think we should spend more time for some students to make CS hard." Amen.
Things for me to look at:
- Ben-Ari and Burns "Extreme Interleavings." IEEE Concurrency 6(3), 1998, 90. Initialize a variable to zero. Spawn two concurrent threads to increment the variable ten times each. What's the resulting number? This article shows that it could not only be in the range of 10 to 20, but it could also be nine... Let me know if you find a free copy of this article.
- Nasa Quote: There was an amazing technological advance that landed someone on the moon. How can we make another step like this?
- Hobbes' Internet Timeline
- Project Gutenberg
- The Victorian Internet. Shows how the telegraph made as much impact on society as the internet.
- Profession by Isaac Asimov. (Creativity only comes through long study of lots of areas. )