|"The Mars Rover project is one of the most impressive engineering feats to date and I'm proud that C++ is a prominent part of the systems involved..." -Bjarne Stroustrup|
|"My U.S. education, aside from teaching me the technical aspects of my career, provided me with a broader view of the world, made it possible for me to meet students from around the world and learn from their experiences and encouraged me to replicate, in my country, the good things I learned about life in the U.S. " |
|- Alberto Aleman-Zubeita, CEO of the Panama Canal||
Interview with Dr. Bjarne Stroustrup, the inventor of C++ programming language 中文(简体)
Today we are interviewing Dr. Bjarne Stroustrup, the inventor of C++ programming language. Dr. Stroustrup is a Professor and College of Engineering Chair in Computer Science, at the Dept. of Computer Science, Texas A&M University,College Station. He has written several books including The C++ Programming Languageand The Design and Evolution of C++. This is how his name is pronounced.
app2us.com: Professor Stroustrup, our site takes pride in helping aspiring applicants to U.S. universities, and we at app2us.com are encouraged by your gesture to talk to us. It is a great honor for our website, thank you for your kind consideration.
app2us.com: What was the idea that led to C++?
Dr. Stroustrup: The basic idea was very simple: Combine Simula's
facilities for organizing code with
C's ability to write efficient (close to the hardware) code for
systems programming. Simula
contributed the essentials of object-oriented programming and C
provided a machine model suitable
for even the most demanding systems programming tasks. Combining
those two is a way that did
not force me to choose between elegance and efficiency was the
key. Much has been learned and
added since, so today's C++ is a far better tool for developing
software than early C++ was, and
the next ISO standard C++, C++0x, will be better still.
If you want to read about the aims and means of C++ and about its
development, have a look at
my HOPL (ACM History of Programming) papers (available from my
app2us: What prompted you to take up teaching after spending many years at AT&T labs?
Dr. Stroustrup: I guess it was simply time for a change. 24 years is a
long time in a job, even one as varied and
stimulating as mine in Bell Labs and AT&T Labs had been. My
children had left for university and
thrived there, so I thought it was my turn. Also, I finally
thought that I had something worth
teaching, which wasn't widely taught.
As is turned out I still retain a link to AT&T Labs as an AT&T
Fellow. It is important for an academic not to loose touch with the needs and practices of industry.
app2us: What are your favorite courses to teach?
Dr. Stroustrup: Programming techniques and design techniques. Either for graduate students or for undergraduates. My work with freshmen (first year students) have led to a new book, "Programming: Principles and Practice using C++" which will be available in October 2008:
app2us: We understand that C++ is used in a wide variety of devices like cell phones, cameras and elevators. What is the most interesting device or application that uses C++?
Dr. Stroustrup: I'd say the Mars Rovers. Those are most interesting
"gadgets". The Mars Rover project is one of
the most impressive engineering feats to date and I'm proud that
C++ is a prominent part of the
systems involved; not just on the Rovers themselves, but also in
the communications systems,
testing, and image processing, and more.
Obviously, more mundane applications, such as photoshop, the iPod GUI, and google's search engine, are more important in everyday life, but I find something
like the Mars Rovers most inspiring. For a short list of applications, see
app2us: Do you think students from other fields should study Computer Science, for example studying for MS in Computer Science after BS in Mechanical Engineering?
Dr. Stroustrup: I think that the ideal is for everyone who develop
software to understand both a bit of computer
science and a bit of the application area. Ideally, that person is
an expert in either or both, but
definitely some knowledge of both is needed. Whether you take
mechanical engineers and teach them
some computer science or you take computer scientists and teach
them some mechanical engineering
doesn't matter all that much.
app2us: What is the one thing you like most about Texas A&M University?
Dr. Stroustrup: The winters! That's part of it of course, but if I didn't
have a nice department and great colleagues
even the best weather wouldn't make a difference. The TAMU CS
department is ambitious and now have
a lot of active young faculty. It is great to be part of an
ambitious, expanding and improving
app2us: What is your impression of app2us.com?
Dr. Stroustrup: It sounds as if you are providing a very useful service to students. Best of luck!
app2us: What is your advice to graduate students aspiring to pursue a career in research?
Dr. Stroustrup: Focus on problems. Don't get obsessed with tools and
convention; instead learn about some
yet unsolved real-world problems and build a reasearch program
around principled approaches
to solving such problems. Don't get obsessed with having a
Learn to communicate well. It does not matter how good your ideas
are if you cannot explain
them to others. You need to communicate well (both giving
information and taking it) both
verbally and in writing. For those of us who do not have English
as our native language, it
is essential to get a good grasp of both professional and
colloquial English. One nice thing
about that is that there is so much good literature that can be of
I find that CS grad students *always* underestimate the importance of colloquiale English and writing. They consequently loose out on much that could have been a pleasure as well as of great utility.
app2us: Once again, on behalf of our team and our users, we like to thank you for taking out time from your very busy schedule. Thank you very much.