Jeannette M. Wing is a pioneer in a new discipline called "computational thinking," a term she coined. Computational thinking applies the problem-solving methods of computer science to other disciplines. She's also an authority on "formal methods," mathematically-based techniques for specifying and verifying the correctness of computer hardware and software.
Why do they call you 'Dragon Lady'? That was a moniker I got a long time ago while teaching undergraduates at Carnegie Mellon University. The students dubbed me Dragon Lady because I have high expectations and I can be pretty tough and uncompromising -- but in a friendly-fearful way. Eventually, my karate friends picked up on the name.
Dossier
Name: Jeannette M. Wing
Title: Director of computer and information science and engineering, National Science Foundation; professor of computer science, Carnegie Mellon University
Favorite technology: "Wireless broadband at home. It's changed my life!"
Ambition: To learn Chinese
Favorite nonwork pastime: Ballet
Ask her to do anything but... "Sing."
Recent good book read: The Post-American World, by Fareed Zakaria
Something people don't know about her: "I've wanted to teach ever since I was 4 years old."
Karate rank: Fourth-degree black belt in Tang Soo Do
What research are you personally doing? I'm interested in trustworthy computing, which includes reliability, security, privacy and usability. A student and I are working on a problem in privacy where we'd like to understand what people mean by the "use" and "purpose" of information. Suppose Yahoo promises they will not read your e-mail in order to target advertising, but they will read it for spam detection. That seems like a reasonable policy, because you'd like them to filter your e-mail so you don't get spam but not to figure out what ads to serve you. If a company does have such a policy, how can the user ensure it is enforcing it? Is there a formal way to specify those policies? Is there a way to analyze the code to see that it actually satisfies the policy? Using formal methods, how do you analyze the code? We are starting from scratch because we don't even have formal logics for expressing those privacy policies.
Can computational thinking help people who are not computer scientists? One of my visions for the 21st century is that it will be a fundamental skill used by everyone. Scientists and engineers [who are not computer scientists] already know the power of metal tools -- such as supercomputers and networks -- but what I'm arguing is that it's the mental tools that can give them more power. It can truly transform the way they think, even prompting them to ask questions they wouldn't have thought to ask before.
[Take] for instance, the fact that we have many techniques for dealing with large data sets -- machine learning, data mining, data federation and so on. So for us, large data sets offer a different way to solve problems. But scientists and engineers might not even know that they could look for particular patterns or clusters in a data set. It would be unfathomable that they could answer a question [using such techniques].