Stephen Wolfram on Alan Turing

Jun 23 2010 Published by under computer science, history

Nice post by Stephen Wolfram on the Wolfram|Alpha blog, Happy Birthday, Alan Turing:

He was in some respects a quintessential British amateur, dipping his intellect into different areas. He achieved a high level of competence in pure mathematics, and used that as his professional base. His contributions in traditional mathematics were certainly perfectly respectable, though not spectacular. But in every area he touched, there was a certain crispness to the ideas he developed--even if their technical implementation was sometimes shrouded in arcane notation and masses of detail.

In some ways he was fortunate to live when he did. For he was at the right time to be able take the formalism of mathematics as it had been developed, and to combine it with the emerging engineering of his day, to see for the first time the general concept of computation.

It is perhaps a shame that he died 25 years before computer experiments became widely feasible. I certainly wonder what he would have discovered tinkering with Mathematica. I don't doubt that he would have pushed it to its limits, writing code that would horrify me. But I fully expect that long before I did, he would have discovered the main elements of NKS, and begun to understand their significance.

More on Alan Turing here.

(Via Jennifer Peterson of Wolfram Research.)

3 responses so far

Great Computing Museums of the World

A great two-part series on great computing museums from the last few issues of Communications of the ACM (here and here).

The museums they profile are:

I'll include an extra bit from the first CACM article on the Computer History Museum in Mountain View, CA. I'm choosing that one because as it happens I'll almost certainly be visiting it this coming July. I'm fortunate to have been invited to the annual Science Foo Camp, which happens to be at the Googleplex in Mountain View.

Research Activities. The CHM wishes to become an important part of the academic research community on computing history, but it has only taken small steps so far: organizing topical conferences and workshops, collecting oral histories, and publishing papers and articles.

The CHM scope (and collection) is international, but the museum's physical presence is in the heart of Silicon Valley in California. The CHM owns a 120,000 square foot modern building on seven acres--lots of free parking is a real asset here!--in a prominent location in Mountain View. The CHM also owns a 25,000 square foot warehouse 20 minutes away, where most of the 90% of the collection that is not on exhibit at any particular time is stored in climate-controlled conditions and is available to researchers.

The Computer History Museum is a work in progress. We like to think of ourselves as a startup with a 30-year history. We welcome the opportunity to work with people and organizations that resonate with our mission and our goals.

My own institution, York University, has a Computer Museum dedicated to the history of the Canadian computing industry. It's housed in the Computer Science & Engineering Department and run by Prof. Zbigniew Stachniak. You can visit by appointment.

6 responses so far

Recently in the ACM: Computer Science Education

A small selection from some tables of content from a few recent journals and proceedings. These will require subscription access to the ACM Digital Library.

Technical Symposium on Computer Science Education

Journal of Computing Sciences in Colleges, v25i4

SIGCSE Bulletin, v41i4

One response so far

Is computer science baseless?

Mar 31 2010 Published by under computer science, education

From the April Communications of the ACM, the Kode Vicious column is on The Data-Structure Canon.

The reader question is:

In most areas of science there are a few basic underlying laws that inform the rest of the study of a given subject. Physics, chemistry, and electrical engineering all have these basic equations. What are the basic equations in computer science? Or is computer science baseless?

In other words, what's the fundamental intellectual basis of computer science? Well, according to KV, it's data structures!

If there were any set of basics that I wanted to hammer into software engineers and programmers, it would be the basic data structures, their features and pitfalls. ...

The basic data structures are the array, list, tree, and hash table. That seems like a short list, and I'm sure some of the more experienced readers of this column are warming up their mail applications to write me nasty notes about how there are more basic data structures than just these four. To these people I say, "Go for it!"

What I find most interesting about this list is how many programmers take it for granted and how few of them understand the implications of using one data structure versus another. Try as I might, I cannot lay all the blame at the feet of the programmers using these data structures; a good deal of the blame has to go to their teachers and the legions of poorly written "how to program" books that emphasize how to use a data structure rather than the underlying implications of what happens when they are used. Abstraction is a fine thing-it makes understanding large systems easier--but it also can obscure important facts: in particular, the performance implications of certain choices.


Given the different complexities I've just mentioned, I think you'll see that these four data structures, which form the basis of most computer programs, are worth studying time and again. A good place to start is Knuth's The Art of Computer Programming, Volume 1, Chapter 2, which covers all of these subjects more seriously and in depth. When you're done reading all that he has to say, please write me, though I should be retired by then.

Interesting. Although he probably conflates computer science with programming a little too much for my taste, I'm probably mostly in agreement with KV's point of view. But I was wondering what all of you out there in Computer Science Land think?

23 responses so far