The Artima Developer Community
Sponsored Link

The C++ Source
A Pause to Reflect: Five Lists of Five, Part IV
The Most Important C++ People...Ever
Opinion
by Scott Meyers
August 30, 2006
Summary
In this article, Scott Meyers shares his picks for the five most important people in the history of C++, along with why he chose them.

In my first three articles in this series, I named my picks for the most important contributions to C++ in the categories of books, non-book publications, and software:

In this fourth installment, I focus on people.

C++ is a technology, but behind the technology are the people who invent it, shape it, popularize it, and use it. This week, I explain who I consider to be the five most important people who’ve been involved in C++.

The people on the list all have a strong public presence. There are two reasons for this. First, such “front men” (and I’m sorry, but they’re all men, and I really am sorry about that) have a direct effect on more people, simply by virtue of being more visible. The more people you affect, the more important you are. That’s just the way it is.

The second reason why the list is filled with public figures is that, as I explained in the opening article in this series, my perspective is largely that of an outsider. There may be or have been people who’ve had an enormous impact on C++ who operate or have operated behind the scenes, out of my view. Maybe Stroustrup is just a pretty-boy stage presence for somebody else who does or did all the technical work. Maybe the accomplishments of the standardization committee are in fact the dictates of a cabal of individuals who choose to remain unrecognized. If so, they’ve succeeded: I don’t recognize them. And they’re not on the list.

As I worked on the list entries, I realized that (1) it helps to have been working with C++ for a long time, and (2) it also helps to be working with C++ today. Lots of people have been important, but the most important ones have been around a long time, have been consistent contributors to C++, and continue to work with it even now.

That said, here’s my list of the most important names in C++, ordered by when they published something related to C++ in a form more formal than a newsgroup posting. (This is always later than when they started working with the language, because it takes a while to know enough to have something worth saying to others.) As with my other lists, I limit myself to five names here: no ties, no honorable mentions. Because I’m now dealing with people instead of inanimate objects, that makes this list the most difficult to write. Still, the rules are the rules, and I’m determined to stick to them.

I’ve now listed my picks for the five most important C++-related books, non-book publications, software, and people in the history of the language. I noted at the outset of this series that these lists are inherently subjective, but for my final article in this series, I want to go beyond subjective to downright personal. Next week, I’ll identify my five most important “Aha!” moments in C++—five moments when something suddenly clicked, and I reached a new level of understanding about some aspect of the language, its workings, or its application.

Share Your Opinion

Discuss this article in the Articles Forum topic, The Most Important C++ People...Ever.

End Notes

1. Loosely speaking, Koenig lookup says that when the type of an argument to a function call comes from a namespace, the function to be called should be looked up in that namespace, in addition to all the other places that the name would normally be looked up. For example, given the call “std::cout << someObject”, operator<< would be looked up in the namespace where someObject is defined, in addition to all the usual places where operator<< would be looked up. This is helpful when, as is typically the case, functions like operator<< are defined in the same namespace as the types they operate on.

2. Most of the guidelines I’ve published over the years were already “common knowledge” in some parts of the C++ community. My primary contribution wasn’t to invent such guidelines, it was to popularize them.

3. The immensity of this accomplishment is easier to appreciate if you’ve been a columnist yourself, as I have been. I had trouble coming up with something worth reading six times a year. Sutter has been known to do it three times a month.

4. He’s also an architect at Microsoft working on C++/CLI, something I mention only in a note, because I consider C++/CLI a dialect of C++ rather than C++ itself. And I still have no idea how he finds the time to work on all the things he does.

5. This doesn’t mean he invents everything he writes or speaks about. Especially since becoming a doctoral student in 2001, he’s often brought academic research results to the attention of the broader C++ community. This has especially been the case with his writings and presentations about lock-free programming [PDF].

Resources

Part I in this series, “The Most Important C++ Books...Ever”:
http://www.artima.com/cppsource/top_cpp_books.html

Part II, “The Most Important C++ Non-Book Publications...Ever”:
http://www.artima.com/cppsource/top_cpp_publications.html

Part III, “The Most Important C++ Software...Ever”:
http://www.artima.com/cppsource/top_cpp_software.html

Bjarne Stroustrup’s home page:
http://www.research.att.com/~bs/homepage.html

A list of Bjarne Stroustrup’s publications:
http://www.research.att.com/~bs/papers.html

“A rationale for semantically enhanced library languages” (SELLS), by Bjarne Stroustrup:
http://lcsd05.cs.tamu.edu/papers/stroustrup.pdf [PDF]

The Standard Template Adaptive Parallel Library (STAPL) research project:
http://parasol.tamu.edu/groups/rwergergroup/research/stapl/

Andrew Koenig’s home page:
http://www.acceleratedcpp.com/authors/koenig/

The proposal for adding smart pointers to TR1:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1450.html

Herb Sutter’s home page:
http://www.gotw.ca/

Andrei Alexandrescu’s home page
http://erdani.org/

A list of Andrei Alexandrescu’s publications:
http://erdani.org/publications/main.html

Scott Meyers is the author of Effective C++, the third edition of which was published in 2005. It is available on Amazon.com at:
http://www.amazon.com/exec/obidos/ASIN/0321334876/

Scott Meyers is also the author of More Effective C++, which is available on Amazon.com at:
http://www.amazon.com/exec/obidos/ASIN/020163371X/

Scott Meyers is also the author of Effective STL, which is available on Amazon.com at:
http://www.amazon.com/exec/obidos/ASIN/0201749629/

Scott Meyers’ home page:
http://www.aristeia.com/

About the Author

Scott Meyers Scott Meyers is one of the world’s foremost authorities on C++; he provides training and consulting services to clients worldwide. He wrote the best-selling Effective C++ series (Effective C++, More Effective C++, and Effective STL), designed the innovative Effective C++ CD, is Consulting Editor for Addison Wesley’s Effective Software Development Series, and serves on the Advisory Board for The C++ Source (http://www.artima.com/cppsource/). He has a Ph.D in Computer Science from Brown University. His web site is aristeia.com.


Sponsored Links

Copyright © 1996-2014 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us