Wednesday, October 26, 2005

Three comments on "selling science"


Lance Fortnow's blog entry Selling Theory raises several interesting issues, and I have three things to say about these.

Regarding the comment:
But [NYT's] Tuesday section Science Times has moved over the last couple of years from a general covering of science to a focus on medicine, environment and astronomy. Not just computer science but physics and chemistry get far less coverage than they once did.
One very important reason for this, in my opinion -- and I've often expressed this opinion in the past -- is that the latter fields (medicine, environment, astronomy) all have big goals that can be concretely stated so that an eighth grader can relate to them. "Cure cancer" or "300mpg cars", or "Flight to Mars" are all crisply stated, easy for a young mind to latch on to, and are more or less legitimate ambitions of the fields. Theoretical computer science, even Computer Science, lacks such ambitions. "Computers you could talk to" is about the best I can come up with that the median-quality high-schooler could understand. Perhaps something about doing functional genomics might appeal to smart undergraduates, but that's probably perceived more as a career in biology than in CS. Notice that physics, chemistry, etc. all have the same problem --- you could appeal to an eighth grader's imagination by talking about the expanding universe (or multiverse), but it's not tangible enough.

Lance writes
Computer science is a victim of its own success, by making computers powerful, easy to use and well-connected, we have turned computers into a commodity like cars with the mystique of computation and complexity lost on the users.
I don't think this is necessarily bad --- there are more users of automobiles than there are engineers working on building better ones, and even fewer scientists (or even "theoretical engineers") who think about the underlying laws of physics.

Finally, getting back to "selling theoretical computer science", I think we have a real problem. It's not so much that The New York Times doesn't write about what happens in TCS and why it is important. How many computer scientists that are not theorists appreciate the importance of theory? We need to do a much better job of convincing our colleagues in our departments, our graduate and undergraduate students that theoretical CS is not an arcane area of investigation, but a lively, vibrant area that, on the one hand, has deep philosophical and mathematical ramifications, and on the other hand, has real connections to the world around us. I think we simply cannot afford to have undergrad CS majors walk away with the feeling that this an anachronism in the day and age of the Internet (which they might if all they study are context-free languages and all-pairs-shortest-paths in the abstract form). The rest of CS has, in my opinion, done a better job in keeping up with their own growth. We don't seem to be offering any hint to the smart undergraduate that TCS is a constantly evolving discipline (just in the last ten years, we have had game theory, quantum computation, massive data set computations, etc. blossom from marginal curiosities into full-fledged multiple STOC/FOCS sessions). Jon Kleinberg's Information Networks, Michael Mitzenmacher's Algorithms at the end of the wire, the CMU course Algorithms in the real world, are all excellent examples of what we can do to improve the perception of TCS within computer science departments.

3 comments:

Suresh said...

Welcome to the blogosphere, siva !

regarding your point about convincing other CS folk to appreciate TCS, this is very true. I was attempting to initiate a discussion on the FOCS panel at the lab lunch table, and people found it funny that I was concerned about telling the layman about TCS, when they felt that even other CS folks didn't quite "get" TCS as well.

Michael Mitzenmacher said...

I both agree and disagree with some of your points.

I disagree to the extent that I have found other areas of computer science increasingly open to theory. In my "practial area" -- networks -- there is now a tremendous appreciation for the power of theoretical results to make sure you solve the problem right. In search and security, also, algorithmic knowledge seems highly appreciated. In this way, I think theory has come a long way in the last decade.

I agree, however, we could do an even better job of outreach, particularly to undergraduate and graduate students. The idea behind "Algorithms at the End of the Wire" (and thank you muchly for the plug!) was that I wanted to create a theory course that would be interesting and meaningful to non-theorists as well as theorists, so it was designed with the non-theorist in mind. There is a downside -- it's of course not as "deep" as a "pure theory" course, which apparently makes it popular for fulfilling the graduate theory requirement. The upside is that the course is very popular, it succeeds in getting non-theorists to think about and use theory, and it builds bridges to other parts of CS. I think EVERY DEPARTMENT should have a course like this, meant specifically to cover advanced/new theory but designed more for the non-theorist.

If it gets to be a popular enough idea, I'll write a textbook...

Michael Mitzenmacher said...

Oops, that last line should have ended with a big smiley, for those who don't appreciate my sense of humor. (My kids interrupted. :) )