📖 Overview
Andrew Koenig was a computer scientist and programmer known for his significant contributions to the C++ programming language and computer science education. He worked at Bell Labs for over 20 years and served on the C++ standards committee.
Koenig created the algorithm for function name lookup in C++ known as "Koenig lookup" or "argument-dependent lookup." He co-authored several influential programming books including "C++ Common Knowledge" and "Accelerated C++," which helped shape how C++ is taught and used.
As a prolific technical writer, Koenig wrote the "C++ Journal" column for the Journal of Object-Oriented Programming and contributed regularly to Dr. Dobb's Journal. His writing focused on making complex programming concepts accessible while maintaining technical depth and accuracy.
His influence on modern programming extends beyond C++. The "Almost All" pattern he documented is used in many programming languages, and his insights into programming education continue to influence how computer science is taught in universities and professional settings.
👀 Reviews
Readers consistently highlight Koenig's ability to explain complex C++ concepts clearly. His books receive strong ratings for their practical, example-driven approach to teaching programming.
Liked:
- Clear explanations of advanced topics
- Focus on good programming habits from the start
- High-quality code examples that build incrementally
- Teaching style that emphasizes understanding over memorization
Specific praise for "Accelerated C++":
"Finally makes sense of templates and STL" - Amazon review
"Best C++ book for experienced programmers" - Goodreads user
Disliked:
- Some readers found the pace too fast for true beginners
- Older books contain outdated C++ features
- Limited coverage of object-oriented principles
Ratings:
Amazon: "Accelerated C++" - 4.5/5 (216 reviews)
"C++ Common Knowledge" - 4.3/5 (89 reviews)
Goodreads: "Accelerated C++" - 4.24/5 (447 ratings)
His technical articles and columns receive fewer public reviews but maintain similar ratings when available.
📚 Books by Andrew Koenig
C Traps and Pitfalls (1989)
A detailed examination of common programming mistakes and unexpected behaviors in the C programming language, with practical solutions and explanations.
Accelerated C++ (2000) A practical guide to C++ programming that takes an objects-first approach, co-authored with Barbara E. Moo.
C++ Common Knowledge (2005) A comprehensive reference covering essential C++ concepts, idioms, and best practices that experienced programmers need to know.
Ruminations on C++ (1996) An exploration of C++ programming concepts and design philosophy, co-authored with Barbara E. Moo.
Accelerated C++ (2000) A practical guide to C++ programming that takes an objects-first approach, co-authored with Barbara E. Moo.
C++ Common Knowledge (2005) A comprehensive reference covering essential C++ concepts, idioms, and best practices that experienced programmers need to know.
Ruminations on C++ (1996) An exploration of C++ programming concepts and design philosophy, co-authored with Barbara E. Moo.
👥 Similar authors
Bjarne Stroustrup
Created C++ and wrote definitive references like "The C++ Programming Language." His writing combines deep technical knowledge with practical guidance for working programmers.
Scott Meyers Wrote the "Effective C++" series that established best practices for C++ programming. His books focus on concrete techniques and gotchas that working C++ developers encounter.
Stanley Lippman Co-created the C++ language specification and wrote "C++ Primer." His work bridges theoretical computer science concepts with practical implementation details.
Herb Sutter Serves on the C++ standards committee and wrote "Exceptional C++" series. His writing focuses on advanced C++ concepts and modern programming techniques.
David Vandevoorde Co-authored "C++ Templates: The Complete Guide" and works on C++ compiler development. His work explores template metaprogramming and advanced C++ features in depth.
Scott Meyers Wrote the "Effective C++" series that established best practices for C++ programming. His books focus on concrete techniques and gotchas that working C++ developers encounter.
Stanley Lippman Co-created the C++ language specification and wrote "C++ Primer." His work bridges theoretical computer science concepts with practical implementation details.
Herb Sutter Serves on the C++ standards committee and wrote "Exceptional C++" series. His writing focuses on advanced C++ concepts and modern programming techniques.
David Vandevoorde Co-authored "C++ Templates: The Complete Guide" and works on C++ compiler development. His work explores template metaprogramming and advanced C++ features in depth.