Articles (in reverse chronological order)
-
"Tips on Giving Technical Talks", self-published, May 2010
-
"On Iteration" InformIT, November 2009 (translated in Turkish by Ali Çehreli)
-
"The Case for D" Dr. Dobb's Journal, June 2009 (translated in Turkish by Ali Çehreli)
-
"Maps with Expensive Keys" (PDF format) C/C++ Users Journal, February 2006. For a reference to an alternate solution tot the problem described in the article, you may want to consult Richard Sposato's FlexSet.
-
"Policy-Based Memory Allocation" (PDF format) (co-authored with Emery Berger about Emery's work on HeapLayers) C/C++ Users Journal, December 2005.
-
"Walking Down Memory Lane" (PDF format) (co-authored with Bartosz Milewski) C/C++ Users Journal, October 2005.
-
"Type-Safe Formatting" (PDF format) C/C++ Users Journal, August 2005.
-
"Prying Eyes: A Policy-Based Observer (II)" (PDF format) C/C++ Users Journal, June 2005.
-
"Prying Eyes: A Policy-Based Observer (I)" (PDF format) C/C++ Users Journal, April 2005.
-
"Lock-Free Data Structures with Hazard Pointers" (PDF format) C/C++ Users Journal, December 2004, in coauthorship with Maged Michael.
-
"Lock-Free Data Structures" (PDF format) C/C++ Users Journal, October 2004.
-
"C++ and The Perils of Double-Checked Locking (II) Dr. Dobb's Journal, August 2004, in coauthorship with Scott Meyers. Download the original magazine article (including ads), or an updated version (recommended), both in PDF format.
-
"C++ and The Perils of Double-Checked Locking (I) Dr. Dobb's Journal, July 2004, in coauthorship with Scott Meyers.
-
"yasli::vector Is On The Move" (PDF format) C/C++ Users Journal, June 2004.
-
"Smart Pointers Reloaded (IV): Finale" (PS format) C/C++ Users Journal, April 2004, in co-authorship with David B. Held.
-
"Smart Pointers Reloaded (III)" (PDF format) C/C++ Users Journal, February 2004, in co-authorship with David B. Held.
-
"Smart Pointers Reloaded (II): Exception Safety Analysis" (PDF format) C/C++ Users Journal, December 2003, in co-authorship with David B. Held.
-
"Smart Pointers Reloaded" C/C++ Users Journal, October 2003, in co-authorship with David B. Held.
-
"Enhancing Assertions" C/C++ Users Journal, August 2003, in co-authorship with John Torjo.
-
"Enforcements" C/C++ Users Journal, June 2003, in co-authorship with Petru Marginean.
-
"Assertions" C/C++ Users Journal, April 2003.
-
"Move Constructors" C/C++ Uers Journal, February 2003.
-
"Efficient Generic Sorting and Searching in C++ (II): Sorting Through Sorts of Sort Algorithms (Well, Sort of)" C/C++ Users Journal, December 2002.
-
"Efficient Generic Sorting and Searching in C++ (I): In Search of a Better Search" C/C++ Users Journal, October 2002.
-
"Discriminated Unions (III)" C/C++ Users Journal, August 2002.
-
"Discriminated Unions (II)" C/C++ Users Journal, June 2002.
-
"Discriminated Unions (I)" C/C++ Users Journal, April 2002.
-
"Multithreading and the C++ Type System", featured by InformIT.
-
"Typelists and Appplications" C/C++ Users Journal, February 2002.
-
"Typed Buffers (III)" C/C++ Users Journal, October 2001.
-
"Typed Buffers (II)" C/C++ Users Journal, October 2001.
-
"Typed Buffers (I)," C/C++ Users Journal, August 2001. Also translated in Romanian.
-
"A Policy-Based
basic_string
Implementation," C/C++ Users Journal, June 2001. -
"Min and Max Redivivus," C/C++ Users Journal, April 2001.
-
"volatile - Multithreaded Programmer's Best Friend," C/C++ Users Journal, February 2001.
-
"Simplify Your Exception-Safe Code - Forever", C/C++ Users Journal, December 2000, in co-authorship with Petru Marginean. Note: The very popular ScopeGuard class has been since integrated into the Loki library. Also, Joshua Lehrer has brought a host of improvements to ScopeGuard, which you can read about, and download, from here. Also, Andrei has since come up with the idea of a on_scope_exit language feature, which Walter Bright has implemented in his programming language D.
-
"Mappings between Types and Values", C/C++ Users Journal, October 2000.
-
"The Design Is In The Code: Enhanced Reuse Techniques in C++", paper presented at the eXtreme Programming and Flexible Processes in Software Engineering Conference in Cagliari, Italy, 21-23 June, 2000, and then published in the book Extreme Programming Examined.
-
"Traits on Steroids", C++ Report (a SIGS publication, ), June 2000.
-
"Traits: The else-if-then of Types", C++ Report, April 2000.
-
"To Code or Not to Code II", C++ Report, March and June 2000, in co-authorship with the late Dr. John Vlissides.
-
"To Code or Not to Code I", C++ Report, March and June 2000, in co-authorship with the late Dr. John Vlissides.
-
"Adapting Automation Vectors to the Standard Vector Interface", C/C++ Users Journal, April 1999
-
"Better Template Error Messages", C/C++ Users Journal, March 1999
-
"Compound Iterators for STL", C/C++ Users Journal, October 1998
-
"Inline Containers for Variable Arguments", C/C++ Users Journal, September 1998