Overload Content by Author

A    B    C    D    E    F    G    H    I    J    K    L    M    N    O    P    Q    R    S    T    U    V    W    X    Y    Z   


[Abrahams, 2003]
Error and Exception Handling  WEB  PDF
David Abrahams.
Overload, 11(57):, October 2003.

[Alday, 2014]
Enforcing the Rule of Zero  WEB  PDF
Juan Alday.
Overload, 22(120):6-8, April 2014.
We’ve had years to get used to the old rules for making classes copyable. Juan Alday sees how the new standards change them.

[Allan, 2009]
Software Development in the 21st Century  WEB  PDF
Alan Griffiths, Marc Allan.
Overload, 17(90):, April 2009.
What's the future of software development? Alan Griffiths and Marc Allan have a timely look at recent experiences.

[Anonymous, 2020]
What is the Strict Aliasing Rule and Why Do We Care?  WEB  PDF
Anonymous.
Overload, 28(160):13-19, December 2020.
Type Punning, Undefined Behavior and Alignment, Oh My! Strict aliasing is explained.

[Antonsen, 2003]
Stream-Based Parsing in C++  WEB  PDF
Frank Antonsen.
Overload, 11(56):, August 2003.

[Antonsen, 2004]
Letters to the Editor(s)  WEB  PDF
Frank Antonsen.
Overload, 12(59):, February 2004.

[Armstrong, 1996]
Some pitfalls of class design: a case study  PDF
Nigel Armstrong.
Overload, 4(13):14-16, April 1996.
Software Development in C++

[Arnold, 1993]
Make...or Break?  WEB
Peter Arnold.
Overload, 1(1):, April 1993.

[Arnold, 1995]
editor << letters;  PDF
Peter Arnold.
Overload, 3(9):34-35, August 1995.

[Arregui, 2012]
Curiously Recursive Template Problems with Aspect Oriented Programming  WEB  PDF
Hugo Arregui, Carlos Castro, Daniel Gutson.
Overload, 20(109):20-23, June 2012.

[Asproni, 2004]
An Experience Report on Implementing a Custom Agile Methodology on a C++/Python Project  WEB  PDF
Giovanni Asproni, Alexander Fedotov.
Overload, 12(64):, December 2004.

[Asproni, 2006]
How to Shoot Yourself in the Foot In an Agile Way  WEB  PDF
Giovanni Asproni.
Overload, 14(71):16-17, February 2006.

[Asproni, 2009]
ACCU 2009  WEB  PDF
Giovanni Asproni.
Overload, 17(91):, June 2009.
The 2009 ACCU Conference took place in March. The conference chair, Giovanni Asproni, provides a report.

[Bailey, 1994]
Run-time checking for C++  WEB
David Bailey.
Overload, 2(4):, February 1994.

[Baker-Munton, 1995]
editor << letters;  PDF
Kristen Baker-Munton.
Overload, 3(9):33-34, August 1995.

[Balaam, 2010]
Scalable Graph Coverage  WEB  PDF
Andy Balaam.
Overload, 18(97):, June 2010.
Optimising data processing is often about compromise. Andy Balaam finds the right balance.

[Balaam, 2012]
Tail Call Optimisation in C++  WEB  PDF
Andy Balaam.
Overload, 20(109):10-13, June 2012.
Stack based languages can be very powerful, but often can’t deal with arbitrary recursion. Andy Balaam finds a way around this limitation.

[Balaam, 2012]
Footprint on Modify  WEB  PDF
Andy Balaam.
Overload, 20(112):16-19, December 2012.
Tracking history can be done in a variety of ways. Andy Balaam describes one technique with many advantages.

[Balaam, 2014]
Does Test-Driven Development Harm Clarity?  WEB  PDF
Andy Balaam.
Overload, 22(122):4-5, August 2014.
Is clarity the key thing to aim for when writing software? Andy Balaam considers if TDD harms clarity and if this matters.

[Balaam, 2014]
Everyone Hates build.xml  WEB  PDF
Andy Balaam.
Overload, 22(123):12-16, October 2014.
Andy Balaam shows how to structure and test Antbuild code.

[Balaam, 2015]
Mocks are Bad, Layers are Bad  WEB  PDF
Andy Balaam.
Overload, 23(127):8-11, June 2015.
Many people use mocks in their unit tests. Andy Balaam asks if there’s a better way.

[Balaam, 2015]
Don’t Design for Performance Until It’s Too Late  WEB  PDF
Andy Balaam.
Overload, 23(128):12-13, August 2015.
People claim optimisation can cause unreadable code. Andy Balaam argues good performance should be at the core of code design.

[Balaam, 2018]
Testing: Choose the Right Level  WEB  PDF
Andy Balaam.
Overload, 26(143):10-12, February 2018.
Testing can be easy. Andy Balaam considers levels to keep your focus just right.

[Balaam, 2018]
How to Write a Programming Language: Part 1, The Lexer  WEB  PDF
Andy Balaam.
Overload, 26(145):4-5, June 2018.
Writing a programming language might sound very difficult. Andy Balaam starts his series with a lexer.

[Balaam, 2018]
How to Write a Programming Language: Part 2, The Parser  WEB  PDF
Andy Balaam.
Overload, 26(146):20-22, August 2018.
We’ve got our tokens: now we need to knit them together into trees. Andy Balaam continues writing a programming language with the parser.

[Balaam, 2018]
How to Write a Programming Language: Part 3, The Evaluator  WEB  PDF
Andy Balaam.
Overload, 26(147):4-6, October 2018.
We’ve parsed our tokens: now we need turn them into values. Andy Balaam continues writing a programming language with the evaluator.

[Barber, 2012]
Unit Testing Compilation Failure  WEB  PDF
Pete Barber.
Overload, 20(108):23-27, April 2012.
We usually test that our code does what we expect. Pete Barber tries to prove that his code fails to compile.

[Barber, 2014]
Capturing lvalue References in C++11 Lambdas  WEB  PDF
Pete Barber.
Overload, 22(119):19-20, February 2014.
How confusing does it get when references refer to references and references are captured by value? Pete Barber shows us that it all falls out in the C++ consistency wash.

[Barrett-Powell, 2004]
Handling Exceptions in finally  WEB  PDF
Tony Barrett-Powell.
Overload, 12(62):, August 2004.

[Barta, 2002]
Building Java Applications  WEB  PDF
Vaclav Barta.
Overload, 10(49):, June 2002.

[Barth, 2023]
Determining If A Template Specialization Exists  WEB  PDF
Lukas Barth.
Overload, 31(173):7-10, February 2023.
How do you tell if a class or function template can be used with specific arguments? Lukas Barth details his approach.

[Bashir, 2007]
Upgrading Legacy Software in Data Communications Systems  WEB  PDF
Omar Bashir.
Overload, 15(82):, December 2007.
Changing operational software is a risky business. Omar Bashir offers a case study in matching risk with reward.

[Bashir, 2009]
Orderly Termination of Programs  WEB  PDF
Omar Bashir.
Overload, 17(89):, February 2009.
Ensuring a clean shutdown is important. Omar Bashir presents some techniques.

[Bashir, 2010]
Using Design Patterns to Manage Complexity  WEB  PDF
Omar Bashir.
Overload, 18(96):, April 2010.
Simpler programs are more reliable. Omar Bashir sees how to make improvements.

[Bashir, 2013]
Has the Singleton Not Suffered Enough  WEB  PDF
Omar Bashir.
Overload, 21(117):15-21, October 2013.
Singletons are much maligned. Omar Bashir considers why.

[Bass, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Bass, 1996]
editor << letters;  PDF
Sean A. Corfield, Allan Newton, Graham Jones, Phil Bass, Steven Youngs.
Overload, 4(15):35-36, August 1996.

[Bass, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Bass, 1998]
editor << letters;  PDF
Phil Bass, Unknown.
Overload, 6(24):35-36, February 1998.

[Bass, 1998]
STL Implementations: Personal Experiences  PDF
Phil Bass.
Overload, 6(26):29-34, June 1998.
Whiteboard

[Bass, 1999]
The State Pattern - A New Implementation  WEB
Phil Bass.
Overload, 7(33):, October 1999.

[Bass, 2000]
Standard C++  WEB
Phil Bass.
Overload, 8(35):, February 2000.

[Bass, 2000]
Supporting Threads in Standard C++ (Part 2)  WEB
Phil Bass.
Overload, 8(36):, April 2000.

[Bass, 2000]
Supporting Threads in Standard C++ (Part 3)  WEB
Phil Bass.
Overload, 8(37):, June 2000.

[Bass, 2000]
Supporting Threads in Standard C++ (Addendum)  WEB
Phil Bass.
Overload, 8(38):, August 2000.

[Bass, 2002]
Template Titbit - A Different Perspective  WEB  PDF
Phil Bass.
Overload, 10(48):, April 2002.

[Bass, 2002]
C++ Exceptions and Linux Dynamic Libraries  WEB  PDF
Phil Bass.
Overload, 10(48):, April 2002.

[Bass, 2002]
Implementing the Observer Pattern in C++ - Part 1  WEB  PDF
Phil Bass.
Overload, 10(52):, December 2002.

[Bass, 2003]
Implementing the Observer Pattern in C++ - Part 2  WEB  PDF
Phil Bass.
Overload, 11(53):10-13, February 2003.

[Bass, 2003]
Observer Pattern Implementation  WEB  PDF
Stefan Heinzmann, Phil Bass.
Overload, 11(54):, April 2003.

[Bass, 2004]
A Template Programmer’s Struggles Resolved  WEB  PDF
Stefan Heinzmann, Phil Bass.
Overload, 12(61):, June 2004.

[Bass, 2004]
The Curious Case of the Compile-Time Function  WEB  PDF
Phil Bass.
Overload, 12(62):, August 2004.

[Bass, 2004]
Evolution of the Observer Pattern  WEB  PDF
Phil Bass.
Overload, 12(64):, December 2004.

[Bass, 2005]
The Trial of the Reckless Coder  WEB  PDF
Phil Bass.
Overload, 13(67):, June 2005.

[Bass, 2005]
Grain Storage MIS: A Failure of Communications (27 March 1998)  WEB  PDF
Phil Bass.
Overload, 13(67):, June 2005.

[Bass, 2005]
The Curate's Wobbly Desk  WEB  PDF
Phil Bass.
Overload, 13(70):, December 2005.

[Bass, 2006]
Visiting Alice  WEB  PDF
Phil Bass.
Overload, 14(72):, April 2006.

[Bass, 2010]
The Quartermaster’s Store  WEB  PDF
Phil Bass.
Overload, 18(100):11-13, December 2010.
Be careful what you wish for. Phil Bass tries to simulate a missing language feature.

[Baus, 2006]
Pooled Lists  WEB  PDF
Christopher Baus.
Overload, 14(76):, December 2006.
Christopher Baus explains the advantages of using a pooled memory allocation strategy for high performance applications.

[Belch, 2009]
Project-Specific Language Dialects  WEB  PDF
Yaakov Belch, Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 17(94):17-25, December 2009.
Today’s languages force a one-size-fits-all approach on projects. Yaakov Belch, Sergey Ignatchenko and Dmytro Ivanchykhin suggest a more flexible solution.

[Bellingham, 1995]
editor << letters;  PDF
Alan Bellingham.
Overload, 3(8):41, June 1995.

[Bellingham, 1997]
Shared experience: a C++ pitfall  PDF
Alan Bellingham.
Overload, 5(20):27-31, June 1997.
C++ Techniques

[Bellingham, 1998]
Structured Analysis: OOD’s older brother?  PDF
Alan Bellingham.
Overload, 6(26):19-22, June 1998.
Whiteboard

[Bellingham, 1998]
Self Registering Classes - Taking polymorphism to the limit  WEB  PDF
Alan Bellingham.
Overload, 6(27):, August 1998.

[Ben-Shir, 2019]
ACCU Conference 2019: Reports  WEB  PDF
Felix Petriconi, Stefan Turalski, Ori Ben-Shir, Mathieu Ropert, Anthony Williams.
Overload, 27(151):13-19, June 2019.
ACCU holds an annual conference. Several attendees tell us what they learnt there this year.

[Bendersky, 2023]
Stack Frame Layout On x86-64  WEB  PDF
Eli Bendersky.
Overload, 31(173):11-13, February 2023.
Stacks can have different layouts. Eli Bendersky describes the x86-64 layout in detail.

[Benfield, 2014]
Anatomy of a Java Decompiler  WEB  PDF
Lee Benfield, Mike Strobel.
Overload, 22(119):11-15, February 2014.
Java byte code can be reverted back into source code. Lee Benfield and Mike Strobel show how.

[Bergen, 2024]
Modernization of Legacy Arrays: Replacing CArray with std::vector  WEB  PDF
Stuart Bergen.
Overload, 32(183):20-23, October 2024.
Many codebases still use mature libraries, such as Microsoft Foundation Classes. Stuart Bergen explains how and why he moved to using modern standard C++ tools instead.

[Beuche, 2007]
Software Product Line Engineering with Feature Models  WEB  PDF
Mark Dalgarno, Danilo Beuche.
Overload, 15(78):, April 2007.

[Blashchuk, 2018]
P1063 vs Coroutines TS: Consensus on High-Level Semantics  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 26(147):7-9, October 2018.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk argue that we need coroutines TS now to improve-based-on-experience later.

[Blashchuk, 2020]
A line-to-line conversion from Node.js to Node.cpp  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 28(155):4-7, February 2020.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk show how we can get a 5x improvement in speed.

[Blundel, 1998]
Dynamic Function Calling Using Operator Overloading  PDF
Richard Blundel.
Overload, 6(26):8-13, June 1998.
Software Development in C++

[Blundell, 1997]
An Introduction to the UML  PDF
Richard Blundell.
Overload, 5(22):8-12, October 1997.

[Blundell, 1997]
UML - Objects and Patterns  PDF
Richard Blundell.
Overload, 5(23):5-9, December 1997.
Software Development in C++

[Blundell, 1998]
UML - State-Transition Diagrams  PDF
Richard Blundell.
Overload, 6(24):3-8, February 1998.
Software Development in C++

[Blundell, 1998]
UML - Parameterised Classes (Templates) and Utilities  PDF
Richard Blundell.
Overload, 6(25):13-17, April 1998.
Software Development in C++

[Blundell, 1998]
UML Interactions & Collaborations  WEB  PDF
Richard Blundell.
Overload, 6(27):, August 1998.

[Blundell, 1999]
UML Relationships and Associations, Aggregation and Composition  WEB
Richard Blundell.
Overload, 7(30):, February 1999.

[Blundell, 1999]
Thoughts on Functoids  WEB
Richard Blundell.
Overload, 7(31):, April 1999.

[Blundell, 1999]
A Simple Model for Object Persistence Using the Standard Library  WEB
Richard Blundell.
Overload, 7(32):, June 1999.

[Blundell, 2000]
Automatic Object Versioning for Forward and Backward File Format Compatibility  WEB
Richard Blundell.
Overload, 8(35):, February 2000.

[Blundell, 2002]
File Format Conversion Using Templates and Type Collections  WEB  PDF
Richard Blundell.
Overload, 10(52):, December 2002.

[Boccara, 2019]
C++ Pipes  WEB  PDF
Jonathan Boccara.
Overload, 27(153):15-19, October 2019.
Expressive code can make life easier. Jonathan Boccara demonstrates fluent pipelines for collections in C++.

[Booth, 1995]
Thinking in C++ (Bruce Eckel) reviewed by Peter Booth  PDF
Peter Booth.
Overload, 3(10):29, October 1995.
Review

[Bouillot, 2015]
Make and Forward Consultables and Delegates  WEB  PDF
Nicolas Bouillot.
Overload, 23(127):20-24, June 2015.
Sometimes forwarding to a contained object requires lots of boilerplate code. Nicolas Bouillot introduces consultables and delegates to automate this.

[Bouillot, 2015]
Type Mosaicing with Consultables and Delegates  WEB  PDF
Nicolas Bouillot.
Overload, 23(130):8-12, December 2015.
If several classes need to work together lots of boilerplate code is often needed. Nicolas Bouillot introduces type mosaicing to avoid this.

[Bourguet, 2003]
Exported Templates  WEB  PDF
Jean-Marc Bourguet.
Overload, 11(54):, April 2003.

[Bourguet, 2003]
Letters to the Editor(s)  WEB  PDF
Jean-Marc Bourguet.
Overload, 11(57):, October 2003.

[Bracco, 2018]
(Re)Actor Allocation at 15 CPU Cycles  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin, Marcos Bracco.
Overload, 26(146):14-19, August 2018.
(Re)Actor serialisation requires an allocator. Sergey Ignatchenko, Dmytro Ivanchykhin and Marcos Bracco pare malloc/free down to 15 CPU cycles.

[Brand, 2017]
Initialization in C++ is Bonkers  WEB  PDF
Brand Brand.
Overload, 25(139):9-11, June 2017.
Uninitialised variables can cause problems. Simon Brand reminds us how complicated it can get.

[Brand, 2018]
Functional Error-Handling with Optional and Expected  WEB  PDF
Simon Brand.
Overload, 26(143):21-23, February 2018.
Exceptions should be exceptional. Simon Brand shows modern alternatives from the standard library and ways to improve them.

[Brazier, 2007]
Managing Technical Debt  WEB  PDF
Tom Brazier.
Overload, 15(77):, February 2007.
Software projects often cut corners in the rush to meet deadlines, resulting in bad code. Tom Brazier helps us to budget the cost of "doing it wrong".

[Brennig, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Breymann, 1995]
editor << letters;  PDF
Uli Breymann.
Overload, 3(8):42, June 1995.

[Breymann, 1995]
A deeper look at copy assignment  PDF
Uli Breymann.
Overload, 3(11):28-34, December 1995.
C++ Techniques

[Breymann, 1996]
An implementation pattern using RTTI  PDF
Uli Breymann.
Overload, 4(12):14-18, February 1996.
C++ Techniques

[Brown, 2012]
Web Annotation with Modified-Yarowsky and Other Algorithms  WEB  PDF
Silas Brown.
Overload, 20(112):4-7, December 2012.
Annotating text automatically requires word disambiguation. Silas Brown introduces the Yarowsky algorithm to help.

[Brown, 2003]
Indexing STL Lists With Maps  WEB  PDF
Silas S. Brown.
Overload, 11(53):18-19, February 2003.

[Brown, 2008]
Letter to the Editor  WEB  PDF
Silas S. Brown.
Overload, 16(83):, February 2008.

[Brown, 2016]
Letter  WEB  PDF
Silas S. Brown.
Overload, 24(136):24, December 2016.
Silas S. Brown comments on Steve Love’s recent article.

[Brown, 2017]
Multiprocessing and Clusters in Python  WEB  PDF
Silas S. Brown.
Overload, 25(137):13-15, February 2017.
Multiprocessing is possible in Python. Silas S. Brown shows us various ways.

[Brown, 2017]
Letters to the Editor  WEB  PDF
Silas S. Brown, Deák Ferenc, Frances Buontempo.
Overload, 25(141):4, October 2017.
Two letters and their replies.

[Brown, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Bruntlett, 1999]
Beyond ACCU  WEB
Ian Bruntlett.
Overload, 7(32):, June 1999.

[Bruntlett, 2000]
Intuitive Multi-Paradigm Design:  WEB
Ian Bruntlett.
Overload, 8(38):, August 2000.

[Bruntlett, 2000]
User Defined Types: Qualities, Principles and Archetypes.  WEB
Ian Bruntlett.
Overload, 8(39):, October 2000.

[Bruntlett, 2010]
Socially Responsible Recruitment  WEB  PDF
Ian Bruntlett.
Overload, 18(97):, June 2010.
Finding talented people is hard. Ian Bruntlett highlights an under-appreciated source.

[Bruntlett, 2016]
Stufftar  WEB  PDF
Ian Bruntlett.
Overload, 24(132):17-20, April 2016.
How do you quickly transfer data from one machine to another? Ian Bruntlett shows us the bash script he uses.

[Bruntlett, 2021]
Stufftar Revisited  WEB  PDF
Ian Bruntlett.
Overload, 29(165):13-14, October 2021.
Personal projects can provide valuable learning opportunities. Ian Bruntlett shares a system call surprise he discovered while extending stufftar.

[Bruntlett, 2023]
Drive Musings on Linux  WEB  PDF
Ian Bruntlett.
Overload, 31(177):17-19, October 2023.
Dealing with large files can be hard. Ian Bruntlett muses on various approaches that can help on Linux.

[Buontempo, 2009]
Floating Point Fun and Frolics  WEB  PDF
Frances Buontempo.
Overload, 17(91):, June 2009.
Representing numbers in computers is a non-trivial problem. Frances Buontempo finds using them is hard, too.

[Buontempo, 2012]
Allow Me To Introduce Myself  WEB  PDF
Frances Buontempo.
Overload, 20(110):2-3, August 2012.
Using data mining techniques to write an editorial.

[Buontempo, 2012]
Large Objects and Iterator Blocks  WEB  PDF
Frances Buontempo.
Overload, 20(110):22-24, August 2012.
Arrays can cause memory issues in .Net. Frances Buontempo shows how iterator blocks can help to relieve the pressure.

[Buontempo, 2012]
Editorial: Too Much Information  WEB  PDF
Frances Buontempo.
Overload, 20(111):2-3, October 2012.
Overload usually has an editorial. Frances Buontempo explains why she hasn’t had time to write one for this issue.

[Buontempo, 2012]
Originally, Overload Didn’t Have an Editorial  WEB  PDF
Frances Buontempo.
Overload, 20(112):2-3, December 2012.
Frances Buontempo considers history, predictions about the future and how to shirk off writing an editorial.

[Buontempo, 2013]
The Good, The Bad and The Discordant  WEB  PDF
Frances Buontempo.
Overload, 21(113):2-3, February 2013.
There are several signs of bad code. Frances Buontempo considers ugliness, stench and discord in a search for beauty.

[Buontempo, 2013]
Knitting Needles and Keyboards  WEB  PDF
Frances Buontempo.
Overload, 21(114):2-3, April 2013.
Traditionally, both journals and developers have editors. Frances Buontempo considers the role of an editor, in another attempt to avoid writing an editorial.

[Buontempo, 2013]
Editorial: Learning Fantasy Languages  WEB  PDF
Frances Buontempo.
Overload, 21(116):2-3, August 2013.
The last Overload editorial described a Fantasy Language. Now, how do you learn one?

[Buontempo, 2013]
Editorial: Decisions, Decisions  WEB  PDF
Frances Buontempo.
Overload, 21(117):2-3, October 2013.
Providing precise definitions can be difficult. For example, what is a program?

[Buontempo, 2013]
Editorial: Not So Much a Program, More a Way of Life  WEB  PDF
Frances Buontempo.
Overload, 21(118):2-3, December 2013.
In an attempt to continue and improve on the successful formula of previous editorial avoidance techniques, Frances Buontempo considers what a program really is.

[Buontempo, 2013]
How to Program Your Way Out of a Paper Bag Using Genetic Algorithms  WEB  PDF
Frances Buontempo.
Overload, 21(118):7-9, December 2013.
It is often claimed people cannot program their way out of a paper bag. Frances Buontempo bucks the trend using genetic algorithms.

[Buontempo, 2014]
Editorial: Random (non)sense  WEB  PDF
Frances Buontempo.
Overload, 22(119):2-3, February 2014.
It’s not pretty and it’s not clever. Frances Buontempo considers if the cut-up method can be used to generate editorials.

[Buontempo, 2014]
Editorial: Very small or very far away: A sense of perspective  WEB  PDF
Frances Buontempo.
Overload, 22(121):2-3, June 2014.
A tension exists between being immersed in something and stepping back. Frances Buontempo considers the importance of taking a break.

[Buontempo, 2014]
Editorial: Shop ’til you Drop  WEB  PDF
Frances Buontempo.
Overload, 22(122):2-3, August 2014.
Deciding which tools to acquire can be a difficult decision. Frances Buontempo muses on a failed shopping trip.

[Buontempo, 2014]
Editorial: Peer Reviewed  WEB  PDF
Frances Buontempo.
Overload, 22(123):2-3, October 2014.
Nobody gets it right first time. Frances Buontempo considers the importance ofthe review team.

[Buontempo, 2014]
Paper Bag Escapology Using Partricle Swarm Optimisation  WEB  PDF
Frances Buontempo.
Overload, 22(123):24-27, October 2014.
Frances Buontempo uses particle swarm optimisation to program her way out of a paper bag.

[Buontempo, 2014]
Editorial: Finding your muse  WEB  PDF
Frances Buontempo.
Overload, 22(124):2-3, December 2014.
Lack of ideas and confidence can freeze an author. Frances Buontempo considers how to warm up.

[Buontempo, 2015]
FUD - Fear, uncertainty and doubt  WEB  PDF
Frances Buontempo.
Overload, 23(125):2-3, February 2015.
Sometimes programming is neither an engineering discipline nor a science. Frances Buontempo considers when it slips into the numinous realm.

[Buontempo, 2015]
How to Write an Article  WEB  PDF
Frances Buontempo.
Overload, 23(125):20-21, February 2015.
Submitting an article for publication might seem difficult. Frances Buontempo explains how easy it is.

[Buontempo, 2015]
Where was I?  WEB  PDF
Frances Buontempo.
Overload, 23(126):2-3, April 2015.
Space and time are relative. Frances Buontempo wonders whether this will wash as an excuse for another lack of editorial.

[Buontempo, 2015]
Editorial: A little more conversation, a little less action  WEB  PDF
Frances Buontempo.
Overload, 23(127):2-3, June 2015.
A tension exists between talking and doing. Frances Buontempo wonders which matters more.

[Buontempo, 2015]
Editorial: Semi-automatic Weapons  WEB  PDF
Frances Buontempo.
Overload, 23(128):2-3, August 2015.
Automating work can save time and avoid mistakes. But Frances Buontempo doesn’t think you should script everything.

[Buontempo, 2015]
Editorial: Failure is an option  WEB  PDF
Frances Buontempo.
Overload, 23(129):2-3, October 2015.
Motivational speeches and aphorisms are clichés. Frances Buontempo wonders if they sometimes do more harm than good.

[Buontempo, 2015]
Editorial: Reduce, reuse, recycle  WEB  PDF
Frances Buontempo.
Overload, 23(130):2-3, December 2015.
The introduction of a carrier bag tax has caused a little fuss. Frances Buontempo considers if it has lessons for programmers.

[Buontempo, 2016]
Be lucky  WEB  PDF
Frances Buontempo.
Overload, 24(131):2-3, February 2016.
Do you consider yourself unlucky? Frances Buontempo wonders what we can do to avoid disasters.

[Buontempo, 2016]
Where Does All The Time Go?  WEB  PDF
Frances Buontempo.
Overload, 24(132):2-3, April 2016.
There’s never enough time. Frances Buontempo wonders what this really means.

[Buontempo, 2016]
How to Diffuse Your Way Out of a Paper Bag  WEB  PDF
Frances Buontempo.
Overload, 24(132):13-16, April 2016.
Diffusion models can be used in many areas. Frances Buontempo applies them to paper bag escapology.

[Buontempo, 2016]
Metrics and Imperialism  WEB  PDF
Frances Buontempo.
Overload, 24(133):2-3, June 2016.
Measuring accurately underpins science. Frances Buontempo considers what constitutes sensible metrics.

[Buontempo, 2016]
Editorial: Just a minute  WEB  PDF
Frances Buontempo.
Overload, 24(134):2-3, August 2016.
Constraints can seem like an imposition. Frances Buontempo wonders if banning hesitation, deviation or repetition is a good thing.

[Buontempo, 2016]
Editorial: Ain’t that the truth?!  WEB  PDF
Frances Buontempo.
Overload, 24(135):2-3, October 2016.
Witnesses promise to tell the truth, the whole truth and nothing but the truth. Frances Buontempo wonders what truth actually means.

[Buontempo, 2016]
The Font of Wisdom  WEB  PDF
Frances Buontempo.
Overload, 24(136):2-3, December 2016.
The choice of typeface can convey a tone. Frances Buontempo considers the plethora of dilemmas this presents.

[Buontempo, 2017]
The Uncertainty Guidelines  WEB  PDF
Frances Buontempo.
Overload, 25(137):2-3, February 2017.
Uncertainty can be overwhelming. Frances Buontempo embraces the advantages of ambiguity.

[Buontempo, 2017]
Breadth First, Depth First, Test First  WEB  PDF
Frances Buontempo.
Overload, 25(138):2-3, April 2017.
You can approach a problem top-down or bottom-up. Frances Buontempo wonders if algorithms can help us choose the most appropriate direction.

[Buontempo, 2017]
An Interview: Emyr Williams  WEB  PDF
Frances Buontempo.
Overload, 25(138):10-11, April 2017.
CVu has been running a series of interviews. Frances Buontempo interviews the interviewer, Emyr Williams.

[Buontempo, 2017]
I am not a number  WEB  PDF
Frances Buontempo.
Overload, 25(139):2-3, June 2017.
When is a number not a number? Frances Buontempo counts the ways this happens.

[Buontempo, 2017]
Gnomes and Misnomers  WEB  PDF
Frances Buontempo.
Overload, 25(140):2-3, August 2017.
What's in a name? Frances Buontempo decides some names are better than others.

[Buontempo, 2017]
This way up!  WEB  PDF
Frances Buontempo.
Overload, 25(141):2-3, October 2017.
Directions in computing can be very confusing. Frances Buontempo wonders if we know our right from left.

[Buontempo, 2017]
Letters to the Editor  WEB  PDF
Silas S. Brown, Deák Ferenc, Frances Buontempo.
Overload, 25(141):4, October 2017.
Two letters and their replies.

[Buontempo, 2017]
Too Fast! Too slow! Too right!!  WEB  PDF
Frances Buontempo.
Overload, 25(142):2-3, December 2017.
Many products over-promise. Frances Buontempo muses on how to get things just right.

[Buontempo, 2018]
Hapaxes, Singletons and Anomalies  WEB  PDF
Frances Buontempo.
Overload, 26(143):2-3, February 2018.
Programmers can be odd. Frances Buontempo celebrates many manifold peculiarities.

[Buontempo, 2018]
Deeds not words  WEB  PDF
Frances Buontempo.
Overload, 26(144):2-3, April 2018.
Women’s suffrage used the motto "Deeds not Words". Frances Buontempo applies this to programming.

[Buontempo, 2018]
Automate all the things  WEB  PDF
Frances Buontempo.
Overload, 26(145):2-3, June 2018.
Automation can speed things up. Frances Buontempo considers how it can make things worse.

[Buontempo, 2018]
Should I Lead by Example?  WEB  PDF
Frances Buontempo.
Overload, 26(146):2-3, August 2018.
Stuck on a problem? Frances Buontempo considers where to turn to for inspiration.

[Buontempo, 2018]
Are we nearly there yet?  WEB  PDF
Frances Buontempo.
Overload, 26(147):2-3, October 2018.
Deciding if you are making progress can be a challenge. Frances Buontempo considers various metrics and their effects.

[Buontempo, 2018]
Revolution, Restoration and Revival  WEB  PDF
Frances Buontempo.
Overload, 26(148):2-3, December 2018.
Trends cycle in seasons. Frances Buontempo wonders what programmers should on the lookout for.

[Buontempo, 2019]
Rip It Up and Start Again  WEB  PDF
Frances Buontempo.
Overload, 27(149):2-3, February 2019.
Some things can be resurrected, others cannot. Frances Buontempo wonders when we need to repent and start over.

[Buontempo, 2019]
This means war!  WEB  PDF
Frances Buontempo.
Overload, 27(150):2-3, April 2019.
Careless use of language can upset people. Frances Buontempo asks what we can do to make the developer experience better.

[Buontempo, 2019]
How Hard Can It Be?  WEB  PDF
Frances Buontempo.
Overload, 27(151):2-3, June 2019.
Getting different parties to collaborate might sound easy. Frances Buontempo explores where problems and opportunities arise.

[Buontempo, 2019]
Reactive or Proactive  WEB  PDF
Frances Buontempo.
Overload, 27(152):2-3, August 2019.
Reactive systems are all the rage. Frances Buontempo compares them with a proactive approach.

[Buontempo, 2019]
Predictions and Predilections  WEB  PDF
Frances Buontempo.
Overload, 27(153):2-3, October 2019.
Forecasting the future is difficult. Frances Buontempo has a foreboding sense that a lack of impartially makes things even harder.

[Buontempo, 2019]
Inside-Out  WEB  PDF
Frances Buontempo.
Overload, 27(154):2-3, December 2019.
Sometimes things appear to be inside out. Frances Buontempo considers when a shift of perspective can make things seem better.

[Buontempo, 2020]
Members and Remembrances  WEB  PDF
Frances Buontempo.
Overload, 28(155):2-3, February 2020.
Remembering things can be difficult. Frances Buontempo reminisces on routes to erudition.

[Buontempo, 2020]
R.E.S.P.E.C.T.  WEB  PDF
Frances Buontempo.
Overload, 28(156):2-3, April 2020.
Respect can mean many different things. Frances Buontempo muses on its myriad meanings.

[Buontempo, 2020]
Rainclouds and Olive Branches  WEB  PDF
Frances Buontempo.
Overload, 28(157):2-3, June 2020.
Sometimes warning signs get missed or ignored. Frances Buontempo considers signs of trouble and seeds of hope.

[Buontempo, 2020]
RE:Purpose FWD:Thinking  WEB  PDF
Frances Buontempo.
Overload, 28(158):2-3, August 2020.
The pandemic could be a ‘Once in a Lifetime’ opportunity to stop and think. Frances Buontempo misses this chance and muses on lyrics by Talking Heads instead.

[Buontempo, 2020]
Virtual/Reality  WEB  PDF
Frances Buontempo.
Overload, 28(159):2-3, October 2020.
Do we know what reality is? Frances Buontempo is no longer sure and now wonders if she’s a fictional character.

[Buontempo, 2020]
Debt – My First Thirty Years  WEB  PDF
Frances Buontempo.
Overload, 28(160):2-3, December 2020.
Reflecting on code often reveals gnarliness. Frances Buontempo reminds herself about all the tech debt she’s ever caused.

[Buontempo, 2021]
In. Sub. Ordinate.  WEB  PDF
Frances Buontempo.
Overload, 29(161):2-3, February 2021.
Mindless rebellion is mindless. Frances Buontempo encourages mindful consideration of when to refuse.

[Buontempo, 2021]
Keep Up at the Back  WEB  PDF
Frances Buontempo.
Overload, 29(162):2-3, April 2021.
It's hard to keep up in a changing world. Frances Buontempo wonders how to deal with the constant state of flux.

[Buontempo, 2021]
Geek, Nerd or Neither?  WEB  PDF
Frances Buontempo.
Overload, 29(163):2-3, June 2021.
Typecasting can be useful but has many dangers. Frances Buontempo considers how to pick your way through categories.

[Buontempo, 2021]
Too Much Typing  WEB  PDF
Frances Buontempo.
Overload, 29(164):2-3, August 2021.
Programmers spend an inordinate amount of time typing. Frances Buontempo wonders whether this can be curtailed.

[Buontempo, 2021]
Teach Your Computer to Program Itself  WEB  PDF
Frances Buontempo.
Overload, 29(164):19-23, August 2021.
Can AI replace programmers? Frances Buontempo demonstrates how to autogenerate code and why we may not be replaceable yet.

[Buontempo, 2021]
The Right Tool for the Job  WEB  PDF
Frances Buontempo.
Overload, 29(165):2-3, October 2021.
Fads and frameworks come and go. Frances Buontempo encourages us to find what works rather than follow fashions.

[Buontempo, 2021]
It’s Not Normal  WEB  PDF
Frances Buontempo.
Overload, 29(166):2-3, December 2021.
We live in strange times. Frances Buontempo asks if everything’s OK.

[Buontempo, 2022]
What are you optimizing for?  WEB  PDF
Frances Buontempo.
Overload, 30(167):2-3, February 2022.
Sometimes attempts to improve things make it worse. Frances Buontempo encourages you to think about what you’re doing when you try to optimise, and to check it really is working.

[Buontempo, 2022]
On Becoming Unstuck  WEB  PDF
Frances Buontempo.
Overload, 30(168):2-3, April 2022.
The horsemen of the apocalypse may be on the horizon. Frances Buontempo attempts to stop doom-scrolling and solve problems instead.

[Buontempo, 2022]
What Happened to Demo 13?  WEB  PDF
Frances Buontempo.
Overload, 30(169):2-3, June 2022.
Making mistakes and forgetting are facts of life. Frances Buontempo tries to find ways to tackle this.

[Buontempo, 2022]
Whodunnit?  WEB  PDF
Frances Buontempo.
Overload, 30(170):2-3, August 2022.
Coding is a creative process. Frances Buontempo wonders how close it often gets to fiction.

[Buontempo, 2022]
Don’t Block Doors  WEB  PDF
Frances Buontempo.
Overload, 30(170):10-11, August 2022.
You can build simulations using cellular automata. Frances Buontempo uses this technique to demonstrate what happens if people stand in doorways.

[Buontempo, 2022]
Sustainability: An Impossible Dream?  WEB  PDF
Frances Buontempo.
Overload, 30(171):2-3, October 2022.
Sustainable development is currently receiving a lot of attention. Frances Buontempo questions what might make this possible.

[Buontempo, 2022]
The ACCU Conference  WEB  PDF
Frances Buontempo, Felix Petriconi.
Overload, 30(171):9, October 2022.
Frances Buontempo extols the virtues of attending (or presenting); Felix Petriconi says 'thank you' to Julie Archer.

[Buontempo, 2022]
Don’t Believe the Hype  WEB  PDF
Frances Buontempo.
Overload, 30(172):2-3, December 2022.
Attention grabbing announcements can usually be safely ignored. Frances Buontempo considers how to pick her way through the hyperbole.

[Buontempo, 2023]
Under Pressure  WEB  PDF
Frances Buontempo.
Overload, 31(173):2-3, February 2023.
Mounting pressure can be problematic. Frances Buontempo takes a step back and wonders if pressure is always a bad thing.

[Buontempo, 2023]
And the Winners Are...  WEB  PDF
Frances Buontempo.
Overload, 31(173):13, February 2023.

[Buontempo, 2023]
The Rise and Fall of Almost Everything  WEB  PDF
Frances Buontempo.
Overload, 31(174):2-3, April 2023.
Some things go up and up, while others go up and down. Frances Buontempo considers whether the distinction matters and how to spot the difference.

[Buontempo, 2023]
Production and Productivity  WEB  PDF
Frances Buontempo.
Overload, 31(175):2-3, June 2023.
How can you increase your productivity? Frances Buontempo discovers that ChatGPT might not help.

[Buontempo, 2023]
Asleep at the Wheel  WEB  PDF
Frances Buontempo.
Overload, 31(176):2-3, August 2023.
Are you cruising on autopilot? Frances Buontempo wonders if we need to change direction from time to time.

[Buontempo, 2023]
Frozen or Buffering?  WEB  PDF
Frances Buontempo.
Overload, 31(177):2-3, October 2023.
Sometimes things grind to a halt. Frances Buontempo reminds us we cannot be productive every minute of the day and that downtime is important.

[Buontempo, 2023]
General Knowledge and Selective Ignorance  WEB  PDF
Frances Buontempo.
Overload, 31(178):2-3, December 2023.
It’s very easy to assume everyone knows everything you know. Frances Buontempo points out that general knowledge is context dependent.

[Buontempo, 2023]
How to Write an Article  WEB  PDF
Frances Buontempo.
Overload, 31(178):14-15, December 2023.
Submitting an article for publication might seem daunting. Frances Buontempo explains just how easy it is.

[Buontempo, 2024]
Over-Promise, Under-Deliver  WEB  PDF
Frances Buontempo.
Overload, 32(179):2-3, February 2024.
A new year can mean new beginnings. Frances Buontempo encourages us to stay motivated even if things don’t work out.

[Buontempo, 2024]
And the Winners Are...  WEB  PDF
Frances Buontempo.
Overload, 32(179):8, February 2024.

[Buontempo, 2024]
I Don’t Believe It!  WEB  PDF
Frances Buontempo.
Overload, 32(180):2-3, April 2024.
Sometimes we are surprised by unexpected outcomes or how long things take. Frances Buontempo confesses to how she’s lost hours recently, but learnt from the experiences.

[Buontempo, 2024]
Breaking Bad (Habits)  WEB  PDF
Frances Buontempo.
Overload, 32(181):2-3, June 2024.
Trying to make a change can be difficult. Frances Buontempo considers how to start forming new, better, habits.

[Buontempo, 2024]
A Humble Proposal  WEB  PDF
Frances Buontempo.
Overload, 32(182):2-3, August 2024.
Are you out of ideas or find it hard to speak up? Frances Buontempo suggests small ways to get started.

[Buontempo, 2024]
What Does It All Mean?  WEB  PDF
Frances Buontempo.
Overload, 32(183):2-3, October 2024.
Trying to make sense of things can be a challenge. Frances Buontempo reminds us something don’t entirely make sense and that’s OK.

[Böger, 2019]
Empty Scoped Enums as Strong Aliases for Integral Types  WEB  PDF
Lukas Böger.
Overload, 27(152):9-10, August 2019.
Scoped enums have many advantages. Lukas Böger demonstrates their use as strong types of numbers.

[Cacciola, 2006]
Introducing CODEF/CML  WEB  PDF
Fernando Cacciola.
Overload, 14(74):, August 2006.
This article introduces a C# serialization facility that proposes a novel separation between object models, representing the serialized data, and class descriptors, representing the binding to the receiving design space.

[Castro, 2012]
Curiously Recursive Template Problems with Aspect Oriented Programming  WEB  PDF
Hugo Arregui, Carlos Castro, Daniel Gutson.
Overload, 20(109):20-23, June 2012.

[Charney, 2003]
C++ Standards Library Report  WEB  PDF
Reg Charney.
Overload, 11(53):23-24, February 2003.

[Charney, 2003]
C++ Templates  WEB  PDF
Reg Charney.
Overload, 11(53):25-26, February 2003.

[Charney, 1998]
Data Attribute Notation - Part 2  WEB
Reginald B. Charney.
Overload, 6(29):, December 1998.

[Charney, 1999]
Data Attribute Notation - Part 3  WEB
Reginald B. Charney.
Overload, 7(30):, February 1999.

[Cheshire, 2002]
Template Metaprogramming: Shifting Down a Gear  WEB  PDF
Andrew Cheshire.
Overload, 10(50):, August 2002.

[Clamage, 1997]
C++ Committee Draft  PDF
Steve Clamage.
Overload, 5(19):15, April 1997.
The Draft International C++ Standard

[Clare, 2008]
Globals, Singletons and Parameters  WEB  PDF
Bill Clare.
Overload, 16(86):, August 2008.
One size rarely fits all. Bill Clare considers different approaches to parameterization.

[Coe, 2014]
Defining Visitors Inline in Modern C++  WEB  PDF
Robert Mill, Jonathan Coe.
Overload, 22(123):17-19, October 2014.
Robert Mill and Jonathan Coe present an inline visitor in C++.

[Coe, 2015]
An Inline-variant-visitor with C++ Concepts  WEB  PDF
Jonathan Coe, Andrew Sutton.
Overload, 23(129):17-20, October 2015.
Concepts are abstract. Jonathan Coe and Andrew Sutton provide us with a concrete example of their use.

[Collyer, 2021]
Replacing ‘bool’ Values  WEB  PDF
Spencer Collyer.
Overload, 29(163):4-10, June 2021.
Booleans seem simple to use. Spencer Collyer considers when they can actually cause a world of pain.

[Collyer, 2021]
C++20 Text Formatting: An Introduction  WEB  PDF
Spencer Collyer.
Overload, 29(166):9-21, December 2021.
C++20 has brought in many changes. Spencer Collyer gives an introduction to the new formatting library.

[Collyer, 2024]
User-Defined Formatting in std::format  WEB  PDF
Spencer Collyer.
Overload, 32(180):20-26, April 2024.
std::format allows us to format values quickly and safely. Spencer Collyer demonstrates how to provide formatting for a simple user-defined class.

[Collyer, 2024]
User-Defined Formatting in std::format – Part 2  WEB  PDF
Spencer Collyer.
Overload, 32(181):4-8, June 2024.
Last time, we saw how to provide formatting for a simple user-defined class. Spencer Collyer builds on this, showing how to write a formatter for more complicated types.

[Collyer, 2024]
User-Defined Formatting in std::format – Part 3  WEB  PDF
Spencer Collyer.
Overload, 32(182):4-5, August 2024.
We’ve seen formatting for simple classes and more complicated types. Spencer Collyer finishes his series by showing us how to apply specific formatting to existing classes.

[Colyer, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Corfield, 1997]
Editorial  WEB
Sean Corfield.
Overload, 5(17-18):, January 1997.

[Corfield, 1998]
Broadvision: A lesson in application frameworks  PDF
Sean Corfield.
Overload, 6(26):26-29, June 1998.
Whiteboard

[Corfield, 1998]
Broadvision - Part 2  WEB  PDF
Sean Corfield.
Overload, 6(27):, August 1998.

[Corfield, 1998]
Broadvision - Part 3  WEB
Sean Corfield.
Overload, 6(28):, October 1998.

[Corfield, 1999]
BroadVision, Part 4  WEB
Sean Corfield.
Overload, 7(32):, June 1999.

[Corfield, 1998]
Sean's Show  PDF
Sean A Corfield.
Overload, 6(26):2, June 1998.
Editorial

[Corfield, 1994]
The Casting Vote  WEB
Sean A. Corfield.
Overload, 2(4):, February 1994.

[Corfield, 1994]
The Virtual Interview  WEB
Sean A. Corfield.
Overload, 2(5):7, September 1994.
John Max Skaller was interviewed by Sean A. Corfield

[Corfield, 1994]
So you want to be a cOOmpiler writer?  WEB
Sean A. Corfield.
Overload, 2(5):10-11, September 1994.

[Corfield, 1994]
The Casting Vote  WEB
Sean A. Corfield.
Overload, 2(5):18-21, September 1994.

[Corfield, 1995]
The Casting Vote  WEB
Sean A. Corfield.
Overload, 3(6):, March 1995.

[Corfield, 1995]
Editorial  PDF
Sean A. Corfield.
Overload, 3(7):3-4, April 1995.

[Corfield, 1995]
Subsidising lunch? - a reply  PDF
Sean A. Corfield.
Overload, 3(7):10-11, April 1995.

[Corfield, 1995]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 3(7):18-22, April 1995.

[Corfield, 1995]
Questions & Answers  PDF
Sean A. Corfield.
Overload, 3(7):40-41, April 1995.

[Corfield, 1995]
++puzzle;  PDF
Sean A. Corfield.
Overload, 3(7):41, April 1995.

[Corfield, 1995]
Books and Journals  PDF
Sean A. Corfield.
Overload, 3(7):42, April 1995.

[Corfield, 1995]
Editorial  PDF
Sean A. Corfield.
Overload, 3(8):3, June 1995.

[Corfield, 1995]
So you want to be a cOOmpiler writer? - part II  PDF
Sean A. Corfield.
Overload, 3(8):12-14, June 1995.

[Corfield, 1995]
namespace - a short exposé  PDF
Sean A. Corfield.
Overload, 3(8):18-19, June 1995.
The Draft International C++ Standard

[Corfield, 1995]
++puzzle;  PDF
Sean A. Corfield.
Overload, 3(8):43, June 1995.

[Corfield, 1995]
Editorial  PDF
Sean A. Corfield.
Overload, 3(9):3, August 1995.

[Corfield, 1995]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 3(9):18-21, August 1995.
The Draft International C++ Standard

[Corfield, 1995]
Design Patterns reviewed by Sean A. Corfield  PDF
Sean A. Corfield.
Overload, 3(9):38-39, August 1995.
Books and Journals

[Corfield, 1995]
Editorial  PDF
Sean A. Corfield.
Overload, 3(10):3-4, October 1995.

[Corfield, 1995]
So you want to be a cOOmpiler writer? - part III  PDF
Sean A. Corfield.
Overload, 3(10):5-11, October 1995.
Software Development in C++

[Corfield, 1995]
What’s in a name?  PDF
Sean A. Corfield.
Overload, 3(10):13-16, October 1995.
The Draft International C++ Standard

[Corfield, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Corfield, 1995]
From Chaos to Classes (Daniel Duffy) reviewed by Sean A. Corfield  PDF
Sean A. Corfield.
Overload, 3(10):29-31, October 1995.

[Corfield, 1995]
Editorial  PDF
Sean A. Corfield.
Overload, 3(11):3, December 1995.

[Corfield, 1995]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 3(11):18-19, December 1995.
The Draft International C++ Standard

[Corfield, 1995]
Scientific and Engineering C++ reviewed by Sean A. Corfield  PDF
Sean A. Corfield.
Overload, 3(11):42-43, December 1995.
Books and Journals

[Corfield, 1996]
Editorial  PDF
Sean A. Corfield.
Overload, 4(12):3, February 1996.

[Corfield, 1996]
So you want to be a cOOmpiler writer? - part IV  PDF
Sean A. Corfield.
Overload, 4(12):7-9, February 1996.
Software Development in C++

[Corfield, 1996]
A UK perspective  PDF
Sean A. Corfield.
Overload, 4(12):13-14, February 1996.
The Draft International C++ Standard

[Corfield, 1996]
Heapwalking problems  PDF
Sean A. Corfield.
Overload, 4(12):22-23, February 1996.
C++ Techniques

[Corfield, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Corfield, 1996]
Editorial  PDF
Sean A. Corfield.
Overload, 4(13):3-6, April 1996.

[Corfield, 1996]
So you want to be a cOOmpiler writer? - part V  PDF
Sean A. Corfield.
Overload, 4(13):9-11, April 1996.
Software Development in C++

[Corfield, 1996]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 4(13):16-18, April 1996.
The Draft International C++ Standard

[Corfield, 1996]
You can’t get there from here - a closer look at input iterators  PDF
Sean A. Corfield.
Overload, 4(13):20-21, April 1996.
C++ Techniques

[Corfield, 1996]
Using STL with pointers  PDF
Sean A. Corfield.
Overload, 4(13):24-27, April 1996.
C++ Techniques

[Corfield, 1996]
editor << letters;  PDF
Sean A. Corfield, Peter Wippell, Dave Midgley, Roger Woollett, The Harpist.
Overload, 4(13):30-31, April 1996.

[Corfield, 1996]
Editorial  PDF
Sean A. Corfield.
Overload, 4(14):3, June 1996.

[Corfield, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Corfield, 1996]
Editorial  PDF
Sean A. Corfield.
Overload, 4(15):3, August 1996.

[Corfield, 1996]
So you want to be a cOOmpiler writer? - part VI  PDF
Sean A. Corfield.
Overload, 4(15):15-19, August 1996.
Software Development in C++

[Corfield, 1996]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 4(15):19-20, August 1996.
The Draft International C++ Standard

[Corfield, 1996]
editor << letters;  PDF
Sean A. Corfield, Allan Newton, Graham Jones, Phil Bass, Steven Youngs.
Overload, 4(15):35-36, August 1996.

[Corfield, 1996]
Editorial  PDF
Sean A. Corfield.
Overload, 4(16):3, October 1996.

[Corfield, 1997]
The Casting Vote I  WEB
Sean A. Corfield.
Overload, 5(17-18):, January 1997.

[Corfield, 1997]
The Casting Vote II  WEB
Sean A. Corfield.
Overload, 5(17-18):, January 1997.

[Corfield, 1997]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 5(19):15-17, April 1997.
The Draft International C++ Standard

[Corfield, 1997]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 5(20):7-8, June 1997.
The Draft International C++ Standard

[Corfield, 1997]
The Casting Vote  PDF
Sean A. Corfield.
Overload, 5(21):7-9, August 1997.
The Draft International C++ Standard

[Corfield, 1998]
Java 1.2 and JavaScript for C and C++ Programmers  PDF
Sean A. Corfield.
Overload, 6(26):34-36, June 1998.
Reviews

[Cornish, 1999]
Exceptions - The Basics  WEB
Steve Cornish.
Overload, 7(33):, October 1999.

[Cornish, 1999]
SAX - A Simple API for XML  WEB
Steve Cornish.
Overload, 7(34):, December 1999.

[Cornish, 1999]
Exceptions - The Details  WEB
Steve Cornish.
Overload, 7(34):, December 1999.

[Cornish, 1999]
Error logging and patterns  WEB
Steve Cornish.
Overload, 7(34):, December 1999.

[Cornish, 2000]
Exceptions - Guidance  WEB
Steve Cornish.
Overload, 8(35):, February 2000.

[Cornish, 2000]
XML in Applications II DOM - the Document Object Model  WEB
Steve Cornish.
Overload, 8(36):, April 2000.

[Craveiro, 2016]
Dogen: The Package Management Saga  WEB  PDF
Marco Craveiro.
Overload, 24(133):4-6, June 2016.
How do you manage packages in C++? Marco Craveiro eventually discovered Conan after some frustrating experiences.

[Crickett, 2002]
Developing a C++ Unit Testing Framework  WEB  PDF
John Crickett.
Overload, 10(52):, December 2002.

[Crowe, 2018]
Type-agnostic Tracing Using {fmt}  WEB  PDF
Mike Crowe.
Overload, 26(145):6-8, June 2018.
Tracing compound and custom types is a challenge. Mike Crowe demonstrates how {fmt} provides a safe alternative to printf.

[Crowe, 2020]
It’s About Time  WEB  PDF
Mike Crowe.
Overload, 28(156):28-30, April 2020.
How easy is it to make code wait for a time period before doing something? Mike Crowe looks at ways to avoid problems when a system clock changes.

[Dalgarno, 2007]
Software Product Line Engineering with Feature Models  WEB  PDF
Mark Dalgarno, Danilo Beuche.
Overload, 15(78):, April 2007.

[Dargo, 2024]
Trip report: C++ On Sea 2024  WEB  PDF
Sandor Dargo.
Overload, 32(182):13-15, August 2024.
C++ On Sea took place in Folkestone again in February this year. Sandor Dargo shares an overview of his favourite talks and some emergent ideas.

[Dargó, 2023]
C++ on Sea 2023: Trip Report  WEB  PDF
Sándor Dargó.
Overload, 31(176):8-11, August 2023.
C++ on Sea happened again in June this year. Sándor Dargó explains why he thinks speaking rather than just attending a conference is worth considering.

[Daudel, 2003]
A Unified Singleton Framework  WEB  PDF
Jeff Daudel.
Overload, 11(56):, August 2003.

[Daudel, 2003]
Letter to the Editor(s)  WEB  PDF
Jeff Daudel.
Overload, 11(58):, December 2003.

[Davies, 1995]
OOA - The Shlaer-Mellor Approach  PDF
David Davies.
Overload, 3(8):5-12, June 1995.

[Davies, 1995]
Classes and Associations  PDF
David Davies.
Overload, 3(11):5-15, December 1995.
Software Development in C++

[Davies, 2006]
Pair Programming Explained  WEB  PDF
Rachel Davies.
Overload, 14(73):, June 2006.
Rachel Davies explains how to implement pair programming and why it can be an effective practice for programmers.

[Davies, 2006]
Letters  WEB  PDF
Colin Paul Gloster, William Fishburne, Seweryn Habdank-Wojewódzki, Rachel Davies.
Overload, 14(75):, October 2006.

[Davies, 2007]
Live and Learn with Retrospectives  WEB  PDF
Rachel Davies.
Overload, 15(79):, June 2007.
How can a team learn from experience? Rachel Davies presents a powerful technique for this.

[Davis, 2022]
ACCU 2022 Trip Reports  WEB  PDF
Phil Nash, Dom Davis, Hannah Dee, Timur Doumler.
Overload, 30(169):10-15, June 2022.
The ACCU conference returned in hybrid mode this year. Several writers share their experiences.

[Dee, 2022]
ACCU 2022 Trip Reports  WEB  PDF
Phil Nash, Dom Davis, Hannah Dee, Timur Doumler.
Overload, 30(169):10-15, June 2022.
The ACCU conference returned in hybrid mode this year. Several writers share their experiences.

[Deigh, 2007]
A Practical Form of OO Layering  WEB  PDF
Teedy Deigh.
Overload, 15(78):, April 2007.

[Deigh, 2008]
The Way of the Consultant  WEB  PDF
Teedy Deigh.
Overload, 16(84):, April 2008.
Effective communication is a challenging reponsibility of the communicator - Teedy Deigh offers some observations on how consultants can meet this challenge.

[Deigh, 2009]
WRESTLE: Aggressive and Unprincipled Agile Development in the Small  WEB  PDF
Teedy Deigh.
Overload, 17(90):, April 2009.
Agile development is all the rage. Teedy Deigh introduces a popular variant.

[Deigh, 2010]
A Practical, Reasoned and Inciteful Lemma for Overworked and Overlooked Loners  WEB  PDF
Teedy Deigh.
Overload, 18(96):, April 2010.
Popular movements need a rallying cry. Teedy Deigh offers a timely one.

[Deigh, 2011]
Despair Programming  WEB  PDF
Teedy Deigh.
Overload, 19(102):24, April 2011.
Managing relationships is vital to a successful project. Teedy Deigh looks back on a lifetime’s experience.

[Deigh, 2012]
A Position on Running Interference in Languages  WEB  PDF
Teedy Deigh.
Overload, 20(108):36, April 2012.
There is much debate about the merits of different approaches to type systems. Teedy Deigh considers how to make the most of them.

[Deigh, 2013]
Why Dysfunctional Programming Matters  WEB  PDF
Teedy Deigh.
Overload, 21(114):27-28, April 2013.
Function progamming is all the rage. Teedy Deigh considers how it offers many opportunities for the serious programmer.

[Deigh, 2014]
Teenage Hex  WEB  PDF
Teedy Deigh.
Overload, 22(120):32, April 2014.
There’s a big push to get programming into schools. Teedy Deigh considers what would suit the target audience.

[Deigh, 2015]
Seeing the Wood for the Trees  WEB  PDF
Teedy Deigh.
Overload, 23(126):32, April 2015.
The outdoors is fabled to be great. Teedy Deigh suggests your code reflects your environment without ever having to look out of the window.

[Deigh, 2016]
9.7 Things Every Programmer Really, Really Should Know  WEB  PDF
Teedy Deigh.
Overload, 24(132):24, April 2016.
Most of us have heard of the twelve step program. Teedy Deigh introduces a 9.7 step plan for programmers.

[Deigh, 2017]
All About the Base Representing numbers presents many choices.  WEB  PDF
Teedy Deigh.
Overload, 25(138):20, April 2017.
Teedy Deigh counts the ways.

[Deigh, 2018]
Ex Hackina  WEB  PDF
Teedy Deigh.
Overload, 26(144):28, April 2018.
Machine Learning and AI are popular at the moment. Teedy Deigh takes the Turing test.

[Deigh, 2019]
Blockchain-Structured Programming  WEB  PDF
Teedy Deigh.
Overload, 27(150):24, April 2019.
Coins are a wedge-shaped piece used for some purpose. Teedy Deigh shares her angle on the technology underpinning crypto-currencies.

[Deigh, 2020]
A Day in the Life of a Full-Stack Developer  WEB  PDF
Teedy Deigh.
Overload, 28(156):31-32, April 2020.
Many roles claim to be full stack. Teedy Deigh shares a day in the life of a full stack developer.

[Deigh, 2021]
<script>  WEB  PDF
Teedy Deigh.
Overload, 29(162):24, April 2021.
"Now I will believe that there are unicorns." Teedy Deigh loses the plot a little.

[Deigh, 2022]
The Vector Refactored  WEB  PDF
Teedy Deigh.
Overload, 30(168):15-16, April 2022.
Finding the right level of abstraction can be challenging. Teedy Deigh razes the level of abstraction.

[Deigh, 2023]
Meta Verse  WEB  PDF
Teedy Deigh.
Overload, 31(174):16, April 2023.
What’s life like in cyberspace? Teedy Deigh turns on, jacks in, and checks out the immersive experience.

[Deigh, 2024]
Judgment Day  WEB  PDF
Teedy Deigh.
Overload, 32(180):27-28, April 2024.
What if AI takes your job? Teedy Deigh finds out.

[Demin, 2012]
A Practical Introduction to Erlang  WEB  PDF
Alexander Demin.
Overload, 20(107):24-28, February 2012.
The future of massively parallel hardware will need good language support. Alexander Demin takes a look at an unexpected approach.

[Derrick, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Derrick, 1996]
Real world patterns  PDF
Keith Derrick.
Overload, 4(14):7-9, June 1996.
Software Development in C++

[Derrick, 1997]
Caught in the pattern web  WEB
Keith Derrick.
Overload, 5(17-18):, January 1997.

[Deák, 2016]
Attacking Licensing Problems with C++  WEB  PDF
Deák Ferenc.
Overload, 24(135):20-31, October 2016.
Software licenses are often crackable. Deák Ferenc presents a technique for tackling this problem.

[Deák, 2017]
Contractual Loopholes  WEB  PDF
Deák Ferenc.
Overload, 25(138):16-19, April 2017.
Compilers can optimise away functions you may want to time. Deák Ferenc explores ways to stop this happening.

[Deák, 2017]
Open Source - And Still Deceiving Programmers  WEB  PDF
Deák Ferenc.
Overload, 25(141):18-23, October 2017.
Deák Ferenc walks through the ELF format to avoid malicious code injection.

[Deák, 2017]
Letters to the Editor  WEB  PDF
Silas S. Brown, Deák Ferenc, Frances Buontempo.
Overload, 25(141):4, October 2017.
Two letters and their replies.

[Deák, 2018]
Practical Cryptographical Theory for Programmers  WEB  PDF
Deák Ferenc.
Overload, 26(144):21-27, April 2018.
Cryptography is a daunting subject. Deák Ferenc helps you get started.

[Deák, 2018]
miso: Micro Signal/Slot Implementation  WEB  PDF
Deák Ferenc.
Overload, 26(146):8-13, August 2018.
The Observer pattern has many existing implementations. Deák Ferenc presents a new implementation using modern C++ techniques.

[Deák, 2019]
A Small Universe  WEB  PDF
Deák Ferenc.
Overload, 27(149):8-22, February 2019.
Writing a programming language is a hot topic. Deák Ferenc shows us how he wrote a compiler for bytecode callable from C++.

[Deák, 2020]
The Edge of C++  WEB  PDF
Deák Ferenc.
Overload, 28(159):24-34, October 2020.
Everything has limits. Deák Ferenc explores the bounds of various C++ constructs.

[Deák, 2021]
The Sea of C You Don’t Want to See  WEB  PDF
Deák Ferenc.
Overload, 29(163):22-24, June 2021.
Last issue included a script. Deák Ferenc plays with the paradigm and dives into (a) deep sea (deap C).

[Dorrans, 1995]
editor << letters;  PDF
Barry Dorrans.
Overload, 3(9):34, August 1995.

[Doumler, 2022]
ACCU 2022 Trip Reports  WEB  PDF
Phil Nash, Dom Davis, Hannah Dee, Timur Doumler.
Overload, 30(169):10-15, June 2022.
The ACCU conference returned in hybrid mode this year. Several writers share their experiences.

[Drakeford, 2023]
Use SIMD: Save The Planet  WEB  PDF
Andrew Drakeford.
Overload, 31(178):6-11, December 2023.
Writing efficient code is challenging but worthwhile. Andrew Drakeford demonstrates how SIMD (Single Instruction Multiple Data) can reduce your carbon footprint.

[Durbin, 1996]
More on Java  PDF
Dave Durbin.
Overload, 4(14):9-12, June 1996.
Software Development in C++

[Easterbrook, 2006]
Comments Considered Evil  WEB  PDF
Mark Easterbrook.
Overload, 14(73):, June 2006.
We are taught that adding comments to code is a good thing and adds value. In practice this value is seldom, if ever, realised. Mark Easterbrook makes the case for a better way.

[Egan, 2012]
A DSEL for Addressing the Problems Posed by Parallel Architectures  WEB  PDF
Jason McGuiness, Colin Egan.
Overload, 20(111):13-18, October 2012.
Programming parallel algorithms correctly is hard. Jason McGuiness and Colin Egan demonstrate how a C++ DESEL can make it simpler.

[Eisenecker, 1995]
Multiple inheritance in C++ - part I  PDF
Ulrich W. Eisenecker.
Overload, 3(7):28-32, April 1995.

[Eisenecker, 1995]
Multiple inheritance in C++ - part II  PDF
Ulrich W. Eisenecker.
Overload, 3(9):24-27, August 1995.

[Eisenecker, 1995]
Multiple inheritance in C++ - part III  PDF
Ulrich W. Eisenecker.
Overload, 3(10):5-8, October 1995.
Software Development in C++

[Eisenecker, 1999]
Polymorphism In Object-Oriented Languages  WEB
Ulrich W. Eisenecker.
Overload, 7(32):, June 1999.

[Eke, 1999]
My Pet Project - Monopoly  WEB
Nigel Eke.
Overload, 7(34):, December 1999.

[Eke, 2000]
My Pet Project Monopoly 2  WEB
Nigel Eke.
Overload, 8(35):, February 2000.

[Eke, 2000]
The Pet Project - Monopoly (Part 3)  WEB
Nigel Eke.
Overload, 8(36):, April 2000.

[Eke, 2000]
The Pet Project (part 4)  WEB
Nigel Eke.
Overload, 8(37):, June 2000.

[Eke, 2007]
Programming - Abstraction by Design  WEB  PDF
Nigel Eke.
Overload, 15(77):, February 2007.
Nigel Eke acts as a guide to aspect oriented programming using AspectJ as an example.

[Eke, 2010]
The Predicate Student: A Game of Six Integers  WEB  PDF
Nigel Eke.
Overload, 18(96):, April 2010.
How easily can you solve puzzles? Nigel Eke applies some logic.

[Fabijanic, 2008]
DynamicAny, Part I  WEB  PDF
Aleksandar Fabijanic.
Overload, 16(86):, August 2008.
Alex Fabijanic presents a class hierarchy providing dynamic typing in standard C++.

[Fabijanic, 2008]
DynamicAny (Part 2)  WEB  PDF
Aleksandar Fabijanic.
Overload, 16(87):, October 2008.
Alex Fabijanic uncovers the internals of DynamicAny with some performance and size tests.

[Fabijanic, 2013]
Dynamic C++, Part 1  WEB  PDF
Alex Fabijanic.
Overload, 21(115):21-27, June 2013.
Static and dynamic languages have different trade-off. Alex Fabijanic attempts to get the best of both worlds.

[Fabijanic, 2013]
Dynamic C++ (Part 2)  WEB  PDF
Alex Fabijanic.
Overload, 21(116):16-20, August 2013.
Previously we saw how to use some simple dynamic features in C++. Alex Fabijanic and Richard Saunders explore more powerful dynamic tools.

[Fagg, 1994]
Microsoft Visual C++ V1.5 (16bit)  WEB
Adrian Fagg.
Overload, 2(5):12-14, September 1994.

[Fagg, 1994]
Borland C++ V4.0  WEB
Adrian Fagg.
Overload, 2(5):14-15, September 1994.

[Fagg, 1994]
Letters  WEB
Mike Toms, Adrian Fagg.
Overload, 2(5):21, September 1994.

[Fagg, 1997]
Using objects for background tasks (3)  WEB
Adrian Fagg.
Overload, 5(17-18):, January 1997.
See also corrections in Overload 19, p.30

[Fagg, 1998]
A Delphic Experience  WEB
Adrian Fagg.
Overload, 6(29):, December 1998.

[Fagg, 1999]
An Eventful Story  WEB
Adrian Fagg.
Overload, 7(30):, February 1999.

[Fahller, 2010]
Making String ReTRIEval Fast  WEB  PDF
Björn Fahller.
Overload, 18(99):17-25, October 2010.
Sometimes you really do have to optimize your code. Björn Fahller looks at a string lookup data structure.

[Fahller, 2012]
What’s a Good Date?  WEB  PDF
Björn Fahller.
Overload, 20(109):6-9, June 2012.
Implementing a data type seems simple at first glance. Björn Fahller investigates why you might choose a representation.

[Fahller, 2015]
Making a Tool of Deception  WEB  PDF
Björn Fahller.
Overload, 23(125):7-9, February 2015.
Is it possible to use modern C++ to make mocking easy? Björn Fahller introduces Trompeloeil, a header-only mocking framework for C++14.

[Fedotov, 2004]
An Experience Report on Implementing a Custom Agile Methodology on a C++/Python Project  WEB  PDF
Giovanni Asproni, Alexander Fedotov.
Overload, 12(64):, December 2004.

[Fertig, 2017]
About the C++ Core Guidelines  WEB  PDF
Andreas Fertig.
Overload, 25(140):25-27, August 2017.
Andreas Fertig shows us the C++ core guidelines.

[Fertig, 2022]
C++20 Benefits: Consistency With Ranges  WEB  PDF
Andreas Fertig.
Overload, 30(167):18-19, February 2022.
Where do you begin when walking over a container in C++? Andreas Fertig shows how C++20 Ranges simplify this.

[Fertig, 2022]
C++20: A Coroutine Based Stream Parser  WEB  PDF
Andreas Fertig.
Overload, 30(168):6-8, April 2022.
Stream parsing code can be very complicated. Andreas Fertig uses coroutines to make stream parsing code clearer.

[Fertig, 2022]
The Power of Ref-qualifiers  WEB  PDF
Andreas Fertig.
Overload, 30(171):7-8, October 2022.
Ref-qualifiers are frequently overlooked. Andreas Fertig reminds us why they are useful.

[Fertig, 2023]
C++20 Concepts: Testing Constrained Functions  WEB  PDF
Andreas Fertig.
Overload, 31(174):7-9, April 2023.
Concepts and the requires clause allow us to put constraints on functions or classes and other template constructs. Andreas Fertig gives a worked example including how to test the constraints.

[Fertig, 2023]
Why You Should Only Rarely Use std::move  WEB  PDF
Andreas Fertig.
Overload, 31(175):17-18, June 2023.
std::move can allow the efficient transfer of resources from object to to object. Andreas Fertig reminds us that using std::move inappropriately can make code less efficient.

[Fertig, 2023]
C++20 Dynamic Allocations at Compile-time  WEB  PDF
Andreas Fertig.
Overload, 31(176):20-23, August 2023.
People often say constexpr all the things. Andreas Fertig shows where we can use dynamic memory at compile time.

[Fertig, 2024]
C++20 Concepts Applied – Safe Bitmasks Using Scoped Enums  WEB  PDF
Andreas Fertig.
Overload, 32(179):7-8, February 2024.
It can be hard to follow code using enable_if. Andreas Fertig gives a practical example where C++20’s concepts can be used instead.

[Field, 1998]
Controlling access to objects by using private interfaces  WEB
Paul Field.
Overload, 6(28):, October 1998.

[Firth, 1995]
editor << letters;  PDF
Bob Firth.
Overload, 3(7):38-40, April 1995.

[Fishburne, 2006]
Comments Considered Good  WEB  PDF
William Fishburne.
Overload, 14(74):, August 2006.
In our last issue, we offered the case against comments; in this issue, William Fishbourne responds in defence. He argues that it is not the practice of commenting that it is evil, it is the thoughtless commenter.

[Fishburne, 2006]
Letters  WEB  PDF
Colin Paul Gloster, William Fishburne, Seweryn Habdank-Wojewódzki, Rachel Davies.
Overload, 14(75):, October 2006.

[Fletcher, 2017]
Implementing Type-Classes as OCaml Modules  WEB  PDF
Shayne Fletcher.
Overload, 25(142):11-13, December 2017.
Type classes achieve overloading in functional paradigms. Shayne Fletcher implements some as OCaml modules.

[Floyd, 2012]
Valgrind Part 1 - Introduction  WEB  PDF
Paul Floyd.
Overload, 20(108):14-15, April 2012.
Good analysis tools can really help track down problems. Paul Floyd investigates the facilities from a suite of tools.

[Floyd, 2012]
Valgrind Part 2 - Basic memcheck  WEB  PDF
Paul Floyd.
Overload, 20(109):24-29, June 2012.
Learning how to use our tools well is a vital skill. Paul Floyd shows us how to check for memory problems.

[Floyd, 2012]
Valgrind Part 3 Advanced memcheck  WEB  PDF
Paul Floyd.
Overload, 20(110):4-7, August 2012.
Valgrind provides several mechanisms to locate memory problems in your code. Paul Floyd shows us how to use them.

[Floyd, 2012]
Valgrind Part 4  WEB  PDF
Paul Floyd.
Overload, 20(111):4-7, October 2012.
Cachegrind and Callgrind When your application is slow, you need a profiler. Paul Floyd shows us how callgrind and cachegrind can help.

[Floyd, 2012]
Valgrind Part 5 - Massif  WEB  PDF
Paul Floyd.
Overload, 20(112):20-24, December 2012.
Poor performance can be caused by memory usage. Paul Floyd introduces Valgrind’s heap memory profiling tool Massif.

[Floyd, 2013]
Valgrind Part 6 - Helgrind and DRD  WEB  PDF
Paul Floyd.
Overload, 21(114):6-9, April 2013.
Debugging multi-threaded code is hard. Paul Floyd uses Helgrind and DRD to find deadlocks and race conditions.

[Floyd, 2018]
No News is Good News  WEB  PDF
Paul Floyd.
Overload, 26(144):4-7, April 2018.
Using ‘new’ without care can be slow. Paul Floyd uses Godbolt’s compiler explorer to see what happens when you do.

[Floyd, 2023]
Floating-Point Comparison  WEB  PDF
Paul Floyd.
Overload, 31(173):4-6, February 2023.
Comparing floating point values can be difficult. Paul Floyd shows how you should perform floating-point comparisons (and how not to do it).

[Floyd, 2023]
Drawing a Line Under Aligned Memory  WEB  PDF
Paul Floyd.
Overload, 31(174):4-6, April 2023.
When we allocate memory we often forget about alignment. Paul Floyd reminds about various aligned allocation functions.

[Floyd, 2023]
Dollar Origins  WEB  PDF
Paul Floyd.
Overload, 31(178):12-13, December 2023.
Using tools from non-standard locations can be challenging. Paul Floyd shows how $ORIGIN can help.

[Foyle, 2010]
Bug Elimination - Defensive Agile Ruses  WEB  PDF
Walter Foyle.
Overload, 18(96):, April 2010.
Everyone thinks they understand bug economics. Walter Foyle looks again.

[Frogley, 2001]
An introduction to C++ Traits  WEB
Thaddaeus Frogley.
Overload, 9(43):, June 2001.

[Frogley, 2004]
More is Less  WEB  PDF
Thaddaeus Frogley.
Overload, 12(59):, February 2004.

[Frogley, 2005]
C Abuse  WEB  PDF
Thaddaeus Frogley.
Overload, 13(65):, February 2005.

[Frogley, 2015]
Letter to the Editor  WEB  PDF
Lion Gutjahr, Thaddaeus Frogley.
Overload, 23(125):22-24, February 2015.
With response.

[Frogley, 2016]
Implementing SNAAAKE  WEB  PDF
Thaddaeus Frogley.
Overload, 24(134):11-13, August 2016.
Almost everyone knows the game Snake! Thaddaeus Frogley shares a diary of how his implementation grew over time.

[Frolov, 2015]
Resource Management with Explicit Template Specializations  WEB  PDF
Pavel Frolov.
Overload, 23(126):18-22, April 2015.
RAII is a useful idiom. Pavel Frolov presents a powerful extension using explicit template specialization.

[Frost, 1993]
Rumbaugh's OMT - The method behind C++ Designer  WEB
Stuart Frost.
Overload, 1(1):, April 1993.

[Gibson, 2006]
How Do Those Funky Placeholders Work?  WEB  PDF
Chris Gibson.
Overload, 14(73):, June 2006.
The current C++ standard function binders are notoriously difficult to use. Chris Gibson exposes the secret the Boost alternative, which is so much better it seems like magic.

[Gilb, 2005]
Software Project Management: Adding Stakeholder Metrics to Agile Projects  WEB  PDF
Tom Gilb.
Overload, 13(68):, August 2005.
Agile methods need to include stakeholder metrics in order to ensure that projects focus better on the critical requirements, and that projects are better able to measure their achievements, and to adapt to feedback. This paper presents a short, simple defined process for evolutionary project management (Evo), and discusses its key features.

[Gilb, 2005]
How to Quantify Quality: Finding Scales of Measure  WEB  PDF
Tom Gilb.
Overload, 13(70):, December 2005.

[Gilb, 2008]
Quality Manifesto  WEB  PDF
Tom Gilb.
Overload, 16(85):, June 2008.
Software quality is a systems engineering job. Tom Gilb explains the importance of knowing where we're going.

[Gilson, 2007]
The Policy Bridge Design Pattern  WEB  PDF
Matthieu Gilson.
Overload, 15(79):, June 2007.
Matthieu Gilson offers some thoughts on using a policy based mechanism to build efficient classes from loosely coupled components.

[Glasborow, 1997]
editor << letters;  PDF
John Merrells, The Harpist, George Wendle, Francis Glasborow, Chris Southern.
Overload, 5(22):, October 1997.

[Glassborow, 1993]
Some Thoughts on Writing Classes  WEB
Francis Glassborow.
Overload, 1(1):, April 1993.

[Glassborow, 1993]
Some Thoughts on the Use of New  WEB
Francis Glassborow.
Overload, 1(2):, June 1993.

[Glassborow, 1993]
Welcome to ECUG  WEB
Francis Glassborow.
Overload, 1(3):, August 1993.

[Glassborow, 1993]
Minimising Stack Use and Other Uses of new  WEB
Francis Glassborow.
Overload, 1(3):, August 1993.

[Glassborow, 1993]
Uses of Classes with only Private and Protected Constructors  WEB
Francis Glassborow.
Overload, 1(3):, August 1993.

[Glassborow, 1994]
new & delete  WEB
Francis Glassborow.
Overload, 2(4):, February 1994.

[Glassborow, 1994]
Operators for Arithmetic Classes  WEB
Francis Glassborow.
Overload, 2(5):1-4, September 1994.

[Glassborow, 1995]
Friends - who needs them?  WEB
Francis Glassborow.
Overload, 3(6):, March 1995.

[Glassborow, 1995]
C++ compilers for MSDOS / MSWindows  WEB
Francis Glassborow.
Overload, 3(6):, March 1995.

[Glassborow, 1995]
Blindspots  WEB
Francis Glassborow.
Overload, 3(6):, March 1995.

[Glassborow, 1995]
C++ compilers - mainly for OS/2  PDF
Francis Glassborow.
Overload, 3(7):4-7, April 1995.

[Glassborow, 1995]
Related addendum  PDF
Francis Glassborow.
Overload, 3(7):28, April 1995.

[Glassborow, 1995]
Circle & Ellipse - Creating Polymorphic Objects  PDF
Francis Glassborow.
Overload, 3(8):27-29, June 1995.

[Glassborow, 1995]
A Better C?  PDF
Francis Glassborow.
Overload, 3(9):3-5, August 1995.

[Glassborow, 1995]
Diary of an Observer  PDF
Francis Glassborow.
Overload, 3(9):15-17, August 1995.
The Draft International C++ Standard

[Glassborow, 1995]
Pausing for thought  PDF
Francis Glassborow.
Overload, 3(10):24-25, October 1995.
C++ Techniques

[Glassborow, 1995]
Some thoughts on linkage  PDF
Francis Glassborow.
Overload, 3(11):19-21, December 1995.
The Draft International C++ Standard

[Glassborow, 1995]
Date with a Design  PDF
Francis Glassborow.
Overload, 3(11):40-41, December 1995.
++puzzle;

[Glassborow, 1996]
We have a problem  PDF
Francis Glassborow.
Overload, 4(12):3-7, February 1996.
Guest editorial by Francis Glassborow

[Glassborow, 1996]
Compiler updates  PDF
Francis Glassborow.
Overload, 4(12):9-11, February 1996.
Software Development in C++

[Glassborow, 1996]
Making a date  PDF
Francis Glassborow.
Overload, 4(12):34-36, February 1996.
++puzzle;

[Glassborow, 1996]
Those problems revisited  PDF
Francis Glassborow.
Overload, 4(13):6-9, April 1996.
Software Development in C++

[Glassborow, 1996]
Concerning values, left, right and converted  PDF
Francis Glassborow.
Overload, 4(14):3-6, June 1996.
Software Development in C++

[Glassborow, 1996]
Return from a member function  PDF
Francis Glassborow.
Overload, 4(14):16, June 1996.
C++ Techniques

[Glassborow, 1996]
Making string literals constant - a cautionary tale  PDF
Francis Glassborow.
Overload, 4(15):20-23, August 1996.
The Draft International C++ Standard

[Glassborow, 1996]
The return type of member functions  PDF
Francis Glassborow, Chris Southern, Klitos Kyriacou.
Overload, 4(15):29-33, August 1996.
C++ Techniques

[Glassborow, 1996]
Mixing Java & C++ Ruminations  PDF
Francis Glassborow.
Overload, 4(16):13-15, October 1996.
Software Development in C++

[Glassborow, 1996]
Why is the standard C++ library value based?  PDF
Francis Glassborow.
Overload, 4(16):18-19, October 1996.
C++ Techniques

[Glassborow, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Glassborow, 1997]
The uses and abuses of inheritence  WEB
Francis Glassborow.
Overload, 5(17-18):, January 1997.

[Glassborow, 1997]
The Problem of Self-Assignment  PDF
Francis Glassborow.
Overload, 5(19):8-9, April 1997.
Software Development in C++

[Glassborow, 1997]
editor << letters;  PDF
Francis Glassborow, Roger Lever.
Overload, 5(19):30-31, April 1997.

[Glassborow, 1997]
Further Thoughts on Inheritance for Reuse  PDF
Francis Glassborow.
Overload, 5(20):31-35, June 1997.
C++ Techniques

[Glassborow, 1997]
Getting the Best  PDF
Francis Glassborow.
Overload, 5(21):9-13, August 1997.
The Draft International C++ Standard

[Glassborow, 1997]
inline delegation  PDF
Francis Glassborow.
Overload, 5(21):21, August 1997.
Whiteboard

[Glassborow, 1997]
Using Algorithms-Sorting  PDF
Francis Glassborow.
Overload, 5(22):24-26, October 1997.

[Glassborow, 1997]
Candidates for inline  PDF
Francis Glassborow.
Overload, 5(23):9-12, December 1997.
Software Development in C++

[Glassborow, 1997]
The Casting Vote  PDF
Francis Glassborow.
Overload, 5(23):12-15, December 1997.
The Draft International C++ Standard

[Glassborow, 1997]
The Story of auto_ptr, A Cautionary Tale  PDF
Francis Glassborow.
Overload, 5(23):15-19, December 1997.
The Draft International C++ Standard

[Glassborow, 1998]
STL Algorithms: Finding  PDF
Francis Glassborow.
Overload, 6(24):18-22, February 1998.
C++ Techniques

[Glassborow, 1998]
(Almost) No Casting Vote, Standard’s Report  PDF
Francis Glassborow.
Overload, 6(25):, April 1998.
The Draft International C++ Standard

[Glassborow, 1998]
Exploring Patterns: Part 1  PDF
Francis Glassborow.
Overload, 6(26):13-18, June 1998.
Patterns in C++

[Glassborow, 1998]
Exploring Patterns Part 2  WEB  PDF
Francis Glassborow.
Overload, 6(27):, August 1998.

[Glassborow, 1998]
Exploring Patterns 3 - The Adapter  WEB
Francis Glassborow.
Overload, 6(28):, October 1998.

[Glassborow, 1998]
operator == ()  WEB
Francis Glassborow.
Overload, 6(29):, December 1998.

[Glassborow, 1998]
A Message from the ACCU Chair  WEB
Francis Glassborow.
Overload, 6(29):, December 1998.

[Glassborow, 1999]
Patterns - The Abstract Factory  WEB
Francis Glassborow.
Overload, 7(30):, February 1999.

[Glassborow, 1999]
Ruminations on Studying Design Patterns  WEB
Francis Glassborow.
Overload, 7(32):, June 1999.

[Glassborow, 1999]
Builder & Factory Method Patterns  WEB
Francis Glassborow.
Overload, 7(32):, June 1999.

[Glassborow, 1999]
Religious Issues  WEB
Francis Glassborow.
Overload, 7(33):, October 1999.

[Glassborow, 2000]
A Response to the C++ SIG Organiser  WEB
Francis Glassborow.
Overload, 8(36):, April 2000.

[Glassborow, 2001]
C++ Idioms: First Thoughts  WEB
Francis Glassborow.
Overload, 9(42):, April 2001.

[Glassborow, 2018]
C++ with Meta-classes?  WEB  PDF
Francis Glassborow.
Overload, 26(143):16-17, February 2018.
Meta-classes will allow us to detail class requirements. Francis Glassborow compares them to developments of C++ in the 1990s.

[Gloster, 2006]
Letters  WEB  PDF
Colin Paul Gloster, William Fishburne, Seweryn Habdank-Wojewódzki, Rachel Davies.
Overload, 14(75):, October 2006.

[Goldthwaite, 1998]
Static vs Member Functions  WEB
Lois Goldthwaite.
Overload, 6(29):, December 1998.

[Goldthwaite, 2000]
Programming with Interfaces in C++  WEB
Lois Goldthwaite.
Overload, 8(40):, December 2000.

[Goldthwaite, 2003]
C++rossword  WEB  PDF
Lois Goldthwaite.
Overload, 11(53):22, February 2003.

[Goldthwaite, 2005]
C++ Properties - a Library Solution  WEB  PDF
Lois Goldthwaite.
Overload, 13(65):, February 2005.

[Golodetz, 2007]
Functional Programming Using C++ Templates (Part 1)  WEB  PDF
Stuart Golodetz.
Overload, 15(81):, October 2007.
Template metaprogramming can initially seem baffling, but exploring its link to functional programming helps shed some light on things.

[Golodetz, 2008]
Watersheds and Waterfalls  WEB  PDF
Stuart Golodetz.
Overload, 16(83):, February 2008.
An introductory look at segmenting images into regions using a landscape analogy.

[Golodetz, 2008]
Watersheds and Waterfalls (Part 2)  WEB  PDF
Stuart Golodetz.
Overload, 16(84):, April 2008.
Stuart Golodetz continues his survey of algorithms for segmenting images into regions.

[Golodetz, 2008]
RSA Made Simple  WEB  PDF
Stuart Golodetz.
Overload, 16(85):, June 2008.
RSA is a common public key cryptography algorithm. Stuart Golodetz explains the mathematics behind it and shows us how to use it in Java.

[Golodetz, 2008]
Divide and Conquer: Partition Trees and Their Uses  WEB  PDF
Stuart Golodetz.
Overload, 16(86):, August 2008.
The world is a complex place. Stuart Golodetz introduces a powerful technique to describe it.

[Golodetz, 2008]
Seeing Things Differently  WEB  PDF
Stuart Golodetz.
Overload, 16(87):, October 2008.
The Multiple Material Marching Cubes (M3C) algorithm builds 3D models from 2D slices. Stuart Golodetz introduces it and provides a C++ implementation.

[Golodetz, 2008]
The Legion's Revolting!  WEB  PDF
Stuart Golodetz.
Overload, 16(88):, December 2008.
3D meshes can be too large to deal with efficiently. Stuart Golodetz applies some ancient discipline.

[Golodetz, 2009]
Through The Looking Glass  WEB  PDF
Stuart Golodetz.
Overload, 17(89):, February 2009.
What's happening in the next room? Stuart Golodetz has to find the door first!

[Golodetz, 2009]
If You Can't See Me, I Can't See You  WEB  PDF
Stuart Golodetz.
Overload, 17(90):, April 2009.
Knowing where the doors are is only the start. Stuart Golodetz works out what he can see through them.

[Golodetz, 2009]
I Think I'll Parse  WEB  PDF
Stuart Golodetz.
Overload, 17(92):, August 2009.
A parser is a fundamental tool in software development. Stuart Golodetz looks at how you might tackle writing one.

[Golodetz, 2010]
Simplifying the C++/Angelscript Binding Process  WEB  PDF
Stuart Golodetz.
Overload, 18(95):, February 2010.
Many systems provide a scripting language. Stuart Golodetz shows how to make it easier.

[Golodetz, 2013]
Automatic Navigation Mesh Generation in Configuration Space  WEB  PDF
Stuart Golodetz.
Overload, 21(117):22-27, October 2013.
Walkable 3D environments can be automatically navigated. Stuart Golodetz demonstrates how navigation meshes achieve this.

[Golodetz, 2013]
Object-Environment Collision Detection using Onion BSPs  WEB  PDF
Stuart Golodetz.
Overload, 21(118):10-15, December 2013.
Previously we considered 3D navigation. Stuart Golodetz demonstrates how to detect collisions using onion binary space partitioning.

[Goodliffe, 2000]
An Application of Pointers to Members  WEB
Pete Goodliffe.
Overload, 8(36):, April 2000.

[Goodliffe, 2000]
A framework for object serialization in C++  WEB
Pete Goodliffe.
Overload, 8(37):, June 2000.

[Goodliffe, 2000]
Experiences of Implementing the Observer Design Pattern (Part 1)  WEB
Pete Goodliffe.
Overload, 8(37):, June 2000.

[Goodliffe, 2000]
Experiences of Implementing the Observer Design Pattern (Part 2)  WEB
Pete Goodliffe.
Overload, 8(38):, August 2000.

[Goodliffe, 2001]
Experiences of Implementing the Observer Design Pattern (Part 3)  WEB
Pete Goodliffe.
Overload, 9(41):, February 2001.

[Goodliffe, 2001]
Techniques for Debugging in C++  WEB
Pete Goodliffe.
Overload, 9(46):, December 2001.

[Goodliffe, 2002]
STL-style Circular Buffers By Example  WEB  PDF
Pete Goodliffe.
Overload, 10(50):, August 2002.

[Goodliffe, 2002]
STL-style Circular Buffers By Example, Part Two  WEB  PDF
Pete Goodliffe.
Overload, 10(51):, October 2002.

[Goodliffe, 2003]
Letters to the Editor(s)  WEB  PDF
Pete Goodliffe.
Overload, 11(57):, October 2003.

[Goodliffe, 2005]
A Technique for Register Access in C++  WEB  PDF
Pete Goodliffe.
Overload, 13(68):, August 2005.
This article discusses a C++ scheme for accessing hardware registers in an optimal way.

[Goodliffe, 2009]
Creating a Framework for the iPhone  WEB  PDF
Pete Goodliffe.
Overload, 17(94):7-10, December 2009.
Apple’s iPhone SDK doesn’t allow you to create a Framework. Pete Goodliffe explains how to build one manually.

[Gosai, 2020]
Agile Manchester 2020: Testers Edition  WEB  PDF
Jit Gosai.
Overload, 28(158):22-23, August 2020.
Many tech conferences are still going ahead online. Jit Gosai reports on Agile Manchester from a tester’s perspective.

[Gough, 2003]
Choosing Template Parameters  WEB  PDF
Raoul Gough.
Overload, 11(58):, December 2003.

[Gough, 2007]
Letters to the Editor  WEB  PDF
Raoul Gough, Hubert Matthews, Peter Sommerlad.
Overload, 15(78):, April 2007.

[Gradman, 2001]
Introduction to the Database Template Library  WEB
Corwin Joy, Michael Gradman.
Overload, 9(43):, June 2001.

[Grenyer, 2004]
All Heap No Leaks  WEB  PDF
Paul Grenyer.
Overload, 12(60):, April 2004.

[Grenyer, 2004]
ACCU Mentored Developers XML Project  WEB  PDF
Paul Grenyer, Jez Higgins.
Overload, 12(62):, August 2004.

[Grenyer, 2005]
Multiple Streams Going Nowhere  WEB  PDF
Paul Grenyer.
Overload, 13(65):, February 2005.
Source: C++ output streams ostream

[Grenyer, 2005]
Digging a Ditch  WEB  PDF
Paul Grenyer.
Overload, 13(66):, April 2005.

[Grenyer, 2007]
Continuous Integration with CruiseControl.Net  WEB  PDF
Paul Grenyer.
Overload, 15(79):, June 2007.
Is CC any good? How could it be better? Did it make a real difference where it was installed? Should we all give it a go?

[Grenyer, 2007]
Letter to the Editor  WEB  PDF
Paul Grenyer.
Overload, 15(80):, August 2007.

[Grenyer, 2008]
Testing Visiting Files and Directories in C#  WEB  PDF
Paul Grenyer.
Overload, 16(83):, February 2008.
Testing code that accesses the file system is not straightforward. Paul Grenyer looks at what is involved.

[Grenyer, 2008]
Model View Controller with Java Swing  WEB  PDF
Paul Grenyer.
Overload, 16(88):, December 2008.
It's recommended to keep user interface and data model separate. Paul Grenyer looks a common solution.

[Grenyer, 2009]
Boiler Plating Database Resource Cleanup (Part 2)  WEB  PDF
Paul Grenyer.
Overload, 17(91):, June 2009.
Timely disposal of resources is important. Paul Grenyer applies this to database access in Java.

[Grenyer, 2011]
An Introduction to Test Driven Development  WEB  PDF
Paul Grenyer.
Overload, 19(104):13-20, August 2011.
TDD is too often thought to be all about Unit Tests. Paul Grenyer works through an example to show the bigger picture.

[Grenyer, 2011]
RAII is not Garbage  WEB  PDF
Paul Grenyer.
Overload, 19(106):14-15, December 2011.
Many think that Garbage Collection frees the programmer from cleanup tasks. Paul Grenyer compares and contrasts it with a classic C++ idiom.

[Grenyer, 2017]
The Last Word in Patterns  WEB  PDF
Paul Grenyer.
Overload, 25(142):10, December 2017.
What can you do in a single transaction in a database? Paul Grenyer writes us his Single CrUD pattern.

[Griffiths, 1995]
No such thing as a free lunch  PDF
Alan Griffiths.
Overload, 3(7):3-10, April 1995.

[Griffiths, 1995]
When is an “is a” not an “is a”?  PDF
Alan Griffiths.
Overload, 3(10):11-13, October 1995.
Software Development in C++

[Griffiths, 1996]
Notes on Microsoft Visual C++ V4.0  PDF
Alan Griffiths.
Overload, 4(12):11-13, February 1996.
Software Development in C++

[Griffiths, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Griffiths, 1997]
Editorial  PDF
Alan Griffiths.
Overload, 5(19):3, April 1997.

[Griffiths, 1997]
They pursued it with forks and hope.  PDF
Alan Griffiths.
Overload, 5(21):32-34, August 1997.
News, Views, & Reviews

[Griffiths, 1997]
Premature Optimisation  PDF
Alan Griffiths.
Overload, 5(22):21-23, October 1997.

[Griffiths, 1998]
Almost a Pattern  WEB  PDF
Alan Griffiths.
Overload, 6(27):, August 1998.

[Griffiths, 1999]
Goodbye Overload  WEB
Alan Griffiths.
Overload, 7(31):, April 1999.

[Griffiths, 1999]
Fitting in with multiple frameworks in C++ and Java  WEB
Alan Griffiths.
Overload, 7(31):, April 1999.

[Griffiths, 1999]
The EPOC C++ API  WEB
Alan Griffiths.
Overload, 7(32):, June 1999.

[Griffiths, 1999]
Uncounted pointers in C++  WEB
Alan Griffiths.
Overload, 7(34):, December 1999.

[Griffiths, 2000]
editorial  WEB
Alan Griffiths.
Overload, 8(36):, April 2000.

[Griffiths, 2000]
Interpreting "Supporting the 'Cheshire Cat' Idiom"  WEB
Alan Griffiths, Allan Newton.
Overload, 8(38):, August 2000.

[Griffiths, 2000]
Here be Dragons  WEB
Alan Griffiths.
Overload, 8(40):, December 2000.

[Griffiths, 2001]
C++ Standards - The "swap" Problem  WEB
Alan Griffiths.
Overload, 9(41):, February 2001.

[Griffiths, 2001]
Compile Time Indirection - An Unusual Template Technique  WEB
Alan Griffiths.
Overload, 9(42):, April 2001.

[Griffiths, 2001]
Using Version Control  WEB
Alan Griffiths.
Overload, 9(44):, August 2001.

[Griffiths, 2002]
Exceptional Java  WEB  PDF
Alan Griffiths.
Overload, 10(48):, April 2002.

[Griffiths, 2002]
More Exceptional Java  WEB  PDF
Alan Griffiths.
Overload, 10(49):, June 2002.

[Griffiths, 2002]
Execute Around Method and Proxy Goulash  WEB  PDF
Alan Griffiths.
Overload, 10(50):, August 2002.

[Griffiths, 2002]
Mutate? or Create?  WEB  PDF
Alan Griffiths.
Overload, 10(51):, October 2002.

[Griffiths, 2003]
Editorial  WEB  PDF
Alan Griffiths.
Overload, 11(55):, June 2003.

[Griffiths, 2003]
Editorial  WEB  PDF
Alan Griffiths.
Overload, 11(56):, August 2003.

[Griffiths, 2003]
Three Phantastic Tales  WEB  PDF
Alan Griffiths.
Overload, 11(56):, August 2003.

[Griffiths, 2003]
Editorial  WEB  PDF
Alan Griffiths.
Overload, 11(57):, October 2003.

[Griffiths, 2003]
Chaos Theory  WEB  PDF
Alan Griffiths.
Overload, 11(57):, October 2003.

[Griffiths, 2003]
Editorial  WEB  PDF
Alan Griffiths.
Overload, 11(58):, December 2003.

[Griffiths, 2004]
Heretical Java #1  WEB  PDF
Alan Griffiths.
Overload, 12(59):, February 2004.

[Griffiths, 2004]
Achieving FitNesse in C++  WEB  PDF
Alan Griffiths.
Overload, 12(60):, April 2004.

[Griffiths, 2004]
Editorial: New Things Under the Sun  WEB  PDF
Alan Griffiths.
Overload, 12(61):, June 2004.

[Griffiths, 2004]
When is a "Pattern" not a "Pattern"?  WEB  PDF
Alan Griffiths.
Overload, 12(61):, June 2004.

[Griffiths, 2004]
Editorial: The Value of What You Know  WEB  PDF
Alan Griffiths.
Overload, 12(62):, August 2004.

[Griffiths, 2004]
Editorial: A Glimpse Behind the Scenes  WEB  PDF
Alan Griffiths.
Overload, 12(64):, December 2004.

[Griffiths, 2005]
Editorial: "They" Have Their Reasons  WEB  PDF
Alan Griffiths.
Overload, 13(65):, February 2005.

[Griffiths, 2005]
Letters: Encapsulate Context  WEB  PDF
Alan Griffiths.
Overload, 13(65):, February 2005.

[Griffiths, 2005]
Separating Interface and Implementation in C++  WEB  PDF
Alan Griffiths, Mark Radford.
Overload, 13(66):, April 2005.

[Griffiths, 2005]
Editorial: Does all this help make better software?  WEB  PDF
Alan Griffiths.
Overload, 13(67):, June 2005.

[Griffiths, 2005]
"The C++ Community" - Are We Divided by a Common Language?  WEB  PDF
Alan Griffiths.
Overload, 13(67):, June 2005.

[Griffiths, 2005]
Editorial: Size Does Matter  WEB  PDF
Alan Griffiths.
Overload, 13(68):, August 2005.
The way that one goes about developing and delivering a software project depends critically on the scale of the project. Discuss.

[Griffiths, 2005]
Editorial: Can We Change For The Better?  WEB  PDF
Alan Griffiths.
Overload, 13(69):, October 2005.

[Griffiths, 2005]
Editorial: The "Safe C++ Standard Library"  WEB  PDF
Alan Griffiths.
Overload, 13(70):, December 2005.

[Griffiths, 2005]
"Here be Dragons"  WEB  PDF
Alan Griffiths.
Overload, 13(70):, December 2005.

[Griffiths, 2006]
Editorial: Keeping Up Standards  WEB  PDF
Alan Griffiths.
Overload, 14(71):4-6, February 2006.

[Griffiths, 2006]
Editorial: Doing What You Can  WEB  PDF
Alan Griffiths.
Overload, 14(72):, April 2006.

[Griffiths, 2006]
To Grin Again  WEB  PDF
Alan Griffiths.
Overload, 14(72):, April 2006.

[Griffiths, 2006]
C++ Best Practice - Designing Header Files  WEB  PDF
Alan Griffiths.
Overload, 14(72):, April 2006.

[Griffiths, 2006]
Editorial  WEB  PDF
Alan Griffiths.
Overload, 14(73):, June 2006.

[Griffiths, 2006]
Take a Step Forward  WEB  PDF
Alan Griffiths.
Overload, 14(74):, August 2006.
Editorial

[Griffiths, 2006]
Life in the Fast Lane  WEB  PDF
Alan Griffiths.
Overload, 14(75):, October 2006.
The ISO Fast-Track is paved with good intentions, but does it lead where we want to be?

[Griffiths, 2006]
How Overload Comes to You  WEB  PDF
Alan Griffiths.
Overload, 14(76):, December 2006.
You look forward to Overload arriving in the mail every couple of months. This time it came very close to not arriving at all.

[Griffiths, 2007]
The Power of Inertia  WEB  PDF
Alan Griffiths.
Overload, 15(77):, February 2007.

[Griffiths, 2007]
New Tricks for an Old Dog  WEB  PDF
Alan Griffiths.
Overload, 15(78):, April 2007.

[Griffiths, 2007]
Rip It Up and Start Again  WEB  PDF
Alan Griffiths.
Overload, 15(79):, June 2007.

[Griffiths, 2007]
Consensus  WEB  PDF
Alan Griffiths.
Overload, 15(80):, August 2007.
It should be obvious that the process of agreeing effective standards must be dependant on attaining consensus.

[Griffiths, 2007]
The Essence of Success  WEB  PDF
Alan Griffiths.
Overload, 15(82):, December 2007.

[Griffiths, 2008]
After Four Years  WEB  PDF
Alan Griffiths.
Overload, 16(84):, April 2008.
After four years as editor of Overload it is time for a change.

[Griffiths, 2009]
Software Development in the 21st Century  WEB  PDF
Alan Griffiths, Marc Allan.
Overload, 17(90):, April 2009.
What's the future of software development? Alan Griffiths and Marc Allan have a timely look at recent experiences.

[Griffiths, 2010]
Renovating a Legacy C++ Project  WEB  PDF
Alan Griffiths.
Overload, 18(98):12-15, August 2010.
Over time projects tend to become hard to maintain. Alan Griffiths describes how one was improved.

[Griffiths, 2011]
Moving with the Times  WEB  PDF
Alan Griffiths.
Overload, 19(106):4-5, December 2011.
The ACCU is primarily a way for programmers to communicate. Alan Griffiths looks at its past, and speculates on its future.

[Griffiths, 2014]
Designing Observers in C++11  WEB  PDF
Alan Griffiths.
Overload, 22(124):4-5, December 2014.
The observer pattern is over two decades old. Alan Griffiths fits a venerable design pattern into a contemporary context.

[Griffiths, 2015]
Building and Running Software on an Ubuntu Phone  WEB  PDF
Alan Griffiths.
Overload, 23(129):9-11, October 2015.
Many of us has a smartphone. Alan Griffiths shows us how to hack an Ubuntu Touch phone.

[Griffiths, 2016]
The MirAL Story  WEB  PDF
Alan Griffiths.
Overload, 24(136):4-5, December 2016.
The X-Windows system is all-pervasive but struggles with security and performance graphics. Alan Griffiths introduces Mir Abstraction Layer to deal with these issues.

[Griffiths, 2020]
A Secure Environment for Running Apps?  WEB  PDF
Alan Griffiths.
Overload, 28(155):18-19, February 2020.
Getting apps from the app store is easy. Alan Griffiths considers this from a security perspective.

[Griffiths, 2020]
An Example Confined User Shell  WEB  PDF
Alan Griffiths.
Overload, 28(158):20-21, August 2020.
Snap confinement is not just for individual apps but can be applied to a complete GUI environment. Alan Griffiths demonstrates with the Mircade shell.

[Grigoriev, 2015]
iterator_pair - A Simple and Useful Iterator Adapter  WEB  PDF
Vladimir Grigoriev.
Overload, 23(126):23-31, April 2015.
Can you form a new container from two others? Vladimir Grigoriev reminds us how to write an iterator.

[Grimm, 2020]
C++20: A Simple Math Module  WEB  PDF
Rainer Grimm.
Overload, 28(158):10-12, August 2020.
Modules are one big change introduced by C++20. Rainer Grimm describes how to build a mathematics module.

[Guest, 2004]
A Mini-project to Decode a Mini-language - Part One  WEB  PDF
Thomas Guest.
Overload, 12(63):, October 2004.

[Guest, 2004]
Mini-project to Decode A Mini-language - Part Two  WEB  PDF
Thomas Guest.
Overload, 12(64):, December 2004.

[Guest, 2005]
Metaprogramming is Your Friend  WEB  PDF
Thomas Guest.
Overload, 13(66):, April 2005.

[Guest, 2006]
Soft Documentation  WEB  PDF
Thomas Guest.
Overload, 14(71):7-12, February 2006.

[Guest, 2006]
The Case Against TODO  WEB  PDF
Thomas Guest.
Overload, 14(73):, June 2006.
TODO - a neat way to label work in progress or an easy way to disguise the flaws in a codebase?

[Guest, 2006]
From CVS to Subversion  WEB  PDF
Thomas Guest.
Overload, 14(75):, October 2006.
Thomas Guest reflects on migrating his organisation's version control system from CVS to Subversion.

[Guest, 2007]
He Sells Shell Scripts to Intersect Sets  WEB  PDF
Thomas Guest.
Overload, 15(80):, August 2007.
Graphical User Interfaces are in great demand but for some tasks there are better tools. Thomas Guest demonstrates the capabilities of command shells.

[Guest, 2016]
Python Streams vs Unix Pipes  WEB  PDF
Thomas Guest.
Overload, 24(136):20-24, December 2016.
Dealing with an infinite sequence requires some thought. Thomas Guest presents various ways to approach such a problem.

[Guest, 2009]
Code Rot  WEB  PDF
Tom Guest.
Overload, 17(92):, August 2009.
Maintaining code is vital to keep it working. Tom Guest explores what happens when you neglect it.

[Gutjahr, 2015]
Letter to the Editor  WEB  PDF
Lion Gutjahr, Thaddaeus Frogley.
Overload, 23(125):22-24, February 2015.
With response.

[Gutson, 2012]
Curiously Recursive Template Problems with Aspect Oriented Programming  WEB  PDF
Hugo Arregui, Carlos Castro, Daniel Gutson.
Overload, 20(109):20-23, June 2012.

[Gutson, 2014]
Minimal Overhead for Multiple Interfaces  WEB  PDF
Daniel Gutson, Pablo Oliva.
Overload, 22(121):14-16, June 2014.
Using multiple interfaces can slow things down. Daniel Gutson and Pablo Oliva present an alternative.

[Habdank-Wojewódzki, 2006]
The Kohonen Neural Network Library  WEB  PDF
Seweryn Habdank-Wojewódzki, Janusz Rybarski.
Overload, 14(74):, August 2006.
Seweryn Habdank-Wojewódzki and Janusz Rybarski present a C++ library for users of Kohonen Neural Networks.

[Habdank-Wojewódzki, 2006]
Letters  WEB  PDF
Colin Paul Gloster, William Fishburne, Seweryn Habdank-Wojewódzki, Rachel Davies.
Overload, 14(75):, October 2006.

[Habdank-Wojewódzki, 2007]
C++ Trivial Logger  WEB  PDF
Seweryn Habdank-Wojewódzki.
Overload, 15(77):, February 2007.
When a fully functional logging subsystem isn't the answer what does one do? Seweryn Habdank-Wojewódzki rolls his own.

[Hagan, 1998]
Exception Discussion  WEB
Ken Hagan, The Harpist.
Overload, 6(29):, December 1998.

[Hagan, 1999]
A Letter from Ken Hagan annotated by The Harpist  WEB
Ken Hagan, The Harpist.
Overload, 7(30):, February 1999.

[Hagan, 2003]
Statically Checking Exception Specifications  WEB  PDF
Ken Hagan.
Overload, 11(57):, October 2003.

[Hall, 1997]
Whence Objects?  PDF
Ray Hall.
Overload, 5(20):5-7, June 1997.
Software Development in C++

[Hall, 1997]
The C&C++ European Developers Forum  PDF
Ray Hall.
Overload, 5(21):30-32, August 1997.
News, Views, & Reviews

[Hall, 1999]
editor << letters;  WEB
Ray Hall.
Overload, 7(30):, February 1999.

[Hammond, 2005]
Can C++ Learn from Generics in Ada?  WEB  PDF
Peter Hammond.
Overload, 13(67):, June 2005.

[Hammond, 2005]
A Framework for Generating Numerical Test Data  WEB  PDF
Peter Hammond.
Overload, 13(69):, October 2005.

[Handley, 2022]
Taming Wordle with the Command Line  WEB  PDF
James Handley.
Overload, 30(168):4-5, April 2022.
Could static analysis provide a generic way to approach Wordle? James Handley uses simple command line tools in order to (hopefully) name that Wordle in four!

[Hanhinen, 2017]
Space invaders in Elm  WEB  PDF
Ossi Hanhinen.
Overload, 25(138):4-6, April 2017.
Elm is a functional language which compiles to JavaScript. Ossi Hanhinen provides an overview.

[Hariri, 2017]
Kotlin for C++ Developers  WEB  PDF
Hadi Hariri.
Overload, 25(139):16-17, June 2017.
What could a language the originated on the JVM possibly offer C or C++ devs? Hadi Hariri tells us.

[Harkness, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Harris, 2007]
auto_value: Transfer Semantics for Value Types  WEB  PDF
Richard Harris.
Overload, 15(79):, June 2007.
std::auto_ptr has a reputation for causing problems due to its surprising copy/assignment semantics. Richard Harris tries to separate the good ideas from the bad.

[Harris, 2007]
auto_value: Transfer Semantics for Value Types  WEB  PDF
Richard Harris.
Overload, 15(80):, August 2007.
"Copy On Write" (COW) sounds like an ideal idiom for avoiding expensive copies. But care must be taken to avoid producing a "mad cow".

[Harris, 2007]
auto_value: Transfer Semantics for Value Types  WEB  PDF
Richard Harris.
Overload, 15(81):, October 2007.
In his quest to pass around values efficiently, Richard Harris concludes by looking at ways of transferring ownership, now and in the future.

[Harris, 2007]
The Model Student  WEB  PDF
Richard Harris.
Overload, 15(82):, December 2007.
Richard Harris begins a series of articles exploring some of the mathematics of interest to those modelling problems with computers. Part 1: The Regular Travelling Salesman.

[Harris, 2008]
The Regular Travelling Salesman, Part 2  WEB  PDF
Richard Harris.
Overload, 16(83):, February 2008.
Richard Harris explores more of the mathematics of modelling problems with computers.

[Harris, 2008]
The Model Student: A Knotty Problem, Part 1  WEB  PDF
Richard Harris.
Overload, 16(84):, April 2008.
Richard Harris explores more of the mathematics of modelling problems with computers.

[Harris, 2008]
The Model Student: A Knotty Problem, Part 2  WEB  PDF
Richard Harris.
Overload, 16(85):, June 2008.
Tying yourself in knots is easy. Richard Harris cuts through the complexity.

[Harris, 2008]
The Model Student: Can Chance Make Fine Things? (Part 1)  WEB  PDF
Richard Harris.
Overload, 16(87):, October 2008.
Evolution involves a random process. Richard Harris compares the mathematics to that of blind chance.

[Harris, 2008]
The Model Student: Can Chance Make Fine Things? (Part 2)  WEB  PDF
Richard Harris.
Overload, 16(88):, December 2008.
How well does evolution find solutions? Richard Harris models population change.

[Harris, 2009]
The Model Student: A Rube-ish Square (Part 1)  WEB  PDF
Richard Harris.
Overload, 17(89):, February 2009.
We all have nostalgia for favourite childhood toys. Richard Harris looks at the maths behind a classic.

[Harris, 2009]
The Model Student: A Rube-ish Square (Part 2)  WEB  PDF
Richard Harris.
Overload, 17(90):, April 2009.
A rube-ish square embodies some simple group theory. Richard Harris explores its properties.

[Harris, 2009]
The Model Student: The Enigma Challenge  WEB  PDF
Richard Harris.
Overload, 17(91):, June 2009.
Codebreaking was instrumental to computing history. Richard Harris presents a simplified Enigma code for you to crack.

[Harris, 2009]
The Model Student: A Primal Skyline (Part 1)  WEB  PDF
Richard Harris.
Overload, 17(92):, August 2009.
Prime numbers are the 'building blocks' of the integers. Richard Harris investigates how they're combined.

[Harris, 2009]
The Model Student: A Primal Skyline (Part 2)  WEB  PDF
Richard Harris.
Overload, 17(93):, October 2009.
How do you measure the length of a curve? Richard Harris gets his ruler out.

[Harris, 2009]
The Model Student: A Primal Skyline (Part 3)  WEB  PDF
Richard Harris.
Overload, 17(94):11-16, December 2009.
The prime factors of the integers show some repeating patterns. Richard Harris investigates whether they have fractal properties.

[Harris, 2010]
The Model Student: A Game of Six Integers (Part 1)  WEB  PDF
Richard Harris.
Overload, 18(95):, February 2010.
In how many ways can you combine a set of numbers? Richard Harris gets counting.

[Harris, 2010]
The Model Student: A Game of Six Integers (Part 2)  WEB  PDF
Richard Harris.
Overload, 18(96):, April 2010.
What are the properties of the Numbers Game? Richard Harris continues his analysis.

[Harris, 2010]
The Model Student: A Game of Six Integers (Part 3)  WEB  PDF
Richard Harris.
Overload, 18(97):, June 2010.
We now have the tools to analyse the Countdown Numbers Game. Richard Harris is ready to play.

[Harris, 2010]
The Model Student: The ACCU 2010 Crypto Challenge  WEB  PDF
Richard Harris.
Overload, 18(98):9-11, August 2010.
Electronic computers advanced cryptography enormously. Richard Harris sets a challenge, and finds a solution.

[Harris, 2010]
You're Going To Have To Think!  WEB  PDF
Richard Harris.
Overload, 18(99):4-9, October 2010.
Numerical computing has many pitfalls. Richard Harris starts looking for a silver bullet.

[Harris, 2010]
Why Fixed Point Won’t Cure Your Floating Point Blues  WEB  PDF
Richard Harris.
Overload, 18(100):14-21, December 2010.
Numeric computing is very difficult to do properly. Richard Harris looks at whether a common technique will help.

[Harris, 2011]
Why Rationals Won’t Cure Your Floating Point Blues  WEB  PDF
Richard Harris.
Overload, 19(101):8-11, February 2011.
Numerical computing is still proving hard to do accurately. Richard Harris considers another number representation.

[Harris, 2011]
Why Computer Algebra Won’t Cure Your Floating Point Blues  WEB  PDF
Richard Harris.
Overload, 19(102):8-13, April 2011.
Numerical computing is proving quite a challenge. Richard Harris sees if a computer can do mathematics.

[Harris, 2011]
Why Interval Arithmetic Won’t Cure Your Floating Point Blues  WEB  PDF
Richard Harris.
Overload, 19(103):18-23, June 2011.
We’ve looked at several approaches to numeric computing. Richard Harris has a final attempt to find an accurate solution.

[Harris, 2011]
The ACCU 2011 Crypto Challenge  WEB  PDF
Richard Harris.
Overload, 19(103):31-36, June 2011.
Ready for the biggest challenge yet? Richard Harris throws down the gauntlet.

[Harris, 2011]
Why [Insert Algorithm Here] Won’t Cure Your Calculus Blues  WEB  PDF
Richard Harris.
Overload, 19(104):21-24, August 2011.
We now know that floating point arithmetic is the best we can do. Richard Harris goes back to school ready to show how to use it.

[Harris, 2011]
Why Finite Differences Won’t Cure Your Calculus Blues  WEB  PDF
Richard Harris.
Overload, 19(105):4-11, October 2011.
Now we know our problem in depth. Richard Harris analyses if a common technique will work adequately.

[Harris, 2011]
Why Polynomial Approximation Won't Cure Your Calculus Blues  WEB  PDF
Richard Harris.
Overload, 19(106):16-24, December 2011.
We’re still trying to find a good way to approach numerical computing. Richard Harris tries to get as close as possible.

[Harris, 2012]
Why Computer Algebra Won’t Cure Your Calculus Blues  WEB  PDF
Richard Harris.
Overload, 20(107):14-19, February 2012.
We still haven’t found how to accurately do calculus. Richard Harris revisits an algebraic technique.

[Harris, 2012]
Why Automatic Differentiation Won’t Cure Your Calculus Blues  WEB  PDF
Richard Harris.
Overload, 20(108):4-11, April 2012.
We’ve tried and rejected many numerical approaches to differentiation. Richard Harris has one final attempt.

[Harris, 2022]
The Model Student: The Regular Travelling Salesman – Part 1  WEB  PDF
Richard Harris.
Overload, 30(171):10-15, October 2022.
Richard Harris begins a series of articles exploring some of the mathematics of interest to those modelling problems with computers.

[Harris, 2022]
The Model Student: The Regular Travelling Salesman – Part 2  WEB  PDF
Richard Harris.
Overload, 30(172):22-27, December 2022.
Richard Harris explores more of the mathematics of modelling problems with computers.

[Harrison, 2020]
Profiting from the Folly of Others  WEB  PDF
Alastair Harrison.
Overload, 28(156):22-27, April 2020.
Code referred to as a hack can raise an eyebrow. Alastair Harrison learns about accessing private members of C++ classes by investigating a header called UninitializedMemoryHacks.h

[Hastings, 2005]
Polynomial Classes  WEB  PDF
William Hastings.
Overload, 13(69):, October 2005.

[Heinzmann, 2003]
Observer Pattern Implementation  WEB  PDF
Stefan Heinzmann, Phil Bass.
Overload, 11(54):, April 2003.

[Heinzmann, 2004]
The Tale of a Struggling Template Programmer  WEB  PDF
Stefan Heinzmann.
Overload, 12(61):, June 2004.

[Heinzmann, 2004]
A Template Programmer’s Struggles Resolved  WEB  PDF
Stefan Heinzmann, Phil Bass.
Overload, 12(61):, June 2004.

[Heinzmann, 2004]
Yet Another Hierarchical State Machine  WEB  PDF
Stefan Heinzmann.
Overload, 12(64):, December 2004.

[Hennessy, 2005]
Sheep Farming for Software Development Managers  WEB  PDF
Pippa Hennessy.
Overload, 13(66):, April 2005.

[Henney, 1994]
Do birds in their little nests always agree?  WEB
Kevlin Henney.
Overload, 2(4):, February 1994.

[Henney, 1994]
Writing Your Own Stream Manipulators  WEB
Kevlin Henney.
Overload, 2(5):16-18, September 1994.

[Henney, 1995]
An alternative to wchar_t  WEB
Kevlin Henney.
Overload, 3(6):, March 1995.

[Henney, 1995]
Overloading on const and other stories  PDF
Kevlin Henney.
Overload, 3(7):15-17, April 1995.

[Henney, 1995]
editor << letters;  PDF
Kevlin Henney.
Overload, 3(7):37-38, April 1995.

[Henney, 1995]
cv-qualified constructors  PDF
Kevlin Henney.
Overload, 3(8):15-18, June 1995.
The Draft International C++ Standard

[Henney, 1995]
Circle & Ellipse - Vicious Circles  PDF
Kevlin Henney.
Overload, 3(8):23-27, June 1995.

[Henney, 1995]
Seduction: The Last? - Applying the STL mindset  PDF
Kevlin Henney.
Overload, 3(9):7-12, August 1995.

[Henney, 1995]
Uncontained - oddities and oversights in the standard library  PDF
Kevlin Henney.
Overload, 3(9):21-23, August 1995.
The Draft International C++ Standard

[Henney, 1995]
Literally yours  PDF
Kevlin Henney.
Overload, 3(11):21-22, December 1995.
The Draft International C++ Standard

[Henney, 1995]
Anonymously yours  PDF
Kevlin Henney.
Overload, 3(11):22-23, December 1995.
The Draft International C++ Standard

[Henney, 1995]
Change of address  PDF
Kevlin Henney.
Overload, 3(11):34-37, December 1995.
C++ Techniques

[Henney, 1995]
/tmp/late/* Generating constants with templates  PDF
Kevlin Henney.
Overload, 3(11):37-39, December 1995.
C++ Techniques

[Henney, 1996]
Rot in L  PDF
Kevlin Henney.
Overload, 4(12):18-19, February 1996.
C++ Techniques

[Henney, 1996]
/tmp/late/* Constraining template parameter types  PDF
Kevlin Henney.
Overload, 4(12):23-26, February 1996.
C++ Techniques

[Henney, 1996]
/tmp/late/* Specifying integer size  PDF
Kevlin Henney.
Overload, 4(13):27-30, April 1996.
C++ Techniques

[Henney, 1996]
questions->answers  PDF
Kevlin Henney.
Overload, 4(13):31-33, April 1996.

[Henney, 1996]
/tmp/late/* Constraining template parameter values  PDF
Kevlin Henney.
Overload, 4(15):33-35, August 1996.
C++ Techniques

[Henney, 1996]
Some OOD answers  PDF
Kevlin Henney.
Overload, 4(16):4-8, October 1996.
Software Development in C++

[Henney, 1996]
questions->answers  PDF
Kevlin Henney.
Overload, 4(16):24-27, October 1996.

[Henney, 1997]
Make a date with C++: In the Beginning...  PDF
Kevlin Henney.
Overload, 5(19):12-14, April 1997.
Software Development in C++

[Henney, 1997]
Make a date with C++: Typing Lessons  PDF
Kevlin Henney.
Overload, 5(20):10-13, June 1997.
C++ Techniques

[Henney, 1997]
Self Assignment? No Problem!  PDF
Kevlin Henney.
Overload, 5(20):17-25, June 1997.
C++ Techniques

[Henney, 1997]
editor << letters;  PDF
Kevlin Henney, Richard Percy, Jonathan Jagger.
Overload, 5(20):36-37, June 1997.

[Henney, 1997]
Safe Assignment? No Problem!  PDF
Kevlin Henney.
Overload, 5(21):14-17, August 1997.
C++ Techniques

[Henney, 1997]
Make a date with C++ Independence of Declaration  PDF
Kevlin Henney.
Overload, 5(21):18-20, August 1997.
C++ Techniques

[Henney, 1997]
Allocation Stats  PDF
Kevlin Henney.
Overload, 5(22):5-8, October 1997.

[Henney, 1997]
Make a date with C++ And so to const  PDF
Kevlin Henney.
Overload, 5(22):15-20, October 1997.

[Henney, 1998]
Embed with C++  PDF
Kevlin Henney.
Overload, 6(24):9-13, February 1998.
The Draft International C++ Standard

[Henney, 1998]
Counted Body Techniques  PDF
Kevlin Henney.
Overload, 6(25):1-7, April 1998.
Software Development in C++

[Henney, 1998]
Make a date with C++, A Touch of Class  PDF
Kevlin Henney.
Overload, 6(26):3-7, June 1998.
Software Development in C++

[Henney, 1999]
Coping with Copying in C++  WEB
Kevlin Henney.
Overload, 7(33):, October 1999.

[Henney, 1999]
The Diary of Bridget Jones the Weekend Before OT  WEB
Kevlin Henney.
Overload, 7(34):, December 1999.

[Henney, 2000]
From Mechanism to Method: Substitutability  WEB
Kevlin Henney.
Overload, 8(39):, October 2000.

[Henney, 2000]
C++ Patterns Source Cohesion and Decoupling  WEB
Kevlin Henney.
Overload, 8(39):, October 2000.

[Henney, 2000]
From Mechanism to Method: Valued Conversions  WEB
Kevlin Henney.
Overload, 8(40):, December 2000.

[Henney, 2001]
minimalism  WEB
Kevlin Henney.
Overload, 9(45):, October 2001.

[Henney, 2002]
minimalism  WEB  PDF
Kevlin Henney.
Overload, 10(47):, February 2002.

[Henney, 2002]
Minimalist Constructive Criticism  WEB  PDF
Kevlin Henney.
Overload, 10(47):, February 2002.

[Henney, 2002]
From Mechanism to Method: Function Follows Form  WEB  PDF
Kevlin Henney.
Overload, 10(48):, April 2002.

[Henney, 2002]
Letter To The Editor  WEB  PDF
Kevlin Henney.
Overload, 10(49):, June 2002.

[Henney, 2002]
From Mechanism to Method: Good Qualifications  WEB  PDF
Kevlin Henney.
Overload, 10(52):, December 2002.

[Henney, 2003]
From Mechanism to Method: Total Ellipse  WEB  PDF
Kevlin Henney.
Overload, 11(53):14-18, February 2003.

[Henney, 2003]
From Mechanism to Method: Distinctly Qualified  WEB  PDF
Kevlin Henney.
Overload, 11(55):, June 2003.

[Henney, 2003]
From Mechanism to Method: Data Abstraction and Heterarchy  WEB  PDF
Kevlin Henney.
Overload, 11(58):, December 2003.

[Henney, 2004]
From Mechanism to Method: Further Qualifications  WEB  PDF
Kevlin Henney.
Overload, 12(59):, February 2004.

[Henney, 2004]
From Mechanism to Method: Generic Decoupling  WEB  PDF
Kevlin Henney.
Overload, 12(60):, April 2004.

[Henney, 2004]
From Mechanism to Method: The Safe Stacking of Cats  WEB  PDF
Kevlin Henney.
Overload, 12(62):, August 2004.
Source: cats, curling, exceptions

[Henney, 2005]
Stable Intermediate Forms  WEB  PDF
Kevlin Henney.
Overload, 13(65):, February 2005.

[Henney, 2005]
C-side Re-sort  WEB  PDF
Kevlin Henney.
Overload, 13(68):, August 2005.
In spite of the attention given to object-oriented development, TDD and modern testing frameworks, it is worth understanding how and why unit testing has an important role to play in general, regardless of the technologies or broader development philosophy involved. This article walks through a simple example, highlighting some of the motivation behind basic unit testing and the practices involved but without following through into TDD.

[Henney, 2005]
Vorsprung Durch Testing  WEB  PDF
Kevlin Henney.
Overload, 13(69):, October 2005.

[Henney, 2007]
The PfA Papers: From the Top  WEB  PDF
Kevlin Henney.
Overload, 15(80):, August 2007.
A characteristic of patterns is that experienced developers often experience a moment of recognition upon reading the write up. Sometimes the write up isn't even needed...

[Henney, 2007]
The PfA Papers: The Clean Dozen  WEB  PDF
Kevlin Henney.
Overload, 15(81):, October 2007.
Patterns are social animals and are often found in the company of others. This issue, Kevlin Henney looks at where 'Parameterise from Above' has been hanging out.

[Henney, 2007]
The PfA Papers: Context Matters  WEB  PDF
Kevlin Henney.
Overload, 15(82):, December 2007.
Continuing his history of Parameterise from Above, Kevlin Henny looks at Singletons and Context Objects.

[Henney, 2008]
The PfA Papers: Deglobalisation  WEB  PDF
Kevlin Henney.
Overload, 16(83):, February 2008.
More history of Parameterise from Above as Kevlin Henney looks at Simpletons and the Borg

[Henney, 2011]
Rise of the Machines  WEB  PDF
Kevlin Henney.
Overload, 19(101):20, February 2011.
Sometimes the world really is out to get you. Kevlin Henney identifies some culprits.

[Henney, 2013]
The Uncertainty Principle  WEB  PDF
Kevlin Henney.
Overload, 21(115):29, June 2013.
Not being sure of something is usually thought of as a problem. Kevlin Henney argues to the contrary.

[Henney, 2014]
Feeding Back  WEB  PDF
Kevlin Henney.
Overload, 22(123):28, October 2014.
Kevlin Henney contemplates how to make feedback useful.

[Henney, 2020]
Comment Only What The Code Cannot Say  WEB  PDF
Kevlin Henney.
Overload, 28(157):4, June 2020.
Comments can help or hinder. Kevlin Henney assesses when to avoid them.

[Henney, 2021]
Test Precisely and Concretely  WEB  PDF
Kevlin Henney.
Overload, 29(161):12-15, February 2021.
Tests can hit complete coverage but fail to communicate. Kevlin Henney reminds us that assertions should be necessary, sufficient, and comprehensible.

[Henney, 2021]
Out of Control  WEB  PDF
Kevlin Henney.
Overload, 29(163):16-20, June 2021.
An essay on paradigms, refactoring, control flow, data, code, dualism and what Roman numerals ever did for us. Kevlin Henney takes us on a whirlwind tour.

[Henney, 2023]
Need Something Sorted? Sleep On It!  WEB  PDF
Kevlin Henney.
Overload, 31(175):11-14, June 2023.
Sorting algorithms have been thoroughly studied. Kevlin Henney takes an unexpected paradigm journey into sleep sort.

[Henney, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Henricson, 1995]
operator= and const - a reply  PDF
Mats Henricson, Erik Nyquist.
Overload, 3(7):18, April 1995.

[Henricson, 1995]
Writing “Industrial Strength C++”  PDF
Mats Henricson.
Overload, 3(8):44-46, June 1995.
Books and Journals

[Hernik, 2020]
Consuming the uk-covid19 API  WEB  PDF
Donald Hernik.
Overload, 28(160):10-12, December 2020.
Covid-19 data is available in many places. Donald Hernik demonstrates how to wrangle data out of the UK API.

[Hersom, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Higgins, 2004]
ACCU Mentored Developers XML Project  WEB  PDF
Paul Grenyer, Jez Higgins.
Overload, 12(62):, August 2004.

[Higgins, 2024]
To See a World in a Grain of Sand  WEB  PDF
Jez Higgins.
Overload, 32(180):14-19, April 2024.
Code often rots over time as various people add new features. Jez Higgins shows how to refactor code that has grown organically, making it clearer and more concise.

[Hills, 2003]
A Standard Individual: A Licensed Engineer  WEB  PDF
Chris Hills.
Overload, 11(58):, December 2003.

[Holgate, 2014]
Activatable Object  WEB  PDF
Len Holgate.
Overload, 22(122):11-13, August 2014.
Using locks will slow down threaded code. Len Holgate demonstrates how an Activatable Object can reduce the time spent blocked.

[Horwill, 1993]
Windows File Class  WEB
Ian Horwill.
Overload, 1(3):, August 1993.

[Horwill, 1995]
Wait for me! - copying and assignment  PDF
Ian Horwill.
Overload, 3(7):23-24, April 1995.

[Horwill, 1995]
editor << letters;  PDF
Ian Horwill.
Overload, 3(7):35-36, April 1995.

[Horwill, 1995]
Wait for me! - virtual  PDF
Ian Horwill.
Overload, 3(8):20-23, June 1995.

[Horwill, 1995]
editor << letters;  PDF
Ian Horwill.
Overload, 3(8):40, June 1995.

[Houghton, 1997]
editor << letters;  PDF
Tony Houghton.
Overload, 5(23):38, December 1997.

[Hořeňovský, 2019]
Modern SAT solvers: fast, neat and underused (part 1 of N)  WEB  PDF
Martin Hořeňovský.
Overload, 27(150):8-13, April 2019.
SAT solvers can quickly find solutions to Boolean Logic problems. Martin Hořeňovský demonstrates how this can be used to solve arbitrary Sudoku puzzles.

[Hughes, 2000]
editorial  WEB
Tom Hughes.
Overload, 8(37):, June 2000.

[Hutorny, 2021]
Chepurni Multimethods for Contemporary C++  WEB  PDF
Eugene Hutorny.
Overload, 29(162):17-23, April 2021.
Multimethods can be implemented in various ways. Eugene Hutorny showcases an approach using custom type identification and introspection.

[IPL Limited, 1993]
Unit Testing Of C++ Classes  WEB
IPL Limited.
Overload, 1(3):, August 1993.

[Ignatchenko, 1997]
Some Opportunities to Increase STL Efficiency  PDF
Sergey Ignatchenko.
Overload, 5(22):30-35, October 1997.

[Ignatchenko, 1997]
STL Vectors  PDF
Sergey Ignatchenko, Dmitry Ligum.
Overload, 5(23):19-23, December 1997.
C++ Techniques

[Ignatchenko, 2009]
Project-Specific Language Dialects  WEB  PDF
Yaakov Belch, Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 17(94):17-25, December 2009.
Today’s languages force a one-size-fits-all approach on projects. Yaakov Belch, Sergey Ignatchenko and Dmytro Ivanchykhin suggest a more flexible solution.

[Ignatchenko, 2010]
Single-Threading: Back to the Future?  WEB  PDF
Sergey Ignatchenko.
Overload, 18(97):, June 2010.
Dealing with multi-threading is notoriously hard. Sergey Ignatchenko learns lessons from the past.

[Ignatchenko, 2010]
Single-Threading: Back to the Future? (Part 2)  WEB  PDF
Sergey Ignatchenko.
Overload, 18(98):16-19, August 2010.
Multithreading can cause notoriously difficult bugs. Sergey Ignatchenko finds mitigating strategies for programs on servers.

[Ignatchenko, 2010]
To DLL or Not To DLL  WEB  PDF
Sergey Ignatchenko.
Overload, 18(99):14-16, October 2010.
Shared libraries provide both benefits and problems. Sergey Ignatchenko introduces a rabbit’s-eye view.

[Ignatchenko, 2010]
From Occam’s Razor to No Bugs’ Axe  WEB  PDF
Sergey Ignatchenko.
Overload, 18(100):8-10, December 2010.
Designing good APIs that stand the test of time is notoriously hard. Sergey Ignatchenko suggests a radical guideline.

[Ignatchenko, 2011]
Overused Code Reuse  WEB  PDF
Sergey Ignatchenko.
Overload, 19(101):12-14, February 2011.
It’s tempting to use someone else’s code rather than write it yourself. Sergey Ignatchenko reports that ‘No Bugs’ Bunny recommends caution.

[Ignatchenko, 2011]
On CMM, Formalism and Creativity  WEB  PDF
Sergey Ignatchenko.
Overload, 19(102):18-20, April 2011.
No Bugs requires us to improve software quality. Sergey Ignatchenko considers some of the potential problems.

[Ignatchenko, 2011]
The Guy We’re All Working For  WEB  PDF
Sergey Ignatchenko.
Overload, 19(103):10-12, June 2011.
Developers like to think they’re in control of their products. Sergey Ignatchenko reminds us who’s really in charge.

[Ignatchenko, 2011]
Over-Generic Use of Abstractons as a Major Cause of Wasting Resources  WEB  PDF
Sergey Ignatchenko.
Overload, 19(104):4-6, August 2011.
We often find ways to hide complexity. Sergey Ignatchenko looks at how this can be sub-optimal.

[Ignatchenko, 2011]
Intellectual Property - a Crash Course for Developers  WEB  PDF
Sergey Ignatchenko.
Overload, 19(105):18-20, October 2011.
Interpreting law is a tricky business. Sergey Ignatchenko introduces someone who can help you avoid expensive mistakes.

[Ignatchenko, 2011]
From the Age of Power to the Age of Magic and beyond...  WEB  PDF
Sergey Ignatchenko.
Overload, 19(106):11-13, December 2011.
Certain abilities allowed some societies to dominate their peers. Sergey Ignatchenko takes a historical perspective on dominant societies

[Ignatchenko, 2012]
Memory Leaks and Memory Leaks  WEB  PDF
Sergey Ignatchenko.
Overload, 20(107):4-5, February 2012.
Correct use of memory is a major occupation of software development. Sergey Ignatchenko considers what we mean by ‘correct’.

[Ignatchenko, 2012]
Compiling a Static Web Site Using the C Preprocessor  WEB  PDF
Sergey Ignatchenko.
Overload, 20(108):33-35, April 2012.
Sometimes the obvious way is still too complex. Sergey Ignatchenko relates how ‘No Bugs’ Bunny found an unexpectedly simple approach to creating a web site.

[Ignatchenko, 2012]
Programming Darwinism  WEB  PDF
Sergey Ignatchenko.
Overload, 20(109):4-5, June 2012.
Have you ever thought your software had a life of its own? Sergey Ignatchenko wonders whether you might be right.

[Ignatchenko, 2012]
Replace User, Strike Any Key?  WEB  PDF
Sergey Ignatchenko.
Overload, 20(110):16-18, August 2012.
There is a common perception in the IT industry that the user is the primary source of all the problems. Sergey Ignatchenko asks if this is true.

[Ignatchenko, 2012]
Keep It Simple, Singleton!  WEB  PDF
Sergey Ignatchenko.
Overload, 20(111):19-20, October 2012.
Naïve assumptions sound like a bad idea. Sergey Ignatchenko discusses how to spot good assumptions in the face of changing requirements.

[Ignatchenko, 2012]
-640K- 2^256 Bytes of Memory is More than Anyone Would Ever -Need- Get  WEB  PDF
Sergey Ignatchenko.
Overload, 20(112):14-15, December 2012.
How fast can computers get? Sergey Ignatchenko provides us with some upper limits.

[Ignatchenko, 2013]
‘No Bugs’ Top Five C++ Cooking Recipes  WEB  PDF
Sergey Ignatchenko.
Overload, 21(113):4-6, February 2013.
Developers often have a few favourite tricks for solving problems. Sergey Ignatchenko shares his five top recipes.

[Ignatchenko, 2013]
A Model for Debug Complexity  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 21(114):4-5, April 2013.
Debugging any program can be difficult. Sergey Ignatchenko and Dmytro Ivanchykhin develop a mathematical model for its complexity.

[Ignatchenko, 2013]
TCP/IP Explained. A Bit  WEB  PDF
Sergey Ignatchenko.
Overload, 21(115):8-11, June 2013.
Nowadays most programmers rely on network connectivity, often without really understanding the details. Sergey Ignatchenko compares and contrasts the two main protocols.

[Ignatchenko, 2013]
Hard Upper Limit on Memory Latency  WEB  PDF
Sergey Ignatchenko.
Overload, 21(116):4-5, August 2013.
Achieving very low latency is important. Sergey Ignatchenko asks how low can we go.

[Ignatchenko, 2013]
YAGNI-C as a Practical Application of YAGNI  WEB  PDF
Sergey Ignatchenko.
Overload, 21(117):12-14, October 2013.
YAGNI can seem vague. Sergey Ignatchenko offers a more precise definition.

[Ignatchenko, 2013]
On the Other Side of the Barricade: Job Interviewer Do’s and Don’ts  WEB  PDF
Sergey Ignatchenko.
Overload, 21(118):4-6, December 2013.
Interviewing is an important skill which is hard to get right. Sergey Ignatchenko gives advice to get you thinking.

[Ignatchenko, 2014]
Optimizing Big Number Arithmetic Without SSE  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(119):16-18, February 2014.
Addition and multiplication can be slow for big numbers. Sergey Ignatchenko and Dmytro Ivanchykhin try to speed things up.

[Ignatchenko, 2014]
Size Matters  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(120):4-5, April 2014.
Should you target 32 or 64 bits? Sergey Ignatchenko and Dmytro Ivanchykhin consider the costs and benefits.

[Ignatchenko, 2014]
Musings on Python - by a C++ Developer  WEB  PDF
Sergey Ignatchenko.
Overload, 22(122):6-10, August 2014.
Python and C++ are very different languages. Sergey Ignatchenko walks through things in Python that can confuse a C++ programmer.

[Ignatchenko, 2014]
Debug Complexity: How Assertions Affect Debugging Time  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(123):4-7, October 2014.
Sergey Ignatchenko and Dmytro Ivanchykhin extend their mathematical model of debug complexity.

[Ignatchenko, 2014]
Non-Superfluous People: Testers  WEB  PDF
Sergey Ignatchenko.
Overload, 22(124):6-8, December 2014.
Software development needs a team of supporting players. Sergey Ignatchenko takes a look at the role of professional testers.

[Ignatchenko, 2015]
Best Practices vs Witch Hunts  WEB  PDF
Sergey Ignatchenko.
Overload, 23(125):4-6, February 2015.
Best practices can be a Good Thing. Sergey Ignatchenko considers when they can turn into Really Bad Things.

[Ignatchenko, 2015]
Non-Superfluous People:  WEB  PDF
Sergey Ignatchenko.
Overload, 23(126):4-8, April 2015.
UX Specialists User experience specialists are sometimes regarded as superfluous people. Sergey Ignatchenko demonstrates why they can be vital.

[Ignatchenko, 2015]
Non-Superfluous People: Architects  WEB  PDF
Sergey Ignatchenko.
Overload, 23(127):12-14, June 2015.
No developer is an island. Sergey Ignatchenko continues his series of non-superfluous people by looking at the role of architects.

[Ignatchenko, 2015]
Multi-threading at Business-logic Level is Considered Harmful  WEB  PDF
Sergey Ignatchenko.
Overload, 23(128):4-7, August 2015.
Multi-threaded code promises potential speed-up. Sergey Ignatchenko considers how it often slows things down instead.

[Ignatchenko, 2015]
Password Hashing: Why and How  WEB  PDF
Sergey Ignatchenko.
Overload, 23(129):12-16, October 2015.
Password hashing is important. Sergey Ignatchenko explains how to do it properly.

[Ignatchenko, 2015]
Once Again on TCP vs UDP  WEB  PDF
Sergey Ignatchenko.
Overload, 23(130):4-7, December 2015.
TCP and UDP have different properties. Sergey Ignatchenko weighs up their pros and cons.

[Ignatchenko, 2016]
On Zero-Side-Effect Interactive Programming, Actors, and FSMs  WEB  PDF
Sergey Ignatchenko.
Overload, 24(131):9-12, February 2016.
Functional programming is alien to many programmers. Sergey Ignatchenko considers parallels between actors and finite state machines.

[Ignatchenko, 2016]
Knowledge-Sharing Architects As An Alternative to Coding Architects  WEB  PDF
Sergey Ignatchenko.
Overload, 24(132):8-10, April 2016.
Should architects write code? Sergey Ignatchenko explores this controversial subject.

[Ignatchenko, 2016]
Deterministic Components for Distributed Systems  WEB  PDF
Sergey Ignatchenko.
Overload, 24(133):12-16, June 2016.
Non-deterministic data leads to unstable tests. Sergey Ignatchenko considers when this happens and how to avoid it.

[Ignatchenko, 2016]
Some Big-Os are Bigger Than Others  WEB  PDF
Sergey Ignatchenko.
Overload, 24(134):4-7, August 2016.
Big-O notation is often used to compare algorithms. Sergey Ignatchenko reminds us that asymptotic limits might not be generally applicable.

[Ignatchenko, 2016]
Determinism: Requirements vs Features  WEB  PDF
Sergey Ignatchenko.
Overload, 24(135):4-7, October 2016.
A program can easily be non-deterministic. Sergey Ignatchenko considers how to define determinism.

[Ignatchenko, 2016]
Ultra-fast Serialization of C++ Objects  WEB  PDF
Sergey Ignatchenko.
Overload, 24(136):12-17, December 2016.
Serialising and de-serialising is a common problem. Sergey Ignatchenko and Dmytro Ivanchykhin demonstrate one way to do this quickly.

[Ignatchenko, 2017]
The Importance of Back-of-Envelope Estimates  WEB  PDF
Sergey Ignatchenko.
Overload, 25(137):8-12, February 2017.
Guestimate questions make many people grumble. Sergey Ignatchenko reminds us why they matter.

[Ignatchenko, 2017]
(Not Really So) New Niche for C++: Browser!?  WEB  PDF
Sergey Ignatchenko.
Overload, 25(138):12-15, April 2017.
How do you run C++ in a browser? Sergey Ignatchenko demonstrates how to use Emscripten.

[Ignatchenko, 2017]
Allocator for (Re)Actors with Optional Kinda-Safety and Relocation  WEB  PDF
Sergey Ignatchenko.
Overload, 25(139):4-8, June 2017.
How do you deal with memory for (Re)Actors? Sergey Ignatchenko proposes an allocation scheme.

[Ignatchenko, 2017]
A Usable C++ Dialect that is Safe Against Memory Corruption  WEB  PDF
Sergey Ignatchenko.
Overload, 25(140):6-9, August 2017.
Sergey Ignatchenko continues his investigation of allocators for (Re)Actors.

[Ignatchenko, 2017]
'Speedy Gonzales' Serializing (Re)Actors via Allocators  WEB  PDF
Sergey Ignatchenko.
Overload, 25(141):10-13, October 2017.
Sergey Ignatchenko completes his (Re)Actor allocator series.

[Ignatchenko, 2017]
CAS (Re)Actor for Non-Blocking Multithreaded Primitives  WEB  PDF
Sergey Ignatchenko.
Overload, 25(142):4-6, December 2017.
Lock free programming can be difficult. Sergey Ignatchenko shows how copy and swap can work for reactors.

[Ignatchenko, 2018]
An MWSR Queue with Minimalist Locking  WEB  PDF
Sergey Ignatchenko.
Overload, 26(143):6-9, February 2018.
Multithreaded queues come in many flavours. Sergey Ignatchenko describes his implementation of a multiple writer single reader queue.

[Ignatchenko, 2018]
5 Reasons NOT to Use std::ostream for Human-Readable Output  WEB  PDF
Sergey Ignatchenko.
Overload, 26(144):16-20, April 2018.
C++’s ostream can be hard to use. Sergey Ignatchenko suggests we use the {fmt} library instead.

[Ignatchenko, 2018]
(Re)Actor Allocation at 15 CPU Cycles  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin, Marcos Bracco.
Overload, 26(146):14-19, August 2018.
(Re)Actor serialisation requires an allocator. Sergey Ignatchenko, Dmytro Ivanchykhin and Marcos Bracco pare malloc/free down to 15 CPU cycles.

[Ignatchenko, 2018]
P1063 vs Coroutines TS: Consensus on High-Level Semantics  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 26(147):7-9, October 2018.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk argue that we need coroutines TS now to improve-based-on-experience later.

[Ignatchenko, 2018]
Memory Management Patterns in Business-Level Programs  WEB  PDF
Sergey Ignatchenko.
Overload, 26(148):10-13, December 2018.
There are many memory management patterns. Sergey Ignatchenko considers these from an application level.

[Ignatchenko, 2019]
5 Big Fat Reasons Why Mutexes Suck Big Time  WEB  PDF
Sergey Ignatchenko.
Overload, 27(149):4-7, February 2019.
Mutable shared state in multithreaded code is often protected by mutexes. Sergey Ignatchenko reminds us that Re-Actors can avoid many of the problems.

[Ignatchenko, 2019]
On IT and... CO2 Footprints  WEB  PDF
Sergey Ignatchenko.
Overload, 27(151):8-9, June 2019.
Recent headlines declare a climate emergency. Sergey Ignatchenko considers how we can make an impact on IT’s carbon footprint.

[Ignatchenko, 2020]
A line-to-line conversion from Node.js to Node.cpp  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 28(155):4-7, February 2020.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk show how we can get a 5x improvement in speed.

[Iltchenko, 2002]
The C++ Template Argument Deduction  WEB  PDF
Andrei Iltchenko.
Overload, 10(48):, April 2002.

[Ivanchykhin, 2009]
Project-Specific Language Dialects  WEB  PDF
Yaakov Belch, Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 17(94):17-25, December 2009.
Today’s languages force a one-size-fits-all approach on projects. Yaakov Belch, Sergey Ignatchenko and Dmytro Ivanchykhin suggest a more flexible solution.

[Ivanchykhin, 2013]
A Model for Debug Complexity  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 21(114):4-5, April 2013.
Debugging any program can be difficult. Sergey Ignatchenko and Dmytro Ivanchykhin develop a mathematical model for its complexity.

[Ivanchykhin, 2014]
Optimizing Big Number Arithmetic Without SSE  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(119):16-18, February 2014.
Addition and multiplication can be slow for big numbers. Sergey Ignatchenko and Dmytro Ivanchykhin try to speed things up.

[Ivanchykhin, 2014]
Size Matters  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(120):4-5, April 2014.
Should you target 32 or 64 bits? Sergey Ignatchenko and Dmytro Ivanchykhin consider the costs and benefits.

[Ivanchykhin, 2014]
Debug Complexity: How Assertions Affect Debugging Time  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin.
Overload, 22(123):4-7, October 2014.
Sergey Ignatchenko and Dmytro Ivanchykhin extend their mathematical model of debug complexity.

[Ivanchykhin, 2018]
(Re)Actor Allocation at 15 CPU Cycles  WEB  PDF
Sergey Ignatchenko, Dmytro Ivanchykhin, Marcos Bracco.
Overload, 26(146):14-19, August 2018.
(Re)Actor serialisation requires an allocator. Sergey Ignatchenko, Dmytro Ivanchykhin and Marcos Bracco pare malloc/free down to 15 CPU cycles.

[Ivanchykhin, 2018]
P1063 vs Coroutines TS: Consensus on High-Level Semantics  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 26(147):7-9, October 2018.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk argue that we need coroutines TS now to improve-based-on-experience later.

[Ivanchykhin, 2020]
A line-to-line conversion from Node.js to Node.cpp  WEB  PDF
Dmytro Ivanchykhin, Sergey Ignatchenko, Maxim Blashchuk.
Overload, 28(155):4-7, February 2020.
Dmytro Ivanchykhin, Sergey Ignatchenko and Maxim Blashchuk show how we can get a 5x improvement in speed.

[Jackson, 1995]
‘Individual’ Control Validation in MFC  PDF
Kenneth Jackson.
Overload, 3(8):33-36, June 1995.

[Jagger, 1996]
Functionoids  PDF
Jon Jagger.
Overload, 4(14):15-16, June 1996.
C++ Techniques

[Jagger, 1996]
Time please, ladies and gentlemen  PDF
Jon Jagger.
Overload, 4(14):16-18, June 1996.
C++ Techniques

[Jagger, 1997]
auto_ptr || !auto_ptr  WEB
Jon Jagger.
Overload, 5(17-18):, January 1997.
See also corrections in Overload 19, p.30

[Jagger, 1997]
Lessons from fixed_vector Part 1  PDF
Jon Jagger.
Overload, 5(20):25-27, June 1997.
C++ Techniques

[Jagger, 1998]
pointer{type}  PDF
Jon Jagger.
Overload, 6(24):13-18, February 1998.
C++ Techniques

[Jagger, 1998]
counted_ptr{type}  PDF
Jon Jagger.
Overload, 6(25):7-13, April 1998.
Software Development in C++

[Jagger, 1998]
counted_ptr revisited  WEB
Jon Jagger.
Overload, 6(29):, December 1998.

[Jagger, 1999]
Write to Learn  WEB
Jon Jagger.
Overload, 7(30):, February 1999.

[Jagger, 1999]
copy_on_write_ptr  WEB
Jon Jagger.
Overload, 7(31):, April 1999.

[Jagger, 1999]
A Review of cow_ptr  WEB
Jon Jagger.
Overload, 7(32):, June 1999.

[Jagger, 1999]
More cow_ptr Ruminations  WEB
Jon Jagger.
Overload, 7(33):, October 1999.

[Jagger, 2002]
An Overview of C#.NET  WEB  PDF
Jon Jagger.
Overload, 10(49):, June 2002.

[Jagger, 2002]
Even More Java Exceptions  WEB  PDF
Jon Jagger.
Overload, 10(50):, August 2002.

[Jagger, 2002]
Exception Handling in C#  WEB  PDF
Jon Jagger.
Overload, 10(51):, October 2002.

[Jagger, 2003]
A Return Type That Doesn’t Like Being Ignored  WEB  PDF
Jon Jagger.
Overload, 11(53):20-21, February 2003.

[Jagger, 2003]
The Nature and Aesthetics of Design  WEB  PDF
Jon Jagger.
Overload, 11(54):, April 2003.

[Jagger, 2003]
How To Write A Loop  WEB  PDF
Jon Jagger.
Overload, 11(55):, June 2003.

[Jagger, 2003]
Software As Read  WEB  PDF
Jon Jagger.
Overload, 11(57):, October 2003.

[Jagger, 2003]
Single Exit  WEB  PDF
Jon Jagger.
Overload, 11(57):, October 2003.

[Jagger, 2009]
Shadow Data Types  WEB  PDF
Jon Jagger.
Overload, 17(94):4-6, December 2009.
Hiding implementation details is a good idea. Jon Jagger shows a technique in C that avoids some of the common problems.

[Jagger, 1997]
editor << letters;  PDF
Kevlin Henney, Richard Percy, Jonathan Jagger.
Overload, 5(20):36-37, June 1997.

[James, 2018]
Algol 68 - A Retrospective  WEB  PDF
Daniel James.
Overload, 26(148):20-26, December 2018.
Algol 68 has influenced programming languages in many ways. Daniel James reminds us just how many.

[Janky, 2020]
poly::vector – A Vector for Polymorphic Objects  WEB  PDF
Janky Ferenc Nándor.
Overload, 28(159):4-7, October 2020.
Heterogeneous vectors can be slow. Janky Ferenc introduces a sequential container for storing polymorphic objects in C++.

[Janzen, 2023]
Live and Let Die  WEB  PDF
Martin Janzen.
Overload, 31(177):10-13, October 2023.
Resource lifetime management can be problematic. Martin Janzen reminds us how important destructors are and when to be mindful of their limitations.

[Jay, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Jay, 2009]
Complexity, Requirements and Models  WEB  PDF
Rafael Jay.
Overload, 17(91):, June 2009.
Programs can be unnecessarily complex. Rafael Jay examines a technique for doing better.

[Jay, 2010]
Bug Hunting and the Scientific Method  WEB  PDF
Rafael Jay.
Overload, 18(100):4-7, December 2010.
Do you have a proper methodology when fixing bugs? Rafael Jay puts on his lab coat.

[Jensen, 2005]
A Pair Programming Experience  WEB  PDF
Randall W. Jensen.
Overload, 13(65):, February 2005.

[Johansen, 2005]
From Waterfall to EVO in a Medium Size Norwegian Software House  WEB  PDF
Trond Johansen.
Overload, 13(65):, February 2005.
FIRM was established in 1996, and has 70 employees in 4 offices (Oslo, London, New York and San Francisco). FIRM delivers one software product: Confirmit. Confirmit is a web-based application which enables organizations to gather, analyze and report key business information across a broad range of commercial applications.

[Johnson, 2006]
A Drop in Standards?  WEB  PDF
Paul Johnson.
Overload, 14(76):, December 2006.
Paul Johnson asks why, with the increase in numbers of those passing school-based examinations, today's graduates are less able than in previous times. What is going wrong?

[Jones, 2004]
Letters: Software’s No Different...  WEB  PDF
Derek M. Jones.
Overload, 12(61):, June 2004.

[Jones, 1996]
Some questions about OOD  PDF
Graham Jones.
Overload, 4(15):4-6, August 1996.
Software Development in C++

[Jones, 1996]
editor << letters;  PDF
Sean A. Corfield, Allan Newton, Graham Jones, Phil Bass, Steven Youngs.
Overload, 4(15):35-36, August 1996.

[Jones, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Jones, 1997]
OOD again: Some light, some shadows  PDF
Graham Jones.
Overload, 5(19):22-24, April 1997.
C++ Techniques

[Jones, 1998]
Rational Value Comments  PDF
Graham Jones.
Overload, 6(24):22, February 1998.
Whiteboard

[Jones, 1998]
Irrational Behaviour  PDF
Graham Jones.
Overload, 6(25):25-26, April 1998.
Whiteboard

[Jones, 2009]
Testing State Machines  WEB  PDF
Matthew Jones.
Overload, 17(90):, April 2009.
State machines are a common design pattern. Matthew Jones seperates their concerns to make testing easier.

[Jones, 2010]
Debugging Run Time Memory Problems  WEB  PDF
Matthew Jones.
Overload, 18(98):20-27, August 2010.
The C++ Standard is often silent on what happens when things go wrong. Matthew Jones looks under the bonnet to take control.

[Jones, 2008]
Generics Without Templates  WEB  PDF
Robert Jones.
Overload, 16(83):, February 2008.
Robert Jones presents an alternative implementation of C++'s std::vector that can be used the absence of templates and exceptions.

[Jones, 2008]
Generics without Templates - Revisited  WEB  PDF
Robert Jones.
Overload, 16(88):, December 2008.
Can you use the STL if your compiler lacks templates? Robert Jones implements iterators and alogorithms.

[Josuttis, 2000]
eXtreme Programming: An interview with Kent Beck  WEB
Nicolai Josuttis.
Overload, 8(35):, February 2000.

[Joy, 2001]
Introduction to the Database Template Library  WEB
Corwin Joy, Michael Gradman.
Overload, 9(43):, June 2001.

[Kampjes, 2005]
Incremental Design: A Case Study of a Compiler  WEB  PDF
Bryce Kampjes.
Overload, 13(69):, October 2005.

[Kaplan, 2016]
Programming Your Own Language in C++  WEB  PDF
Vassili Kaplan.
Overload, 24(133):17-23, June 2016.
Scripting languages allow dynamic features easily. Vassili Kaplan writes his own in C++ allowing keywords in any human language.

[Karlsson, 2002]
What is Boost?  WEB  PDF
Björn Karlsson.
Overload, 10(47):, February 2002.

[Keffer, 1994]
Why C++ will replace FORTRAN (or, at least, why it should)  WEB
Dr. Thomas Keffer.
Overload, 2(4):, February 1994.

[Keir, 2015]
The Universality and Expressiveness of std::accumulate  WEB  PDF
Paul Keir.
Overload, 23(130):13-15, December 2015.
Folding is a highly generic operation available through std::accumulate. Paul Keir goes beyond reduction, with the help of C++14’s polymorphic lambdas.

[Kelly, 1999]
Using Templates To Handle Multi-Threading  WEB
Allan Kelly.
Overload, 7(31):, April 1999.

[Kelly, 1999]
Modern Art as an Inspiration for Software  WEB
Allan Kelly.
Overload, 7(32):, June 1999.

[Kelly, 1999]
More threading with templates  WEB
Allan Kelly.
Overload, 7(33):, October 1999.

[Kelly, 2000]
Error handling and logging  WEB
Allan Kelly.
Overload, 8(35):, February 2000.

[Kelly, 2000]
In Response to Extreme Programming  WEB
Allan Kelly.
Overload, 8(37):, June 2000.

[Kelly, 2000]
Include Files  WEB
Allan Kelly.
Overload, 8(39):, October 2000.

[Kelly, 2000]
More Include File Rules  WEB
Allan Kelly.
Overload, 8(40):, December 2000.

[Kelly, 2001]
Source Code Modules and Layering  WEB
Allan Kelly.
Overload, 9(41):, February 2001.

[Kelly, 2001]
A Deeper Look at Inline Functions  WEB
Allan Kelly.
Overload, 9(42):, April 2001.

[Kelly, 2001]
Where to begin: Porting  WEB
Allan Kelly.
Overload, 9(43):, June 2001.

[Kelly, 2001]
Porting (part 2) - Addressing the Differences  WEB
Allan Kelly.
Overload, 9(44):, August 2001.

[Kelly, 2001]
Porting part 3:  WEB
Allan Kelly.
Overload, 9(45):, October 2001.

[Kelly, 2001]
Modelling and Software Development  WEB
Allan Kelly.
Overload, 9(46):, December 2001.

[Kelly, 2002]
Of Minimalism, Constructivism and Program Code  WEB  PDF
Allan Kelly.
Overload, 10(47):, February 2002.

[Kelly, 2002]
How about a Turner Prize for software?  WEB  PDF
Allan Kelly.
Overload, 10(47):, February 2002.

[Kelly, 2002]
Thinking about "reuse"  WEB  PDF
Allan Kelly.
Overload, 10(48):, April 2002.

[Kelly, 2002]
Writing Extendable Software  WEB  PDF
Allan Kelly.
Overload, 10(49):, June 2002.

[Kelly, 2002]
The scoping problem  WEB  PDF
Allan Kelly.
Overload, 10(49):, June 2002.

[Kelly, 2002]
The Philosophy of Extensible Software  WEB  PDF
Allan Kelly.
Overload, 10(50):, August 2002.

[Kelly, 2002]
Extendable Software and the Bigger Picture  WEB  PDF
Allan Kelly.
Overload, 10(51):, October 2002.

[Kelly, 2002]
Organising Source Code  WEB  PDF
Allan Kelly.
Overload, 10(52):, December 2002.

[Kelly, 2003]
Build Systems  WEB  PDF
Allan Kelly.
Overload, 11(53):5-9, February 2003.

[Kelly, 2003]
Software development and the learning organisation  WEB  PDF
Allan Kelly.
Overload, 11(54):, April 2003.

[Kelly, 2003]
Ruminations on Knowledge in Software Development  WEB  PDF
Allan Kelly.
Overload, 11(55):, June 2003.

[Kelly, 2003]
EuroPLoP 2003 Conference Report  WEB  PDF
Allan Kelly.
Overload, 11(56):, August 2003.

[Kelly, 2003]
Letters to the Editor(s)  WEB  PDF
Allan Kelly.
Overload, 11(57):, October 2003.
The ACCU is a three-legged stool.

[Kelly, 2003]
Is IT worth it?  WEB  PDF
Allan Kelly.
Overload, 11(57):, October 2003.

[Kelly, 2003]
An Alternative View of design (and planning)  WEB  PDF
Allan Kelly.
Overload, 11(58):, December 2003.

[Kelly, 2004]
Why do requirements change?  WEB  PDF
Allan Kelly.
Overload, 12(59):, February 2004.

[Kelly, 2004]
Where Egos Dare  WEB  PDF
Allan Kelly.
Overload, 12(61):, June 2004.

[Kelly, 2004]
The Encapsulate Context Pattern  WEB  PDF
Allan Kelly.
Overload, 12(63):, October 2004.

[Kelly, 2005]
The Developer's New Work  WEB  PDF
Allan Kelly.
Overload, 13(65):, February 2005.

[Kelly, 2005]
Editorial: Need to Unlearn  WEB  PDF
Allan Kelly.
Overload, 13(66):, April 2005.

[Kelly, 2006]
The Documentation Myth  WEB  PDF
Allan Kelly.
Overload, 14(74):, August 2006.
Allan Kelly suggests that we don't invest more in documentation for a reason: that it isn't as valuable as we claim.

[Kelly, 2007]
Blue-White-Red, an Example Agile Process  WEB  PDF
Allan Kelly.
Overload, 15(81):, October 2007.
When it comes to running a project, one size rarely fits all, but Allan Kelly finds that tailoring a core idea over time has led to repeated success.

[Kelly, 2007]
Creating Awareness  WEB  PDF
Allan Kelly.
Overload, 15(82):, December 2007.
One of the good things about presenting at the ACCU conference is what you learn there. Allan Kelly reviews the results of his last conference talk.

[Kelly, 2008]
Future Workers (Prototype)  WEB  PDF
Allan Kelly.
Overload, 16(83):, February 2008.
What does it mean for IT workers to be prototype knowledge workers?

[Kelly, 2008]
On Management  WEB  PDF
Allan Kelly.
Overload, 16(86):, August 2008.
Management is a vital part of software development. Allan Kelly starts a new series by balancing some constraints.

[Kelly, 2008]
Focus, Quality, Time-boxes and Ducks  WEB  PDF
Allan Kelly.
Overload, 16(87):, October 2008.
Project success depends on organisation. Allan Kelly looks at how to keep things in order.

[Kelly, 2008]
On Management: Understanding Who Creates Software  WEB  PDF
Allan Kelly.
Overload, 16(88):, December 2008.
Software development organizations vary greatly. Allan Kelly considers what this means for managers.

[Kelly, 2009]
On Management: Caveat Emptor  WEB  PDF
Allan Kelly.
Overload, 17(89):, February 2009.
There are many theories and practices of management. Allan Kelly offers some warnings.

[Kelly, 2009]
On Management: Product Managers  WEB  PDF
Allan Kelly.
Overload, 17(90):, April 2009.
Product Management is a poorly understood activity. Allan Kelly sheds some light on its mysteries.

[Kelly, 2009]
On Management: The Business Analyst's Role  WEB  PDF
Allan Kelly.
Overload, 17(91):, June 2009.
Some management titles are poorly defined. Allan Kelly disentangles a knotty one.

[Kelly, 2010]
“I’m a Business Analyst - Get Me Out Of Here”  WEB  PDF
Allan Kelly.
Overload, 18(98):4-8, August 2010.
Some classic roles are omitted by Agile methodologies. Allan Kelly considers how a Business Analyst fits in.

[Kelly, 2011]
The Agile 10 Steps Model  WEB  PDF
Allan Kelly.
Overload, 19(101):16-19, February 2011.
Technical processes have tended to dominate agile thinking. Allan Kelly looks at the wider picture.

[Kelly, 2011]
The Agile Spectrum  WEB  PDF
Allan Kelly.
Overload, 19(102):14-17, April 2011.
Very few teams are truly Agile. Allan Kelly looks at the range of styles.

[Kelly, 2011]
Integrating Testers Into An Agile Team  WEB  PDF
Allan Kelly.
Overload, 19(104):7-9, August 2011.
Agile has usually concentrated on how to organise developers. Allan Kelly shows how testers fit in.

[Kelly, 2012]
Software Developer Business Patterns  WEB  PDF
Allan Kelly.
Overload, 20(111):21-24, October 2012.
Patterns can be applied to business as well as software. Allan Kelly shows us how.

[Kelly, 2018]
Diseconomies of Scale  WEB  PDF
Allan Kelly.
Overload, 26(148):4-5, December 2018.
Bigger is not always better. Allan Kelly considers when smaller is more productive.

[Kendall, 1995]
Putting Jack in the Box  WEB
Graham Kendall.
Overload, 3(6):, March 1995.

[Keogh, 2019]
Scenarios Using Custom DSLs  WEB  PDF
Liz Keogh.
Overload, 27(153):4-5, October 2019.
Natural-language BDD can be hard to maintain. Liz Keogh demonstrates a simple code-based alternative.

[Kilpeläinen, 2004]
Lvalues and Rvalues  WEB  PDF
Mikael Kilpeläinen.
Overload, 12(61):, June 2004.

[Kilpeläinen, 2005]
Overload Resolution - Selecting the Function  WEB  PDF
Mikael Kilpeläinen.
Overload, 13(66):, April 2005.

[King, 1995]
editor << letters;  PDF
Andrew King.
Overload, 3(11):39-40, December 1995.

[King, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Kirilov, 2017]
doctest - the Lightest C++ Unit Testing Framework  WEB  PDF
Viktor Kirilov.
Overload, 25(137):16-19, February 2017.
C++ has many unit testing frameworks. Viktor Kirilov introduces doctest.

[Knabe, 2011]
The Eternal Battle Against Redundancies, Part I  WEB  PDF
Christoph Knabe.
Overload, 19(106):7-10, December 2011.
The drive to remove redundancies is widely seen as a good thing. Christoph Knabe sees how it has influenced programming languages.

[Knabe, 2012]
The Eternal Battle Against Redundancies, Part 2  WEB  PDF
Christoph Knabe.
Overload, 20(107):20-23, February 2012.
Repeated information leads to poor quality software. Christoph Knabe continues to see how removing them has influenced language design.

[Knatten, 2021]
No Move vs Deleted Move Constructors  WEB  PDF
Anders Knatten.
Overload, 29(166):22-23, December 2021.
C++ allows you to mark constructors as deleted. Anders Knatten reveals what a deleted definition means in practice.

[Knatten, 2019]
lvalues, rvalues, glvalues, prvalues, xvalues, help!  WEB  PDF
Anders Schau Knatten.
Overload, 27(150):7, April 2019.
C++11 introduced new value categories. Anders Schau Knatten explains his way of thinking about them.

[Kozicki, 2018]
Compile-time Data Structures in C++17: Part 1, Set of Types  WEB  PDF
Bronek Kozicki.
Overload, 26(146):23-27, August 2018.
Compile time data structures can speed things up at runtime. Bronek Kozicki details an implementation of a compile time set.

[Kozicki, 2018]
Compile-time Data Structures in C++17: Part 2, Map of Types  WEB  PDF
Bronek Kozicki.
Overload, 26(147):13-16, October 2018.
Compile time type selection allows static polymorphsim. Bronek Kozicki details an implementation of a compile time map.

[Kozicki, 2018]
Compile-time Data Structures in C++17: Part 3, Map of Values  WEB  PDF
Bronek Kozicki.
Overload, 26(148):14-19, December 2018.
A compile time map of values allows code to be tested more easily. Bronek Kozicki demonstrates how to avoid a central repository of values.

[Kozlovski, 2020]
Kafka Acks Explained  WEB  PDF
Slanislav Kozlovski.
Overload, 28(159):8-11, October 2020.
Kafka’s configuration can be confusing. Slanislav Kozlovski helps us visualise this most misunderstood configuration setting.

[Kozlovski, 2018]
A Short Overview of Object Oriented Software Design  WEB  PDF
Stanislav Kozlovski.
Overload, 26(145):9-15, June 2018.
Object oriented design has many principles. Stanislav Kozlovski demonstrates good design through a role playing game.

[Kozlovski, 2019]
A Thorough Introduction to Distributed Systems  WEB  PDF
Stanislav Kozlovski.
Overload, 27(149):24-33, February 2019.
What is a distributed system, and why is it so complicated? Stanislav Kozlovski explains.

[Kozlovski, 2020]
A Thorough Introduction to Apache Kafka  WEB  PDF
Stanislav Kozlovski.
Overload, 28(158):13-19, August 2020.
Kafka serves as the heart of many companies’ architecture. Stanislav Kozlovski takes a deep dive into the system.

[Kuehl, 2003]
A bin Manipulator For IOStreams  WEB  PDF
Dietmar Kuehl.
Overload, 11(55):, June 2003.

[Kyriacou, 1996]
The return type of member functions  PDF
Francis Glassborow, Chris Southern, Klitos Kyriacou.
Overload, 4(15):29-33, August 1996.
C++ Techniques

[Kühl, 2011]
Exception Specifications in C++ 2011  WEB  PDF
Dietmar Kühl.
Overload, 19(103):13-17, June 2011.
The new standard is almost finished. Dietmar Kühl looks at the new exception features.

[Kühl, 2015]
Two Daemons  WEB  PDF
Dietmar Kühl.
Overload, 23(128):8-10, August 2015.
Most people have come across C++11’s forwarding references. Dietmar Kühl explains what && really means.

[Kühl, 2015]
Identify your Errors better with char[]  WEB  PDF
Patrick Martin, Dietmar Kühl.
Overload, 23(130):18-22, December 2015.
Error codes still get used instead of exceptions. Patrick Martin and Dietmar Kühl consider how to use char arrays for better information.

[Law, 2016]
Why Collaboration is Key for QA Teams in an Agile World  WEB  PDF
Greg Law.
Overload, 24(132):12, April 2016.
Agile processes can have an impact on QA departments. Greg Law considers how they can adapt to survive and even thrive.

[Lenton, 1994]
Afterword  WEB
Alan Lenton.
Overload, 2(5):27, September 1994.

[Lever, 1995]
On not mixing it...  PDF
Roger Lever.
Overload, 3(7):32-33, April 1995.

[Lever, 1995]
The case against learning C++ right now - right or wrong?  PDF
Roger Lever.
Overload, 3(8):3-5, June 1995.

[Lever, 1995]
On not mixing it...again  PDF
Roger Lever.
Overload, 3(9):30-33, August 1995.

[Lever, 1995]
Interview with Jiri Soukup by Roger Lever  PDF
Roger Lever.
Overload, 3(9):36-38, August 1995.

[Lever, 1995]
Simple classes for debugging in C++ - part I  PDF
Roger Lever.
Overload, 3(10):21-24, October 1995.
C++ Techniques

[Lever, 1995]
Simple classes for debugging in C++ - Part 2  PDF
Roger Lever.
Overload, 3(11):23-28, December 1995.
C++ Techniques

[Lever, 1996]
Simple classes for debugging in C++ - Part 3  PDF
Roger Lever.
Overload, 4(12):19-22, February 1996.
C++ Techniques

[Lever, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Lever, 1996]
Simple classes - Part 4: Game of Life  PDF
Roger Lever.
Overload, 4(13):11-14, April 1996.
Software Development in C++

[Lever, 1997]
The Uses and Abuses of Inheritance  PDF
Roger Lever, Mark Radford.
Overload, 5(19):6-8, April 1997.
Software Development in C++

[Lever, 1997]
editor << letters;  PDF
Francis Glassborow, Roger Lever.
Overload, 5(19):30-31, April 1997.

[Lever, 1998]
Hotel Case Study Comments  WEB  PDF
Roger Lever.
Overload, 6(27):, August 1998.

[Lewin, 2012]
All About XOR  WEB  PDF
Michael Lewin.
Overload, 20(109):14-19, June 2012.
Boolean operators are the bedrock of computer logic. Michael Lewin investigates a common one and shows there’s more to it than meets the eye.

[Ligum, 1997]
STL Vectors  PDF
Sergey Ignatchenko, Dmitry Ligum.
Overload, 5(23):19-23, December 1997.
C++ Techniques

[Long, 2015]
Faking C Function with fff.h  WEB  PDF
Mike Long.
Overload, 23(125):17-19, February 2015.
Faking functions for testing in C can ease testing. Mike Long overviews a micro-framework for mocking.

[Longshaw, 2009]
The Generation, Management and Handling of Errors (Part 1)  WEB  PDF
Andy Longshaw, Eoin Woods.
Overload, 17(92):, August 2009.
An error handling strategy is important for robustness. Andy Longshore and Eoin Woods present a pattern language.

[Longshaw, 2009]
The Generation, Management and Handling of Errors (Part 2)  WEB  PDF
Andy Longshaw, Eoin Woods.
Overload, 17(93):, October 2009.
Dealing with errors is a vital activity. Andy Longshaw and Eoin Woods conclude their pattern language.

[Love, 2000]
A Fistful Of Idioms - Giving STL Iterators a Base Class  WEB
Steve Love.
Overload, 8(38):, August 2000.

[Love, 2001]
Are You Afraid of The Dark? - Making Sense of the STL  WEB
Steve Love.
Overload, 9(43):, June 2001.

[Love, 2001]
Are You Afraid of The Dark Too? Making More Sense of the STL  WEB
Steve Love.
Overload, 9(44):, August 2001.

[Love, 2006]
A Fistful Of Idioms  WEB  PDF
Steve Love.
Overload, 14(72):, April 2006.

[Love, 2006]
The Rise and Fall of Singleton Threaded  WEB  PDF
Steve Love.
Overload, 14(73):, June 2006.
Steve Love explores how 'Singletons' in design can seem a good idea at the time, why they are generally a mistake, and what to do if you have them.

[Love, 2006]
C# Generics - Beyond Containers of T  WEB  PDF
Steve Love.
Overload, 14(74):, August 2006.
Steve Love takes a look at generics in C# v2.0, how to use them to simplify code and even remove dependencies.

[Love, 2010]
Interface Versioning in C++  WEB  PDF
Steve Love.
Overload, 18(100):22-31, December 2010.
Interface Versioning in C++Updating a widely used DLL interface is non-trivial. Steve Love presents a practical approach.

[Love, 2011]
Some Objects Are More Equal Than Others  WEB  PDF
Steve Love, Roger Orr.
Overload, 19(103):4-9, June 2011.
Comparing objects is a fundamental operation. Steve Love and Roger Orr consider different language approaches.

[Love, 2012]
Many Slices of Pi  WEB  PDF
Steve Love.
Overload, 20(107):6-13, February 2012.
Many numberic estimation techniques are easily parallelisable. Steve Love employs multi-threading, message passing, and more in search of Pi.

[Love, 2013]
Secrets of Testing WCF Services  WEB  PDF
Steve Love.
Overload, 21(113):16-23, February 2013.
WCF services provide middleware for applications but can be hard to test. Steve Love describes a way to develop a testable app.

[Love, 2013]
C++ Range and Elevation  WEB  PDF
Steve Love.
Overload, 21(117):28-36, October 2013.
C++ provides many features for higher-level programming, but lacks some common ones present in other languages.

[Love, 2016]
A Lifetime In Python  WEB  PDF
Steve Love.
Overload, 24(133):8-11, June 2016.
Resource management is important in any language. Steve Love demonstrates how to use context managers in Python.

[Love, 2020]
The Path of Least Resistance  WEB  PDF
Steve Love.
Overload, 28(155):8-13, February 2020.
Python’s modules and imports can be overwhelming. Steve Love attempts to de-mystify the process.

[Love, 2020]
Pass the Parcel  WEB  PDF
Steve Love.
Overload, 28(156):4-9, April 2020.
Python’s module and package system has many features. Steve Love explores some more advanced ones.

[Love, 2020]
Some Objects Are More Equal Than Others  WEB  PDF
Steve Love, Roger Orr.
Overload, 28(157):11-15, June 2020.
Comparing objects is a fundamental operation. Steve Love and Roger Orr consider different language approaches.

[Love, 2021]
Amongst Our Weaponry  WEB  PDF
Steve Love.
Overload, 29(162):4-11, April 2021.
Records in C# v9.0 and .Net 5.0. Steve Love explains a new way to define types in C#.

[Love, 2023]
Incompatible Language Features in C#  WEB  PDF
Steve Love.
Overload, 31(175):8-10, June 2023.
Adding features to an established language can introduce sources of errors. Steve Love examines some of the pitfalls of combining positional record structs with automatic property initializers.

[Love, 2023]
C# v12 Primary Constructors  WEB  PDF
Steve Love.
Overload, 31(177):14-16, October 2023.
C# v12.0, part of .NET 8, introduces a feature called Primary Constructors. Steve Love investigates how they fit into the language ecosystem.

[Lubenska, 2019]
Trip Reports: Meeting C++ 2019 and Embedded C++ 2019  WEB  PDF
Svitlana Lubenska, Hans Vredeveld, Benedikt Mandelkow.
Overload, 27(154):4-7, December 2019.
Deciding which conferences to attend is difficult, and we can’t go to them all. Svitlana Lubenska, Hans Vredeveld and Benedikt Mandelkow give us a flavour of what we may have missed.

[López Muñoz, 2022]
Advancing the State of the Art for std::unordered_map Implementations  WEB  PDF
Joaquín M López Muñoz.
Overload, 30(170):7-9, August 2022.
Unordered maps can be implemented in various ways. Joaquín M López Muñoz presents a new, fast version.

[Macias, 2017]
A C++ Developer Sees Rustlang for the First Time  WEB  PDF
Katarzyna Macias.
Overload, 25(140):12-13, August 2017.
Katarzyna Macias provides an introduction to Rust for a C++ developer.

[Main, 2002]
Programming with Interfaces in C++  WEB  PDF
Chris Main.
Overload, 10(49):, June 2002.

[Main, 2003]
Implementing the Bridge pattern using templates with Microsoft Visual C++ 6.0  WEB  PDF
Chris Main.
Overload, 11(54):, April 2003.

[Main, 2004]
A Template Programmer's Struggles Revisited  WEB  PDF
Chris Main.
Overload, 12(62):, August 2004.

[Main, 2007]
C++ Unit Test Frameworks  WEB  PDF
Chris Main.
Overload, 15(78):, April 2007.
There are many Unit Testing frameworks for C++, but which one to use? Chris Main shares his experience of some of them.

[Mancuso, 2004]
Letters to the Editor  WEB  PDF
Renato Mancuso.
Overload, 12(62):, August 2004.

[Mandelkow, 2019]
Trip Reports: Meeting C++ 2019 and Embedded C++ 2019  WEB  PDF
Svitlana Lubenska, Hans Vredeveld, Benedikt Mandelkow.
Overload, 27(154):4-7, December 2019.
Deciding which conferences to attend is difficult, and we can’t go to them all. Svitlana Lubenska, Hans Vredeveld and Benedikt Mandelkow give us a flavour of what we may have missed.

[Maness, 2018]
Cache-Line Aware Data Structures  WEB  PDF
Wesley Maness, Richard Reich.
Overload, 26(146):4-7, August 2018.
Structuring your program to consider memory can improve performance. Wesley Maness and Richard Reich demonstrate this with a producer-consumer queue.

[Maness, 2018]
Measuring Throughput and the Impact of Cache-line Awareness  WEB  PDF
Richard Reich, Wesley Maness.
Overload, 26(148):27-31, December 2018.
How do you measure throughput? Richard Reich and Wesley Maness investigate suitable metrics.

[Maness, 2019]
A Low-Latency Logging Framework  WEB  PDF
Wesley Maness, Richard Reich.
Overload, 27(152):4-8, August 2019.
Logging can be a bottleneck in systems. Wesley Maness and Richard Reich demonstrate a low-latency logging framework that avoids common problems.

[Marlow, 2007]
FRUCTOSE - a C++ Unit Test Framework  WEB  PDF
Andrew Marlow.
Overload, 15(77):, February 2007.
Andrew Marlow describes the development of FRUCTOSE and how it is different from other unit test frameworks.

[Marquardt, 2008]
Performitis  WEB  PDF
Klaus Marquardt.
Overload, 16(85):, June 2008.
Patterns try to solve problems. Klaus Marquardt looks at one from a medical perspective.

[Marquardt, 2008]
Performitis - Part 2  WEB  PDF
Klaus Marquardt.
Overload, 16(86):, August 2008.
Software problems have much in common with diseases. Klaus Marquardt has a diagnosis and offers some treatments.

[Marquardt, 2008]
Performitis (Part 3)  WEB  PDF
Klaus Marquardt.
Overload, 16(87):, October 2008.
Prevention is better than cure. Klaus Marquardt suggests some treatments to avoid problems.

[Martin, 2015]
Identify your Errors better with char[]  WEB  PDF
Patrick Martin, Dietmar Kühl.
Overload, 23(130):18-22, December 2015.
Error codes still get used instead of exceptions. Patrick Martin and Dietmar Kühl consider how to use char arrays for better information.

[Martin, 2016]
The Tao of Scratch  WEB  PDF
Patrick Martin.
Overload, 24(132):4-7, April 2016.
Scratch is an environment designed to help young people learn to code. Patrick Martin walks us through it.

[Martin, 2016]
Eight Rooty Pieces  WEB  PDF
Patrick Martin.
Overload, 24(135):8-12, October 2016.
Finding a square root is a common interview question. Patrick Martin demonstrates eight different ways to find a root.

[Martin, 2019]
I Come Here Not to Bury Delphi, But to Praise It  WEB  PDF
Patrick Martin.
Overload, 27(153):10-14, October 2019.
What helps a programming language gain traction? Patrick Martin remembers why he used to use Delphi.

[Matthews, 1999]
When's an object not an object?  WEB
Hubert Matthews.
Overload, 7(34):, December 1999.

[Matthews, 2003]
CheckedInt: A Policy-Based Range-Checked Integer  WEB  PDF
Hubert Matthews.
Overload, 11(58):, December 2003.

[Matthews, 2007]
Exceptional Design  WEB  PDF
Hubert Matthews.
Overload, 15(77):, February 2007.
Hubert Matthews discusses some ways to design programs to use exceptions.

[Matthews, 2007]
Letters to the Editor  WEB  PDF
Raoul Gough, Hubert Matthews, Peter Sommerlad.
Overload, 15(78):, April 2007.

[Maudel, 2013]
Demons May Fly Out Of Your Nose  WEB  PDF
Olve Maudel.
Overload, 21(115):12-13, June 2013.
Language standards give guarantees about valid program behaviour. Olve Maudel discovers what happens if you break your end of the bargain.

[McArdell, 2017]
C++11 (and beyond) Exception Support  WEB  PDF
Ralph McArdell.
Overload, 25(141):24-31, October 2017.
Ralph McArdell gives a comprehensive overview of C++ exception features.

[McArdell, 2022]
An Associative Container for Non-bash Shell Scripts  WEB  PDF
Ralph McArdell.
Overload, 30(167):9-15, February 2022.
Basic shell facilities don’t provide associative containers. Ralph McArdell shows you what to do if you need one.

[McGuiness, 2012]
A DSEL for Addressing the Problems Posed by Parallel Architectures  WEB  PDF
Jason McGuiness, Colin Egan.
Overload, 20(111):13-18, October 2012.
Programming parallel algorithms correctly is hard. Jason McGuiness and Colin Egan demonstrate how a C++ DESEL can make it simpler.

[McHugh, 2016]
Hello World in Go  WEB  PDF
Eleanor McHugh.
Overload, 24(136):25-35, December 2016.
Go provides a way to write efficient concurrent programs in a C-like language. Eleanor McHugh shares a "Hello, world!" tutorial.

[Melinte, 2024]
Formal Verification  WEB  PDF
Aurelian Melinte.
Overload, 32(183):4-6, October 2024.
Proving code is correct is challenging. Aurelian Melinte explores verification, the most ignored area of software engineering.

[Merrells, 1997]
Editorial  PDF
John Merrells.
Overload, 5(20):3-4, June 1997.

[Merrells, 1997]
Whiteboard  PDF
John Merrells.
Overload, 5(20):35-36, June 1997.

[Merrells, 1997]
Editorial  PDF
John Merrells.
Overload, 5(21):3, August 1997.

[Merrells, 1997]
Whiteboard  PDF
John Merrells.
Overload, 5(21):20-21, August 1997.
Whiteboard

[Merrells, 1997]
Object Counting  PDF
John Merrells.
Overload, 5(21):24-27, August 1997.
Whiteboard

[Merrells, 1997]
Editorial  PDF
John Merrells.
Overload, 5(22):3-4, October 1997.

[Merrells, 1997]
editor << letters;  PDF
John Merrells, The Harpist, George Wendle, Francis Glasborow, Chris Southern.
Overload, 5(22):, October 1997.

[Merrells, 1998]
Editorial  PDF
John Merrells.
Overload, 6(25):, April 1998.

[Merrells, 1998]
Broadening  PDF
John Merrells.
Overload, 6(26):1, June 1998.
Editorial

[Merrells, 1998]
Editorial  WEB  PDF
John Merrells.
Overload, 6(27):, August 1998.

[Merrells, 1998]
Beyond ACCU... Patterns on the 'net  WEB  PDF
John Merrells.
Overload, 6(27):, August 1998.

[Merrells, 1998]
Editorial  WEB
John Merrells.
Overload, 6(28):, October 1998.

[Merrells, 1998]
Beyond ACCU... Java on the 'net  WEB
John Merrells.
Overload, 6(28):, October 1998.

[Merrells, 1998]
Editorial  WEB
John Merrells.
Overload, 6(29):, December 1998.

[Merrells, 1998]
Beyond ACCU... Patterns on the 'net  WEB
John Merrells.
Overload, 6(29):, December 1998.

[Merrells, 1999]
Editorial  WEB
John Merrells.
Overload, 7(30):, February 1999.

[Merrells, 1999]
Editorial  WEB
John Merrells.
Overload, 7(33):, October 1999.

[Merrells, 1999]
XML  WEB
John Merrells.
Overload, 7(34):, December 1999.

[Merrells, 1999]
Editorial  WEB
John Merrells.
Overload, 7(34):, December 1999.

[Merrells, 2000]
editorial  WEB
John Merrells.
Overload, 8(35):, February 2000.

[Merrells, 2000]
Editorial  WEB
John Merrells.
Overload, 8(38):, August 2000.

[Merrells, 2000]
Editorial  WEB
John Merrells.
Overload, 8(39):, October 2000.

[Merrells, 2000]
editorial: Concerning Patents  WEB
John Merrells.
Overload, 8(40):, December 2000.

[Merrells, 2001]
Editorial  WEB
John Merrells.
Overload, 9(41):, February 2001.

[Merrells, 2001]
Editorial  WEB
John Merrells.
Overload, 9(42):, April 2001.

[Merrells, 2001]
Editorial  WEB
John Merrells.
Overload, 9(43):, June 2001.

[Merrells, 2001]
Editorial  WEB
John Merrells.
Overload, 9(44):, August 2001.

[Merrells, 2001]
Editorial  WEB
John Merrells.
Overload, 9(45):, October 2001.

[Merrells, 2001]
Editorial - Coming Home  WEB
John Merrells.
Overload, 9(46):, December 2001.

[Merrells, 2002]
Editorial: Product Definition  WEB  PDF
John Merrells.
Overload, 10(47):, February 2002.

[Merrells, 2002]
Editorial  WEB  PDF
John Merrells.
Overload, 10(48):, April 2002.

[Merrells, 2002]
Editorial  WEB  PDF
John Merrells.
Overload, 10(49):, June 2002.

[Merrells, 2002]
Editorial  WEB  PDF
John Merrells.
Overload, 10(50):, August 2002.

[Merrells, 2002]
Editorial - Software Quality  WEB  PDF
John Merrells.
Overload, 10(51):, October 2002.

[Merrells, 2002]
Editorial - On Writing  WEB  PDF
John Merrells.
Overload, 10(52):, December 2002.

[Merrells, 2003]
Editorial  WEB  PDF
John Merrells.
Overload, 11(53):, February 2003.

[Merrells, 2003]
Editorial  WEB  PDF
John Merrells.
Overload, 11(54):, April 2003.

[Mertz, 2016]
Modern C++ Features: User-Defined Literals  WEB  PDF
Arne Mertz.
Overload, 24(136):18-19, December 2016.
User-defined literals were introduced in C++11. Arne Mertz walks us through their use.

[Mertz, 2023]
Passkey Idiom: A Useful Empty Class  WEB  PDF
Arne Mertz.
Overload, 31(176):18-19, August 2023.
How do you share some but not all of a class? Arne Mertz introduces the passkey idiom to avoid exposing too much with friendship.

[Mertz, 1996]
editor << letters;  PDF
Francis Glassborow, Kevlin A. P. Henney, Colin Hersom, Graham Jones, Phil Bass, Steve Mertz, Walter Brown.
Overload, 4(16):19-24, October 1996.

[Meyers, 2012]
Universal References in C++11  WEB  PDF
Scott Meyers.
Overload, 20(111):8-12, October 2012.
C++11 provides a new reference syntax, T&&. Scott Meyers explains that it doesn’t always mean ‘rvalue reference’.

[Microsoft, 1994]
Microsoft Visual C++ Strategy  WEB
Microsoft.
Overload, 2(5):21-27, September 1994.

[Midgley, 1995]
editor << letters;  PDF
Dave Midgley.
Overload, 3(7):37, April 1995.

[Midgley, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Midgley, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Midgley, 1996]
editor << letters;  PDF
Sean A. Corfield, Peter Wippell, Dave Midgley, Roger Woollett, The Harpist.
Overload, 4(13):30-31, April 1996.

[Midgly, 2001]
Editor << letters;  WEB
Dave Midgly.
Overload, 9(42):, April 2001.

[Mill, 2014]
Defining Visitors Inline in Modern C++  WEB  PDF
Robert Mill, Jonathan Coe.
Overload, 22(123):17-19, October 2014.
Robert Mill and Jonathan Coe present an inline visitor in C++.

[Mill, 2016]
Polymorphic Comparisons  WEB  PDF
Robert Mill.
Overload, 24(135):13-15, October 2016.
Polymorphic comparisons require much boilerplate. Robert Mill and Jonathan Coe introduce a template utility for such comparisons.

[Miller, 2006]
Recursive Make Considered Harmful  WEB  PDF
Peter Miller.
Overload, 14(71):20-30, February 2006.

[Mirwaisi, 2003]
A Policy-Driven CORBA Template Library to Facilitate the Rapid Development of DOC Middleware  WEB  PDF
Jeff Mirwaisi.
Overload, 11(57):, October 2003.

[Modén, 2019]
The Duality…  WEB  PDF
Anders Modén.
Overload, 27(150):14-23, April 2019.
Genetic algorithms can find solutions that other algorithms might miss. Anders Modén discusses their use in conjunction with back-propagation for finding better solutions.

[Moene, 2010]
One Approach to Using Hardware Registers in C++  WEB  PDF
Martin Moene.
Overload, 18(95):, February 2010.
Testing increases software reliability. Martin Moene presents a technique for checking the control of hardware.

[Moene, 2014]
Static Polymorphic Named Parameters in C++  WEB  PDF
Martin Moene.
Overload, 22(119):4-6, February 2014.
Adding parameters to an object can be messy. Martin Moene demonstrates how method chaining can make code more readable.

[Moene, 2014]
Search with CppCheck  WEB  PDF
Martin Moene.
Overload, 22(120):23-25, April 2014.
Finding code of interest is a vital skill but our tools are often too simple. Martin Moene tries something better.

[Moffatt, 1996]
Explorations around a linked list  PDF
Peter Moffatt.
Overload, 4(15):6-11, August 1996.
Software Development in C++

[Müller, 2022]
saturating_add vs. saturating_int – New Function vs. New Type?  WEB  PDF
Jonathan Müller.
Overload, 30(170):4-6, August 2022.
Integer arithmetic tends to overflow. Jonathan Müller explores when and how to avoid this.

[Nadle, 2003]
A C++ Petri Net Framework For Multithreaded Programming  WEB  PDF
David L. Nadle.
Overload, 11(54):, April 2003.

[Nash, 2015]
Modern C++ Testing  WEB  PDF
Phil Nash.
Overload, 23(125):10-11, February 2015.
Various C++ testing framework exist. Phil Nash compares CATCH with the competition.

[Nash, 2022]
ACCU 2022 Trip Reports  WEB  PDF
Phil Nash, Dom Davis, Hannah Dee, Timur Doumler.
Overload, 30(169):10-15, June 2022.
The ACCU conference returned in hybrid mode this year. Several writers share their experiences.

[Nasonov, 2004]
A Little Detail  WEB  PDF
Alexander Nasonov.
Overload, 12(60):, April 2004.

[Nasonov, 2005]
Better Encapsulation for the Curiously Recurring Template Pattern  WEB  PDF
Alexander Nasonov.
Overload, 13(70):, December 2005.

[Nasonov, 2006]
Fine Tuning for lexical_cast  WEB  PDF
Alexander Nasonov.
Overload, 14(74):, August 2006.
Alexander Nasonov takes a look at Boost's lexical_cast and addresses a common user request: "make it go faster".

[Nasonov, 2006]
The Singleton in C++ - A force for good?  WEB  PDF
Alexander Nasonov.
Overload, 14(76):, December 2006.
Alexander Nasonov addresses some problems that arise when using Singleton in C++.

[Nasonov, 2007]
Letter to the Editor  WEB  PDF
Alexander Nasonov.
Overload, 15(77):, February 2007.
Alexander Nasonov writes more on singleton.

[Neri, 2012]
Complex Logic in the Member Initialiser List  WEB  PDF
Cassio Neri.
Overload, 20(112):8-13, December 2012.
The syntactic form of the member initialiser list restricts the logic that it contains. Cassio Neri presents some techniques to overcome these constraints.

[Neri, 2019]
Quick Modular Calculations (Part 1)  WEB  PDF
Cassio Neri.
Overload, 27(154):11-15, December 2019.
Compilers are good at optimising modular calculations. Can we they do better? Cassio Neri shows they can.

[Neri, 2020]
Quick Modular Calculations(Part 2)  WEB  PDF
Cassio Neri.
Overload, 28(155):14-17, February 2020.
The minverse algorithm previously seen is fast but has limitations. Cassio Neri presents two alternatives.

[Neri, 2020]
Quick Modular Calculations (Part 3)  WEB  PDF
Cassio Neri.
Overload, 28(156):10-13, April 2020.
This article concludes the 3-part series. Cassio Neri presents a new algorithm that also works for 64-bit operands.

[Newton, 1996]
editor << letters;  PDF
Sean A. Corfield, Allan Newton, Graham Jones, Phil Bass, Steven Youngs.
Overload, 4(15):35-36, August 1996.

[Newton, 2000]
Interpreting "Supporting the 'Cheshire Cat' Idiom"  WEB
Alan Griffiths, Allan Newton.
Overload, 8(38):, August 2000.

[Nilsen-Nygaard, 1997]
A Finite State Machine Design  PDF
Einar Nilsen-Nygaard.
Overload, 5(21):21-24, August 1997.
Whiteboard

[Nilsen-Nygaard, 1997]
A Finite State Machine Design II  PDF
Einar Nilsen-Nygaard.
Overload, 5(23):28-34, December 1997.
Whiteboard

[Nilsen-Nygaard, 1999]
Editorial  WEB
Einar Nilsen-Nygaard.
Overload, 7(31):, April 1999.

[Nilsen-Nygaard, 1999]
Editorial  WEB
Einar Nilsen-Nygaard.
Overload, 7(32):, June 1999.

[Noyes, 2014]
Integrating the Catch Test Framework into Visual Studio  WEB  PDF
Malcolm Noyes.
Overload, 22(119):7-10, February 2014.
Visual Studio’s Test Explorer allows native C++ tests to be run under a managed wrapper. Malcolm Noyes takes it a step further using Catch to drive the tests.

[Noyes, 2014]
Alternative Overloads  WEB  PDF
Malcolm Noyes.
Overload, 22(123):8-11, October 2014.
Malcolm Noyes presents ways to return a default value given a condition in C++.

[Nyquist, 1995]
operator= and const - a reply  PDF
Mats Henricson, Erik Nyquist.
Overload, 3(7):18, April 1995.

[O'Neil, 2005]
Two-thirds of a Pimpl and a Grin  WEB  PDF
David O'Neil.
Overload, 13(70):, December 2005.

[Oldwood, 2013]
Utilising More Than 4GB of Memory in 32-bit Windows Process  WEB  PDF
Chris Oldwood.
Overload, 21(113):7-11, February 2013.
Some applications require a vast amount of memory. Chris Oldwood presents techniques to provide extra memory.

[Oldwood, 2013]
Causality - Relating Distributed Diagnostic Contexts  WEB  PDF
Chris Oldwood.
Overload, 21(114):18-23, April 2013.
Supporting a system with many moving parts can be hard. Chris Oldwood demonstrates one way to add tags to log information to aid diagnosis.

[Oldwood, 2013]
Simple Instrumentation  WEB  PDF
Chris Oldwood.
Overload, 21(116):6-10, August 2013.
Programs often run out of memory or grind to a halt. Chris Oldwood demonstrates how to add instrumentation to your code to track its performance.

[Oldwood, 2013]
Migrating from Visual SourceSafe to Git  WEB  PDF
Chris Oldwood.
Overload, 21(118):16-20, December 2013.
Migrating from one version control system to another is a big change. Chris Oldwood records the trials and triumphs of migrating from VSS to git.

[Oldwood, 2014]
Static - A Force for Good and Evil  WEB  PDF
Chris Oldwood.
Overload, 22(120):18-22, April 2014.
We’ve all learnt to avoid the use of the static keyword. Chris Oldwood questions this wisdom.

[Oldwood, 2014]
Branching Strategies  WEB  PDF
Chris Oldwood.
Overload, 22(121):4-7, June 2014.
Branching can either be embraced or avoided. Chris Oldwood documents the pros and cons of three main branching strategies.

[Oldwood, 2014]
KISSing SOLID Goodbye  WEB  PDF
Chris Oldwood.
Overload, 22(122):14-17, August 2014.
Can you remember what SOLID stands for? Chris Oldwood distills it down to two easy to remember principles.

[Oldwood, 2014]
Testing Drives the Need for Flexible Configuration  WEB  PDF
Chris Oldwood.
Overload, 22(124):22-24, December 2014.
Inflexible configuration will cause problems. Chris Oldwood demonstrates how to support multiple configurations flexibly.

[Oldwood, 2015]
Terse Exception Messages  WEB  PDF
Chris Oldwood.
Overload, 23(127):15-17, June 2015.
Log files often contain ‘error’ information. Chris Oldwood suggests they rarely contain anything that could be considered helpful.

[Oldwood, 2016]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 24(133):31-32, June 2016.
Magazines sometimes use the back page for adverts or summaries. Chris Oldwood has decided to provide us with his afterwords, or ‘afterwood’.

[Oldwood, 2016]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 24(134):28, August 2016.
Barriers can cause bottlenecks. Chris Oldwood considers varying approaches to gatekeeping.

[Oldwood, 2016]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 24(135):32, October 2016.
Comedy partnerships have a long history. Chris Oldwood considers their lessons for programmers.

[Oldwood, 2016]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 24(136):30, December 2016.
One JavaScript module was removed and every Node.js build was knocked for six. Chris Oldwood fictionalises the tale.

[Oldwood, 2017]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 25(137):28, February 2017.
Trying to find a good candidate for a role is hard. Chris Oldwood reminisces on various factors that influence interviewers.

[Oldwood, 2017]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 25(139):20, June 2017.
What makes programming fun? Chris Oldwood ponders what floats his boat.

[Oldwood, 2017]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 25(140):28, August 2017.
Chris Oldwood reminds us to fix the problem, not to blame.

[Oldwood, 2017]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 25(141):32, October 2017.
Too soon! Chris Oldwood reviews optimisation in the development process.

[Oldwood, 2017]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 25(142):20, December 2017.
Tabs are controversial. Chris Oldwood reminds us of their many guises.

[Oldwood, 2018]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 26(143):24, February 2018.
Can you code on paper in an interview? Chris Oldwood recounts his attempts to write a calendar.

[Oldwood, 2018]
Monitoring: Turning Noise into Signal  WEB  PDF
Chris Oldwood.
Overload, 26(144):8-11, April 2018.
Creating useful logging is a constant challenge. Chris Oldwood shows us how structured logging helps.

[Oldwood, 2018]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 26(145):16, June 2018.
The curse of Agile. Chris Oldwood outlines how it affects his day at work.

[Oldwood, 2018]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 26(146):28, August 2018.
Much ado about nothing. Chris Oldwood considers what we have when we have nothing.

[Oldwood, 2018]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 26(148):32, December 2018.
Renovation or redecorating throws up decisions. Chris Oldwood reminds us to make sympathetic changes.

[Oldwood, 2019]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 27(149):36, February 2019.
Good workers tidy up after themselves – it avoids accidents and makes them more productive. Chris Oldwood argues that good software developers should do the same.

[Oldwood, 2019]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 27(151):20, June 2019.
There are parallels between writing and programming. Chris Oldwood shares his journey into learning to write well.

[Oldwood, 2019]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 27(152):20, August 2019.
Many people are risk-averse. Chris Oldwood considers this position – in verse.

[Oldwood, 2019]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 27(153):20, October 2019.
People claim politics should not be discussed in polite circles. Chris Oldwood reconsiders.

[Oldwood, 2019]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 27(154):16, December 2019.
We are aware of the film Get Carter. Chris Oldwood asks if it should be called Acquire Carter instead.

[Oldwood, 2020]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 28(155):20, February 2020.
The centre half is more than a sporting term. Chris Oldwood shows us why.

[Oldwood, 2020]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 28(157):16, June 2020.
Mission statements are all the rage. Chris Oldwood considers whether there are any benefits to omission statements.

[Oldwood, 2020]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 28(158):24, August 2020.
Mind your language! Chris Oldwood recounts a Stack Overflow comment that got him thinking.

[Oldwood, 2020]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 28(159):35-36, October 2020.
Assume failure by default. Chris Oldwood considers various fail cases.

[Oldwood, 2020]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 28(160):20, December 2020.
Design Patterns emerged last century. Chris Oldwood explains why he thinks they are still relevant.

[Oldwood, 2021]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 29(161):16, February 2021.
Think you’ve learnt it all? Chris Oldwood reminds us that unlearning then becomes our next problem.

[Oldwood, 2021]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 29(164):24, August 2021.
Git is not universally loved. Chris Oldwood suggests that Git itself is not the problem.

[Oldwood, 2021]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 29(165):20, October 2021.
It’s useful to step back and evaluate from time to time. Chris Oldwood reflects on reflection.

[Oldwood, 2021]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 29(166):24, December 2021.
Players in Escape Rooms are set puzzles to be solved in order to win. Chris Oldwood reminisces on old childhood games as inspiration for various programming puzzles.

[Oldwood, 2022]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 30(167):20, February 2022.
Humans are fallible and frequently confused by seeming paradoxes. Chris Oldwood reminds us to question our assumptions and try to think straight.

[Oldwood, 2022]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 30(169):16, June 2022.
Threads can mean many things. Chris Oldwood pulls a few to see what happens.

[Oldwood, 2022]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 30(170):16, August 2022.
What’s your legacy? Chris Oldwood considers what we can leave to make life better for others.

[Oldwood, 2022]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 30(171):16, October 2022.
War and Peace is a famously long novel that mixes fiction with history and philosophy. Chris Oldwood muses on the categorisation of computing books – and where to put them.

[Oldwood, 2022]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 30(172):28, December 2022.
Pun and Dad jokes are lots of fun. Chris Oldwood git-pull’s a cracker.

[Oldwood, 2023]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 31(173):20, February 2023.
Meetings come and go. Chris Oldwood asks us to meet him halfway.

[Oldwood, 2023]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 31(175):19-20, June 2023.
Quotes and aphorisms are often used to emphasise a point. Chris Oldwood shares some of his favourites and considers their origins.

[Oldwood, 2023]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 31(176):24, August 2023.
Open source code has a long history. Chris Oldwood tells us how he discovered open source and got his first role as a software maintainer.

[Oldwood, 2023]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 31(177):20, October 2023.
What’s in a name? Chris Oldwood considers metaphors as inspiration for naming in code.

[Oldwood, 2023]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 31(178):16, December 2023.
Halloween has been and gone. Chris Oldwood therefore takes time to consider the ghosts in the machine.

[Oldwood, 2024]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 32(179):16, February 2024.
Over-thinking is not over-engineering. Chris Oldwood presents some thought experiments to demonstrate why.

[Oldwood, 2024]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 32(181):28, June 2024.
What do you do when a software system goes wrong? Chris Oldwood discusses designing for supportability.

[Oldwood, 2024]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 32(182):16, August 2024.
Have things become unnecessarily complicated? Chris Oldwood is testing simplicity.

[Oldwood, 2024]
Afterwood  WEB  PDF
Chris Oldwood.
Overload, 32(183):24, October 2024.
Many programming books are regarded as classics. Chris Oldwood shares the joy of re-reading some of them.

[Oliva, 2014]
Minimal Overhead for Multiple Interfaces  WEB  PDF
Daniel Gutson, Pablo Oliva.
Overload, 22(121):14-16, June 2014.
Using multiple interfaces can slow things down. Daniel Gutson and Pablo Oliva present an alternative.

[Orr, 2004]
Efficient Exceptions?  WEB  PDF
Roger Orr.
Overload, 12(61):, June 2004.

[Orr, 2004]
Microsoft Visual C++ and Win32 Structured Exception Handling  WEB  PDF
Roger Orr.
Overload, 12(63):, October 2004.
Source: Microsoft Visual c++, structured exception handling.

[Orr, 2005]
Microsoft Symbol Engine  WEB  PDF
Roger Orr.
Overload, 13(67):, June 2005.

[Orr, 2005]
Investigating Java Class Loading  WEB  PDF
Roger Orr.
Overload, 13(68):, August 2005.

[Orr, 2007]
Release Mode Debugging  WEB  PDF
Roger Orr.
Overload, 15(80):, August 2007.
Although we try not to put bugs into software, sometimes we must track them down to remove them. Roger Orr considers the difficulties when they can only be seen in release builds.

[Orr, 2007]
Java Protocol Handlers  WEB  PDF
Roger Orr.
Overload, 15(82):, December 2007.
Roger Orr demonstrates the use of Java's URL handling to make code independent of the source of data.

[Orr, 2008]
When Things Go Wrong  WEB  PDF
Roger Orr.
Overload, 16(83):, February 2008.
Can we reduce the pain of computer problems?

[Orr, 2011]
Some Objects Are More Equal Than Others  WEB  PDF
Steve Love, Roger Orr.
Overload, 19(103):4-9, June 2011.
Comparing objects is a fundamental operation. Steve Love and Roger Orr consider different language approaches.

[Orr, 2013]
Auto - A Necessary Evil?  WEB  PDF
Roger Orr.
Overload, 21(115):4-7, June 2013.
Superficially simple language features can be surprisingly complicated. Roger Orr explores a new one that is likely to be used widely.

[Orr, 2013]
Auto - a necessary evil? (Part 2)  WEB  PDF
Roger Orr.
Overload, 21(116):21-24, August 2013.
Should you declare (almost) everything auto? Roger Orr considers when auto is appropriate.

[Orr, 2014]
Windows 64-bit Calling Conventions  WEB  PDF
Roger Orr.
Overload, 22(120):26-31, April 2014.
How the stack works is useful to understanding your programs’ behaviour. Roger Orr compares and contrasts.

[Orr, 2014]
Order Notation in Practice  WEB  PDF
Roger Orr.
Overload, 22(124):14-20, December 2014.
What does complexity measurement mean? Roger Orr reminds us of the academic definition and looks at some real life situations.

[Orr, 2016]
Concepts Lite in Practice  WEB  PDF
Roger Orr.
Overload, 24(133):24-30, June 2016.
Concepts should make templates easier to use and write. Roger Orr gives a practical example to show this.

[Orr, 2018]
CTAD - What Is This New Acronym All About?  WEB  PDF
Roger Orr.
Overload, 26(143):13-15, February 2018.
What is class template argument deduction? Roger Orr elucidates this new C++17 feature.

[Orr, 2020]
Some Objects Are More Equal Than Others  WEB  PDF
Steve Love, Roger Orr.
Overload, 28(157):11-15, June 2020.
Comparing objects is a fundamental operation. Steve Love and Roger Orr consider different language approaches.

[Orr, 2020]
Building g++ From the GCC Modules Branch  WEB  PDF
Roger Orr.
Overload, 28(160):8-9, December 2020.
Using the WSL to build the g++ modules branch. Roger Orr demonstrates how to get a compiler that supports modules up and running.

[Orr, 2021]
Showing Variables Using the Windows Debugging API  WEB  PDF
Roger Orr.
Overload, 29(165):4-12, October 2021.
Debuggers use deep magic to help us out. Roger Orr explores how this magic is performed.

[Oualline, 1996]
Practical C++ Programming a response from Steve Oualline  PDF
Steve Oualline.
Overload, 4(14):20, June 1996.
Reviews

[Overload, 2007]
Guidelines for Contributors  WEB  PDF
Overload.
Overload, 15(80):, August 2007.
Thinking of writing for us? Follow these guidelines to help smooth the way.

[Page, 1993]
Starting out with OWL  WEB
Steve Page.
Overload, 1(1):, April 1993.

[Pallastrelli, 2018]
Flip Model: A Design Pattern  WEB  PDF
Daniele Pallastrelli.
Overload, 26(148):6-9, December 2018.
Publishing dynamic, complex data to many clients in a threadsafe manner is challenging. Daniele Pallastrelli presents the Flip model pattern to overcome the challenges.

[Pamudurthy, 2017]
A Functional Alternative to Dependency Injection in C++  WEB  PDF
Satprem Pamudurthy.
Overload, 25(140):22-24, August 2017.
Satprem Pamudurthy showcases a functional alternative to dependency injection in C++.

[Pamudurthy, 2017]
Polymorphism in C++ - A Type Compatibility View  WEB  PDF
Satprem Pamudurthy.
Overload, 25(141):14-17, October 2017.
Satprem Pamudurthy compiles an exhaustive matrix of polymorphism.

[Parkin, 2004]
Garbage Collection and Object Lifetime  WEB  PDF
Ric Parkin.
Overload, 12(63):, October 2004.

[Parkin, 2007]
While the Cat's Away...  WEB  PDF
Ric Parkin.
Overload, 15(81):, October 2007.
...instead of spending your time playing, why not learn to be multi-lingual in a multi-cultural world?

[Parkin, 2008]
Plus ça change  WEB  PDF
Ric Parkin.
Overload, 16(85):, June 2008.
Our job titles seem to be dictated as much by fashion as by anything else. Does it matter? It does to some. Oh, and Overload has a new editor.

[Parkin, 2008]
It's good to talk...  WEB  PDF
Ric Parkin.
Overload, 16(86):, August 2008.
Writing code is only part of developing software.

[Parkin, 2008]
The Invisible Hand  WEB  PDF
Ric Parkin.
Overload, 16(87):, October 2008.
Large groups can behave as one, but how predicatable are they?

[Parkin, 2008]
The Sweet Smell of Success  WEB  PDF
Ric Parkin.
Overload, 16(88):, December 2008.
If your last project wasn't successful, you're not alone...

[Parkin, 2009]
Watt's going on?  WEB  PDF
Ric Parkin.
Overload, 17(89):, February 2009.
Just how much power are you using...

[Parkin, 2009]
Back to School  WEB  PDF
Ric Parkin.
Overload, 17(90):, April 2009.
Much is made of the Knowledge Economy. But just how can you keep up to date?

[Parkin, 2009]
A Good Craftsman Knows His Tools  WEB  PDF
Ric Parkin.
Overload, 17(91):, June 2009.
Are you using the right ones? Ric Parkin looks in his toolbox...

[Parkin, 2009]
Moments in History  WEB  PDF
Ric Parkin.
Overload, 17(92):, August 2009.
Technology shapes our world. Ric Parkin looks back at 40 years of change.

[Parkin, 2009]
All together now.  WEB  PDF
Ric Parkin.
Overload, 17(93):, October 2009.
Can you do several things at once? Ric Parkin tries multi-tasking.

[Parkin, 2010]
Back To The Future  WEB  PDF
Ric Parkin.
Overload, 18(95):, February 2010.
The last decade has seen huge changes. Ric Parkin looks at technology and its effects.

[Parkin, 2010]
Dealing with Growing Pains  WEB  PDF
Ric Parkin.
Overload, 18(96):, April 2010.
Expanding your team is never easy. Ric Parkin experiences the recruiting process.

[Parkin, 2010]
The Art of the Possible  WEB  PDF
Ric Parkin.
Overload, 18(97):, June 2010.
In polite company you should never talk about religion or politics. Ric Parkin makes an exception.

[Parkin, 2010]
A Little Learning Is A Dangerous Thing  WEB  PDF
Ric Parkin.
Overload, 18(98):2-3, August 2010.
An opportunity for nostalgia triggers some musings on the value of education. Ric Parkin goes back to school.

[Parkin, 2010]
Lies, Damn Lies, and Statistics  WEB  PDF
Ric Parkin.
Overload, 18(99):2-3, October 2010.
Making a good decision is vital. Ric Parkin looks at what information we use.

[Parkin, 2010]
Numbers and The Appliance of Science  WEB  PDF
Ric Parkin.
Overload, 18(100):2-3, December 2010.
How sure are you of something? Ric Parkin considers how we build models, and celebrates a milestone.

[Parkin, 2011]
Ah! The fog is lifting!  WEB  PDF
Ric Parkin.
Overload, 19(101):2-3, February 2011.
Futurology has a dismal track record. Ric Parkin looks at the history of technology predictions.

[Parkin, 2011]
This Year’s Model  WEB  PDF
Ric Parkin.
Overload, 19(102):2, April 2011.
Design and development requires us to think about the world. Ric Parkin considers some ways of coping with the complexity.

[Parkin, 2011]
Can you keep a secret?  WEB  PDF
Ric Parkin.
Overload, 19(103):2, June 2011.
Privacy and security have been in the news a lot recently. Ric Parkin looks behind the curtain.

[Parkin, 2011]
Rise of the Machines  WEB  PDF
Ric Parkin.
Overload, 19(104):2, August 2011.
Been having trouble with technology or simple devices? Ric Parkin fears for our future

[Parkin, 2011]
A Journey Through History  WEB  PDF
Ric Parkin.
Overload, 19(105):2-3, October 2011.
Despite early pioneers, the computer revolution is relatively young. Ric Parkin takes a personal tour.

[Parkin, 2011]
Patently Ridiculous!  WEB  PDF
Ric Parkin.
Overload, 19(106):2, December 2011.
Software patents have a chequered history. Ric Parkin looks at some of the problems.

[Parkin, 2012]
Many Hands Make Light Work  WEB  PDF
Ric Parkin.
Overload, 20(107):2-3, February 2012.
Some people say the parallel revolution is coming. Ric Parkin argues it’s in full swing.

[Parkin, 2012]
The Computing Revolution Will Be Televised (Again)  WEB  PDF
Ric Parkin.
Overload, 20(108):2-3, April 2012.
30 years ago we had to plug our first computers into the TV. Ric Parkin looks at how far we’ve come since then.

[Parkin, 2012]
It’s Not What You Know, It’s Who You Know Most human endeavours are not solitary pursuits.  WEB  PDF
Ric Parkin.
Overload, 20(109):2, June 2012.
Ric Parkin looks at the interconnection of everyone.

[Parkin, 2013]
Fantasy Languages  WEB  PDF
Ric Parkin.
Overload, 21(115):2-3, June 2013.
Software is all about describing a solution to a computer. Ric Parkin imagines what his ideal dialect would sound like.

[Parkin, 2014]
Editorial: Your Life in Their Hands  WEB  PDF
Ric Parkin.
Overload, 22(120):2-3, April 2014.
We leave an increasingly detailed digital footprint. Ric Parkin worries who can see it.

[Parking, 2009]
A Crack in Time  WEB  PDF
Ric Parking.
Overload, 17(94):2, December 2009.
Encoding messages has a long history. Ric Parking looks back at how this affected computing.

[Peck, 2014]
People of the .Doc  WEB  PDF
Andrew Peck.
Overload, 22(124):21, December 2014.
Technical communication is often misunderstood by the world at large. Andrew Peck breaks down the rhetoric from a technical author’s perspective.

[Penhey, 2005]
With Spirit  WEB  PDF
Tim Penhey.
Overload, 13(69):, October 2005.

[Penhey, 2006]
Dead Code  WEB  PDF
Tim Penhey.
Overload, 14(71):13-15, February 2006.

[Penhey, 2006]
Multithreading 101  WEB  PDF
Tim Penhey.
Overload, 14(72):, April 2006.

[Percy, 1996]
Go with the flow  PDF
Richard Percy.
Overload, 4(15):11-15, August 1996.
Software Development in C++

[Percy, 1996]
Go with the flow - part II  PDF
Richard Percy.
Overload, 4(16):8-13, October 1996.
Software Development in C++

[Percy, 1997]
A model for backsolving  PDF
Richard Percy.
Overload, 5(19):24-29, April 1997.
C++ Techniques

[Percy, 1997]
editor << letters;  PDF
Kevlin Henney, Richard Percy, Jonathan Jagger.
Overload, 5(20):36-37, June 1997.

[Petersen, 2006]
Objects for States  WEB  PDF
Adam Petersen.
Overload, 14(73):, June 2006.
Originally captured in Design Patterns, Objects for States is described in close conjunction with the Singleton pattern. This article investigates better alternatives for implementing the pattern in C++.

[Petersen, 2007]
Design in Test-Driven Development  WEB  PDF
Adam Petersen.
Overload, 15(78):, April 2007.
With its roots in Japanese just-in-time manufacturing, Test-Driven Development (TDD) puts the traditional development process on its head. Adam Petersen discusses when to use TDD, how to use it successfully, and its use in up-front design.

[Petersen, 2013]
The Signs of Trouble: On Patterns, Humbleness and Lisp  WEB  PDF
Adam Petersen.
Overload, 21(113):12-13, February 2013.
Patterns can be a controversial topic. Adam Petersen considers their cognitive and social value.

[Petriconi, 2019]
ACCU Conference 2019: Reports  WEB  PDF
Felix Petriconi, Stefan Turalski, Ori Ben-Shir, Mathieu Ropert, Anthony Williams.
Overload, 27(151):13-19, June 2019.
ACCU holds an annual conference. Several attendees tell us what they learnt there this year.

[Petriconi, 2022]
The ACCU Conference  WEB  PDF
Frances Buontempo, Felix Petriconi.
Overload, 30(171):9, October 2022.
Frances Buontempo extols the virtues of attending (or presenting); Felix Petriconi says 'thank you' to Julie Archer.

[Pilgrim, 1998]
Debuggable new and delete, Part Two  PDF
Peter Pilgrim.
Overload, 6(25):29-34, April 1998.
Whiteboard

[Pilgrim, 1997]
Debug new and delete, Preamble  PDF
Peter A. Pilgrim.
Overload, 5(23):34-37, December 1997.
Whiteboard

[Pilgrim, 1998]
Debug new and delete Part 3  WEB
Peter A. Pilgrim.
Overload, 6(29):, December 1998.

[Pilgrim, 2000]
An Implementation of Double Dispatch in Java  WEB
Peter A. Pilgrim.
Overload, 8(36):, April 2000.

[Pinchbeck, 2001]
Thread Pooling: An Investigation  WEB
Antony Pinchbeck.
Overload, 9(41):, February 2001.

[Pinchbeck, 2001]
Typesafe Registry for Windows  WEB
Antony Pinchbeck.
Overload, 9(42):, April 2001.

[Polton, 2010]
The Functional Student: A Game of Six Integers  WEB  PDF
Richard Polton.
Overload, 18(97):, June 2010.
The Countdown numbers game is a popular challenge. Richard Polton tries a new language to solve it.

[Posul, 2000]
File Headers  WEB
Waldo Posul.
Overload, 8(35):, February 2000.

[Poynter, 2004]
Letters to the Editor(s)  WEB  PDF
Ray Poynter.
Overload, 12(60):, April 2004.
Comments on Overload 58 Article 'A Standard Individual: A Licenced Engineer'

[Quintel, 1999]
Garbage Collection Implementation Considerations  WEB
Henrik Quintel.
Overload, 7(30):, February 1999.

[Radford, 1997]
Observations on the Design of an Address Class  PDF
Mark Radford.
Overload, 5(19):4-5, April 1997.
Software Development in C++

[Radford, 1997]
The Uses and Abuses of Inheritance  PDF
Roger Lever, Mark Radford.
Overload, 5(19):6-8, April 1997.
Software Development in C++

[Radford, 1998]
Protecting Member Data's Right to Privacy  PDF
Mark Radford.
Overload, 6(24):28-31, February 1998.
Whiteboard

[Radford, 1999]
Factories in C++: Disposing of the Product  WEB
Mark Radford.
Overload, 7(31):, April 1999.

[Radford, 2001]
Extensibility - A Reason For Using Streams in C++  WEB
Mark Radford.
Overload, 9(41):, February 2001.

[Radford, 2001]
Designing C++ Interfaces - Exception Safety  WEB
Mark Radford.
Overload, 9(43):, June 2001.

[Radford, 2001]
Designing C++ Interfaces - Templates  WEB
Mark Radford.
Overload, 9(44):, August 2001.

[Radford, 2002]
Patterns Collaborations: Observer and Composite  WEB  PDF
Mark Radford.
Overload, 10(51):, October 2002.

[Radford, 2003]
Reshaping an Old Piece of Design  WEB  PDF
Mark Radford.
Overload, 11(56):, August 2003.

[Radford, 2003]
SINGLETON - the anti-pattern!  WEB  PDF
Mark Radford.
Overload, 11(57):, October 2003.

[Radford, 2004]
Editorial  WEB  PDF
Mark Radford.
Overload, 12(59):, February 2004.

[Radford, 2004]
Editorial  WEB  PDF
Mark Radford.
Overload, 12(60):, April 2004.

[Radford, 2004]
C++ Interface Classes - An Introduction  WEB  PDF
Mark Radford.
Overload, 12(62):, August 2004.

[Radford, 2004]
Editorial: The Buzzword Adoption Pattern?  WEB  PDF
Mark Radford.
Overload, 12(63):, October 2004.

[Radford, 2005]
Separating Interface and Implementation in C++  WEB  PDF
Alan Griffiths, Mark Radford.
Overload, 13(66):, April 2005.

[Radford, 2005]
Taming Complexity: A Class Hierarchy Tale  WEB  PDF
Mark Radford.
Overload, 13(67):, June 2005.

[Radford, 2005]
C++ Interface Classes - Noise Reduction  WEB  PDF
Mark Radford.
Overload, 13(68):, August 2005.
Interface classes are a principle mechanism for separating a class' interface from its implementation in C++. I wrote an introduction to interface classes in a previous article. In this article, I intend to explore interface classes - and their implementation classes - further.

[Radford, 2006]
Friend or Foe!  WEB  PDF
Mark Radford.
Overload, 14(71):18-19, February 2006.

[Radford, 2006]
C++ Interface Classes - Strengthening Encapsulation  WEB  PDF
Mark Radford.
Overload, 14(76):, December 2006.
Mark looks at the separation of interface and implementation in C++, and how the separation helps to strengthen encapsulation.

[Rahman, 1995]
editor << letters;  PDF
Fazl Rahman.
Overload, 3(8):40, June 1995.

[Rahman, 2004]
Transforming XML with XSLT  WEB  PDF
Fazl Rahman.
Overload, 12(60):, April 2004.

[Ramey, 2017]
Correct Integer Operations with Minimal Runtime Penalties  WEB  PDF
Robert Ramey.
Overload, 25(137):20-27, February 2017.
Results of C++ integer operations are not guaranteed to be arithmetically correct. Robert Ramey introduces a library to enforce correct behaviour.

[Ramírez, 2017]
Evolutionary Computing Frameworks for Optimisation  WEB  PDF
Aurora Ramírez, Chris Simons.
Overload, 25(142):14-19, December 2017.
Evolutionary algorithms can find optimal solutions to problems. Aurora Ramírez and Chris Simons give us an overview.

[Reese, 2011]
Thread-Safe Access Guards  WEB  PDF
Bjørn Reese.
Overload, 19(104):10-12, August 2011.
Ensuring safe access to shared data can be cumbersome and error-prone. Bjørn Reese presents a technique to help.

[Reich, 2018]
Cache-Line Aware Data Structures  WEB  PDF
Wesley Maness, Richard Reich.
Overload, 26(146):4-7, August 2018.
Structuring your program to consider memory can improve performance. Wesley Maness and Richard Reich demonstrate this with a producer-consumer queue.

[Reich, 2018]
Measuring Throughput and the Impact of Cache-line Awareness  WEB  PDF
Richard Reich, Wesley Maness.
Overload, 26(148):27-31, December 2018.
How do you measure throughput? Richard Reich and Wesley Maness investigate suitable metrics.

[Reich, 2019]
A Low-Latency Logging Framework  WEB  PDF
Wesley Maness, Richard Reich.
Overload, 27(152):4-8, August 2019.
Logging can be a bottleneck in systems. Wesley Maness and Richard Reich demonstrate a low-latency logging framework that avoids common problems.

[Revzin, 2018]
Implementing the Spaceship Operator for Optional  WEB  PDF
Barry Revzin.
Overload, 26(147):10-12, October 2018.
Comparison operators can get complicated. Barry Revzin explores how the new operator <=> helps.

[Richards, 1997]
Borland C++ Builder for expert programmers  PDF
Eric Richards.
Overload, 5(19):10-12, April 1997.
Software Development in C++

[Ridout, 1998]
Shallow Pointer  WEB
Aaron Ridout.
Overload, 6(28):, October 1998.

[Ridout, 1998]
Editor << letters;  WEB
Aaron Ridout.
Overload, 6(28):, October 1998.

[Ridout, 1999]
editor << letters;  WEB
Aaron Ridout.
Overload, 7(33):, October 1999.

[Ridout, 1999]
editor << letters;  WEB
Aaron Ridout.
Overload, 7(34):, December 1999.

[Ridout, 2000]
editor << letters;  WEB
Aaron Ridout.
Overload, 8(37):, June 2000.

[Romeo, 2022]
Compile-time Wordle in C++20  WEB  PDF
Vittorio Romeo.
Overload, 30(169):8-9, June 2022.
Wordle is everywhere. Vittorio Romeo introduces wordlexpr, using compiler error messages to play the game.

[Ropert, 2019]
ACCU Conference 2019: Reports  WEB  PDF
Felix Petriconi, Stefan Turalski, Ori Ben-Shir, Mathieu Ropert, Anthony Williams.
Overload, 27(151):13-19, June 2019.
ACCU holds an annual conference. Several attendees tell us what they learnt there this year.

[Rose, 1998]
‘There may be trouble ahead’  PDF
Seb Rose.
Overload, 6(24):31-34, February 1998.
Whiteboard

[Rose, 1999]
Objects In Databases  WEB
Seb Rose.
Overload, 7(31):, April 1999.

[Rose, 2003]
Labouring: An Analogy  WEB  PDF
Seb Rose.
Overload, 11(54):, April 2003.

[Rose, 2013]
Executable Documentation Doesn’t Have To Slow You Down  WEB  PDF
Seb Rose.
Overload, 21(114):24-26, April 2013.
Comprehensibility of end-to-end scenarios and quick feedback of unit tests are competing goals. Seb Rose introduces Cucumber with tags to meet both needs.

[Rose, 2013]
Lies, Damn Lies and Estimates  WEB  PDF
Seb Rose.
Overload, 21(117):9-11, October 2013.
Predicting how long something will take is hard. Seb Rose takes us on a brief tour through the swamp that is estimation.

[Rose, 2014]
The Code Is Not the Most Important Thing  WEB  PDF
Seb Rose.
Overload, 22(121):10-11, June 2014.
Choose the right sort of problem, focus on strategies for solving it, and the code will come easily. Seb Rose teaches kids to code.

[Rose, 2014]
TDD Discussions and Disagreements  WEB  PDF
Seb Rose.
Overload, 22(122):18-20, August 2014.
Recently people have been arguing about the benefits and pitfalls if TDD. Seb Rose summarises the differing standpoints and presents his own.

[Rose, 2022]
Why Should Automation Be Done By The Dev Team?  WEB  PDF
Seb Rose.
Overload, 30(167):16-17, February 2022.
Test automation and BDD are related but different. Seb Rose explains why developers need to be involved in the automating of test scenarios for BDD.

[Rose, 2022]
User Stories and BDD – Part 1  WEB  PDF
Seb Rose.
Overload, 30(171):4-6, October 2022.
Where did it all begin? Seb Rose explains the origins and evolution of the user story.

[Rose, 2022]
The Testing Iceberg  WEB  PDF
Seb Rose.
Overload, 30(172):21, December 2022.
Many of us are aware of the Testing Pyramid. Seb Rose introduces the Testing Iceberg to explain when we should invest effort in making a test readable to non-technical team members.

[Rose, 2023]
User Stories and BDD – Part 2, Discovery  WEB  PDF
Seb Rose.
Overload, 31(178):4-5, December 2023.
The term ‘User story’ is used in a variety of different ways. Seb Rose continues his investigation of the term, looking at detailed analysis.

[Rose, 2024]
User Stories and BDD – Part 3, Small or Far Away?  WEB  PDF
Seb Rose.
Overload, 32(179):4-6, February 2024.
The size of user stories is important. Seb Rose continues his investigation of user stories, considering when and how to size them.

[Ross, 1996]
Circles and ellipses revisited  PDF
Alec Ross.
Overload, 4(15):24-27, August 1996.
C++ Techniques

[Ross, 1996]
Circles and Ellipses revisited: coding techniques - an introduction  PDF
Alec Ross.
Overload, 4(16):15-18, October 1996.
C++ Techniques

[Ross, 1997]
Circles and Ellipses revisited: coding techniques - 2  WEB
Alec Ross.
Overload, 5(17-18):, January 1997.
A second approach: In-store changes

[Ross, 1997]
Circles and Ellipses Revisited: Coding Techniques - 3  PDF
Alec Ross.
Overload, 5(21):4-7, August 1997.
Software Development in C++

[Rosvall, 2004]
C++ as a Safer C  WEB  PDF
Sven Rosvall.
Overload, 12(59):, February 2004.

[Rosvall, 2004]
C++ Lookup Mysteries  WEB  PDF
Sven Rosvall.
Overload, 12(63):, October 2004.

[Rumsby, 1995]
C++ - the official UK site maintained by Steve Rumsby  PDF
Steve Rumsby.
Overload, 3(8):15, June 1995.
The Draft International C++ Standard

[Rutland, 1995]
editor << letters;  PDF
Nicholas Rutland.
Overload, 3(7):40, April 1995.

[Rybarski, 2006]
The Kohonen Neural Network Library  WEB  PDF
Seweryn Habdank-Wojewódzki, Janusz Rybarski.
Overload, 14(74):, August 2006.
Seweryn Habdank-Wojewódzki and Janusz Rybarski present a C++ library for users of Kohonen Neural Networks.

[Rüegg, 2012]
Refactoring Towards Seams in C++  WEB  PDF
Michael Rüegg.
Overload, 20(108):29-32, April 2012.
Breaking dependencies in existing code is hard. Michael Rüegg explains how seams can help and provides new automated refactorings for C++ to achieve them.

[Rüegg, 2012]
Simple Mock Objects for C++11  WEB  PDF
Michael Rüegg.
Overload, 20(110):19-21, August 2012.
New C++11 features can be used to implement mock objects for unit tests. Michael Rüegg shows us how he does this in Mockator.

[Saha, 2011]
Benefits of Well Known Interfaces in Closed Source Code  WEB  PDF
Arun Saha.
Overload, 19(102):4-7, April 2011.
Designing a good API is a significant challenge. Arun Saha suggests taking inspiration from outside.

[Saha, 2018]
Practical Scale Testing  WEB  PDF
Arun Saha.
Overload, 26(143):18-20, February 2018.
Everyone wants scalable systems. Arun Saha explores methods for testing scalability.

[Saha, 2022]
An Introduction to Go for C++ Programmers  WEB  PDF
Arun Saha.
Overload, 30(172):15-20, December 2022.
Learning another language is always interesting. Arun Saha walks us through Go as a C++ programmer.

[Scattergood, 1995]
From polymorphism to garbage collection  PDF
Bryan Scattergood.
Overload, 3(8):36-39, June 1995.

[Schmidt, 2014]
A Scheduling Technique for Small Software Projects and Teams  WEB  PDF
Bob Schmidt.
Overload, 22(123):20-23, October 2014.
Bob Schmidt presents some tips for accurate scheduling.

[Schmidt, 2014]
Ruminations on Self Employment and Running a Business  WEB  PDF
Bob Schmidt.
Overload, 22(124):9-12, December 2014.
Being self-employed has pros and cons. Bob Schmidt reviews what he has learnt about running your own business.

[Schmidt, 2015]
I Like Whitespace  WEB  PDF
Bob Schmidt.
Overload, 23(125):12-16, February 2015.
Programming style can cause endless arguments. Bob Schmidt shares why he thinks whitespace matters.

[Schmidt, 2015]
Alternatives to Singletons and Global Variables  WEB  PDF
Bob Schmidt.
Overload, 23(126):9-13, April 2015.
Global variables and Singletons are usually considered bad. Bob Schmidt summarises some alternatives.

[Schmidt, 2015]
CPU Clocks and Clock Interrupts, and Their Effects on Schedulers  WEB  PDF
Bob Schmidt.
Overload, 23(130):23-28, December 2015.
Instructions to sleep for a second almost never result in precisely one second’s sleep. Bob Schmidt walks us through the mechanics of why.

[Schoenborn, 2001]
Where is __FUNCTION__?  WEB
Oliver Schoenborn.
Overload, 9(41):, February 2001.

[Schoenborn, 2001]
Editor << letters;  WEB
Oliver Schoenborn.
Overload, 9(42):, April 2001.

[Schoenborn, 2002]
Tiny Template Tidbit  WEB  PDF
Oliver Schoenborn.
Overload, 10(47):, February 2002.

[Schoenborn, 2003]
Addendum to "Tiny Template Tidbit"  WEB  PDF
Oliver Schoenborn.
Overload, 11(54):, April 2003.

[Schuetze, 2024]
Reverse-Engineering cuBLAS  WEB  PDF
Fabian Schuetze.
Overload, 32(181):9-13, June 2024.
It’s possible to achieve cuBLAS performance with tensor cores by mimicking SASS instructions. Fabian Schuetze guides us through the process.

[Sebright, 2004]
Letters to the Editor(s)  WEB  PDF
Simon Sebright.
Overload, 12(60):, April 2004.

[Sebright, 2006]
Up Against the Barrier  WEB  PDF
Simon Sebright.
Overload, 14(75):, October 2006.
A discussion of development against the odds, describing process, personal and environmental barriers between the people and the job they are trying to do.

[Sebright, 2007]
A Perspective on Use of Conditional Statements versus Assertions  WEB  PDF
Simon Sebright.
Overload, 15(78):, April 2007.
Simon Sebright offers us the benefit of his experience.

[Sedge, 2011]
Systems Thinking Software Development  WEB  PDF
Tom Sedge.
Overload, 19(103):24-30, June 2011.
Many processes cause more problems than they solve. Tom Sedge shows how to tailor your own.

[Seifort, 1994]
Shared Memory Class  WEB
Justin Seifort.
Overload, 2(4):, February 1994.

[Sellem, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Shagov, 2006]
Inventing a Mutex  WEB  PDF
George Shagov.
Overload, 14(75):, October 2006.
A mutex is a general purpose tool - there may be better solutions in specific circumstances. George Shagov presents one such alternative.

[Sharp, 2010]
What motivates software developers: a workshop report  WEB  PDF
Helen Sharp.
Overload, 18(99):10-13, October 2010.
Keeping your team happy should be more than guesswork. Helen Sharp went and asked you.

[Sharpe, 2019]
Don’t Use std::endl  WEB  PDF
Chris Sharpe.
Overload, 27(149):34-35, February 2019.
How do you add a new line in C++? Chris Sharpe suggests std::endl is a tiny utility that’s more trouble than it’s worth.

[Short, 1993]
A Short Exposure to C++  WEB
Graham Short.
Overload, 1(3):, August 1993.

[Shotton, 1995]
editor << letters;  PDF
Phil Shotton.
Overload, 3(7):35, April 1995.

[Shriver, 2009]
Measurable Value with Agile  WEB  PDF
Ryan Shriver.
Overload, 17(89):, February 2009.
Are you solving the right problem or simply solving the problem right? Ryan Shriver shows us that both are needed for value delivery.

[Sidwell, 2020]
C++ Modules: A Brief Tour  WEB  PDF
Nathan Sidwell.
Overload, 28(159):19-23, October 2020.
C++20’s long awaited module system has arrived. Nathan Sidwell presents a tourist’s guide.

[Simons, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Simons, 1996]
editor << letters;  PDF
Sean A. Corfield, Dave Midgley, Roger Lever, Chris Simons, Andrew King, Alan Griffiths, Jay.
Overload, 4(12):, February 1996.

[Simons, 2017]
Evolutionary Computing Frameworks for Optimisation  WEB  PDF
Aurora Ramírez, Chris Simons.
Overload, 25(142):14-19, December 2017.
Evolutionary algorithms can find optimal solutions to problems. Aurora Ramírez and Chris Simons give us an overview.

[Simons, 1995]
editor << letters;  PDF
Christopher Simons.
Overload, 3(7):36-37, April 1995.

[Skeet, 2019]
NullableAttribute and C# 8  WEB  PDF
Jon Skeet.
Overload, 27(150):4-6, April 2019.
C# 8 will bring many new features. Jon Skeet investigates the metadata representation of Nullable Reference Types.

[Slettebø, 2005]
Letters to the Editor  WEB  PDF
Terje Slettebø.
Overload, 13(67):, June 2005.

[Smart, 1995]
A Text Formatting Class  WEB
John Smart.
Overload, 3(6):, March 1995.

[Smart, 1996]
Handling dates with locale based day and month information  PDF
John Smart.
Overload, 4(12):29-34, February 1996.
++puzzle;

[Smith, 2001]
Multimethods  WEB
Julian Smith.
Overload, 9(42):, April 2001.

[Sommerlad, 2006]
C++ Unit Testing Easier: CUTE  WEB  PDF
Peter Sommerlad.
Overload, 14(75):, October 2006.
Peter Sommerlad presents a lightweight framework for C++ unit testing.

[Sommerlad, 2007]
Letters to the Editor  WEB  PDF
Raoul Gough, Hubert Matthews, Peter Sommerlad.
Overload, 15(78):, April 2007.

[Sommerlad, 2015]
Variadic and Variable Templates  WEB  PDF
Peter Sommerlad.
Overload, 23(126):14-17, April 2015.
C++11 and 14 offer new features for Variadic and Variable templates. Peter Sommerlad showcases the compile-time possibilities they offer.

[Southern, 1996]
Java in a Nutshell reviewed by Chris Southern  PDF
Chris Southern.
Overload, 4(15):37, August 1996.

[Southern, 1996]
The return type of member functions  PDF
Francis Glassborow, Chris Southern, Klitos Kyriacou.
Overload, 4(15):29-33, August 1996.
C++ Techniques

[Southern, 1997]
editor << letters;  PDF
John Merrells, The Harpist, George Wendle, Francis Glasborow, Chris Southern.
Overload, 5(22):, October 1997.

[Southern, 1999]
Response To "Patterns - The Abstract Factory" (Francis Glassborow, Overload 30)  WEB
Chris Southern.
Overload, 7(31):, April 1999.

[Sposato, 2003]
A More Flexible Container  WEB  PDF
Rich Sposato.
Overload, 11(58):, December 2003.

[Standish, 2016]
Classdesc: A Reflection System for C++11  WEB  PDF
Russell Standish.
Overload, 24(131):18-23, February 2016.
C++ lacks direct support for reflection. Russell Standish brings an automated reflection system for C++, Classdesc, up to date.

[Standish, 2019]
C++ Reflection for Python Binding  WEB  PDF
Russell Standish.
Overload, 27(152):11-18, August 2019.
There are various approaches to generating Python bindings in C++. Russell Standish shows how Classdesc can be used to achieve this.

[Standish, 2024]
Fat API Bindings of C++ Objects into Scripting Languages  WEB  PDF
Russell K. Standish.
Overload, 32(181):16-20, June 2024.
How do you expose a C++ object to a TypeScript layer or other scripting language? Russell K. Standish demonstrates an approach using a RESTService API that is scripting-language independent.

[Stanimirov, 2018]
The Interface to Component Pattern and DynaMix  WEB  PDF
Borislav Stanimirov.
Overload, 26(144):12-15, April 2018.
Dynamic Polymorphism is hard in C++. Borislav Stanimirov demonstrates how the DynaMix library helps.

[Steinbach, 2013]
Portable String Literals in C++  WEB  PDF
Alf Steinbach.
Overload, 21(116):11-15, August 2013.
How hard can it be to make a file in C++ with international text literals in its name? Alf Steinbach shows us.

[Steinbach, 2017]
Portable Console I/O via iostreams  WEB  PDF
Alf Steinbach.
Overload, 25(140):14-21, August 2017.
Alf Steinbach describes how his library fixes problems streaming non-ASCII characters in Windows.

[Steinbach, 2023]
Type Safe C++ enum Extensions  WEB  PDF
Alf Steinbach.
Overload, 31(175):15-16, June 2023.
Is it possible to extend a value type in C++? Alf Steinbach describes how to extend enum values.

[Strobel, 2014]
Anatomy of a Java Decompiler  WEB  PDF
Lee Benfield, Mike Strobel.
Overload, 22(119):11-15, February 2014.
Java byte code can be reverted back into source code. Lee Benfield and Mike Strobel show how.

[Stroustrup, 1998]
Generalizing Overloading for C++2000  PDF
Bjarne Stroustrup.
Overload, 6(25):20-24, April 1998.
The Draft International C++ Standard

[Stroustrup, 2009]
No 'Concepts' in C++0x  WEB  PDF
Bjarne Stroustrup.
Overload, 17(92):, August 2009.
There have been some major decisions made about the next C++ Standard. Bjarne Stroustrup explains what's changed and why.

[Stroustrup, 2021]
C++ – an Invisible Foundation of Everything  WEB  PDF
Bjarne Stroustrup.
Overload, 29(161):8-11, February 2021.
What is C++ and why do people still use it? Bjarne Stroustrup provides a short note answering these questions.

[Summerfield, 1994]
Are “Safe” Computer Systems Possible?  WEB
M.N. Summerfield.
Overload, 2(5):5-7, September 1994.

[Summerfield, 2011]
Concurrent Programming with Go  WEB  PDF
Mark Summerfield.
Overload, 19(106):25-28, December 2011.
Concurrency is becoming ever more important. Mark Summerfield looks at the approach of the new language Go.

[Surman, 2011]
Queue with Position Reservation  WEB  PDF
Eugene Surman.
Overload, 19(101):4-7, February 2011.
Multiple threads can make processing a message queue faster. Eugene Surman needs the right data structure.

[Sutter, 2017]
Metaclasses: Thoughts on Generative C++  WEB  PDF
Herb Sutter.
Overload, 25(140):10-11, August 2017.
Herb Sutter shows how metaclasses could simplify C++ with minimal library extension.

[Sutter, 2024]
C++ Safety, In Context  WEB  PDF
Herb Sutter.
Overload, 32(180):4-13, April 2024.
The safety of C++ has become a hot topic recently. Herb Sutter discusses the language’s current problems and potential solutions.

[Sutton, 2015]
Introducing Concepts  WEB  PDF
Andrew Sutton.
Overload, 23(129):4-8, October 2015.
Concepts in C++11 had many false starts. Andrew Sutton show why they are a big deal now they are with us.

[Sutton, 2015]
An Inline-variant-visitor with C++ Concepts  WEB  PDF
Jonathan Coe, Andrew Sutton.
Overload, 23(129):17-20, October 2015.
Concepts are abstract. Jonathan Coe and Andrew Sutton provide us with a concrete example of their use.

[Sutton, 2016]
Defining Concepts  WEB  PDF
Andrew Sutton.
Overload, 24(131):4-8, February 2016.
Concepts provide a new way of constraining code. Andrew Sutton shows us how to define and use them.

[Sutton, 2016]
Overloading with Concepts  WEB  PDF
Andrew Sutton.
Overload, 24(136):6-11, December 2016.
Concepts can play a role in function overloading. Andrew Sutton shows us how.

[Taylor, 2004]
Letters: The Invisibility of Software Design  WEB  PDF
Richard Taylor.
Overload, 12(61):, June 2004.

[Teodorescu, 2019]
OOP Is not Essential  WEB  PDF
Lucian Teodorescu.
Overload, 27(153):6-9, October 2019.
People tend to love or hate Object Oriented Programming. Lucian Teodorescu considers a recent OOP claim.

[Teodorescu, 2019]
Do Repeat Yourself  WEB  PDF
Lucian Radu Teodorescu.
Overload, 27(151):4-7, June 2019.
Software developers are well aware of the ‘DRY Principle’. Lucian Radu Teodorescu investigates when this common wisdom does not always hold.

[Teodorescu, 2020]
Deconstructing Inheritance  WEB  PDF
Lucian Radu Teodorescu.
Overload, 28(156):14-18, April 2020.
Inheritance can be overused. Lucian Radu Teodorescu considers how it can go wrong and the alternatives.

[Teodorescu, 2020]
Refocusing Amdahl’s Law  WEB  PDF
Lucian Radu Teodorescu.
Overload, 28(157):5-10, June 2020.
Parallelising code can make it faster. Lucian Radu Teodorescu explores how to get the most out of multi-threaded code.

[Teodorescu, 2020]
The Global Lockdown of Locks  WEB  PDF
Lucian Radu Teodorescu.
Overload, 28(158):4-9, August 2020.
Locks can be replaced with tasks. Lucian Radu Teodorescu shows us how.

[Teodorescu, 2020]
Concurrency Design Patterns  WEB  PDF
Lucian Radu Teodorescu.
Overload, 28(159):12-18, October 2020.
Orchestrating concurrent tasks using mutexes is seldom efficient. Lucian Tadu Teodorescu investigates design patterns that help unlock concurrent performance.

[Teodorescu, 2020]
Questions on the Form of Software  WEB  PDF
Lucian Radu Teodorescu.
Overload, 28(160):4-7, December 2020.
Writing software can be difficult. Lucian Teodorescu considers whether these difficulties are rooted in the essence of development.

[Teodorescu, 2021]
A Case Against Blind Use of C++ Parallel Algorithms  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(161):4-7, February 2021.
C++17 introduced parallel algorithms. Lucian Radu Teodorescu reminds us we need to think when we use them.

[Teodorescu, 2021]
Composition and Decomposition of Task Systems  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(162):12-16, April 2021.
Concurrency can be hard to get right. Lucian Radu Teodorescu demonstrates how tasks can help.

[Teodorescu, 2021]
How We (Don’t) Reason About Code  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(163):11-15, June 2021.
Reading code is time consuming. Lucian Radu Teodorescu takes it one step further and asks how we reason about code.

[Teodorescu, 2021]
C++ Executors: the Good, the Bad, and Some Examples  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(164):4-8, August 2021.
Executors aim to provide a uniform interface for work creation. Lucian Radu Teodorescu explores the C++ executors proposal.

[Teodorescu, 2021]
Executors: a Change of Perspective  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(165):15-19, October 2021.
Parallelism is powerful. Lucian Radu Teodorescu explains the new C++ proposal for managing asynchronous execution on generic execution contexts.

[Teodorescu, 2021]
Programming Language Unlimited  WEB  PDF
Lucian Radu Teodorescu.
Overload, 29(166):4-8, December 2021.
How programmer-friendly are programming languages? Lucian Radu Teodorescu considers how principles from linguistics might allow us to read code with ease.

[Teodorescu, 2022]
Revisiting Data-Oriented Design  WEB  PDF
Lucian Radu Teodorescu.
Overload, 30(167):4-8, February 2022.
Modifiable and testable software makes life easier. Lucian Radu Teodorescu explores how Data-oriented Design can help here.

[Teodorescu, 2022]
Structured Concurrency in C++  WEB  PDF
Lucian Radu Teodorescu.
Overload, 30(168):9-14, April 2022.
Raw threads tend to be unstructured. Lucian Radu Teodorescu applies principles from Structured Programming to concurrency.

[Teodorescu, 2022]
Performance Considered Essential  WEB  PDF
Lucian Radu Teodorescu.
Overload, 30(169):4-7, June 2022.
We know that performance is important. Lucian Radu Teodorescu argues that it is actually the most important thing.

[Teodorescu, 2022]
Lessons Learned After 20 Years of Software Engineering  WEB  PDF
Lucian Radu Teodorescu.
Overload, 30(170):12-15, August 2022.
It’s good to sit back and reflect from time to time. Lucian Radu Teodorescu does just that and reports back.

[Teodorescu, 2022]
The Year of C++ Successor Languages  WEB  PDF
Lucian Radu Teodorescu.
Overload, 30(172):8-14, December 2022.
2022 has seen many languages created to rival C++. Lucian Radu Teodorescu reports on the current state of the art.

[Teodorescu, 2023]
Value-Oriented Programming  WEB  PDF
Lucian Radu Teodorescu.
Overload, 31(173):14-19, February 2023.
The research Val programming language uses value-oriented programming. Lucian Radu Teodorescu explores this paradigm.

[Teodorescu, 2023]
In Search of a Better Concurrency Model  WEB  PDF
Lucian Radu Teodorescu.
Overload, 31(174):10-15, April 2023.
Concurrency can get confusing quickly. Lucian Radu Teodorescu presents current plans for concurrency in the VAL programming language, comparing them with other languages.

[Teodorescu, 2023]
Reasoning About Complexity – Part 1  WEB  PDF
Lucian Radu Teodorescu.
Overload, 31(175):4-7, June 2023.
Reasoning and understanding code have fundamental roles in programming. Lucian Radu Teodorescu highlights the importance of reasoning and its philosophical underpinnings.

[Teodorescu, 2023]
Reasoning about Complexity – Part 2  WEB  PDF
Lucian Radu Teodorescu.
Overload, 31(176):12-17, August 2023.
Understanding code could increase our productivity by an order of magnitude. Lucian Radu Teodorescu introduces a complexity measure to help us reason about code to tackle complexity.

[Teodorescu, 2023]
Enodo, Divide et Impera  WEB  PDF
Lucian Radu Teodorescu.
Overload, 31(177):4-9, October 2023.
How do you untie the knotty problem of complexity? Lucian Radu Teodorescu shows us how to divide and conquer difficult problems.

[Teodorescu, 2024]
Safety, Revisited  WEB  PDF
Lucian Radu Teodorescu.
Overload, 32(179):9-15, February 2024.
Last year saw a proliferation of talks and articles about safety in C++. Lucian Radu Teodorescu gives an overview of these and presents a unified perspective on safety.

[Teodorescu, 2024]
Concurrency: From Theory to Practice  WEB  PDF
Lucian Radu Teodorescu.
Overload, 32(181):21-27, June 2024.
Concurrency is a complicated topic. Lucian Radu Teodorescu provides a simple theory of concurrency which is easy to reason about and apply.

[Teodorescu, 2024]
In an Atomic World  WEB  PDF
Lucian Radu Teodorescu.
Overload, 32(182):6-12, August 2024.
Atomics form a relatively low level, but fundamental part of sharing data across threads. Lucian Radu Teodorescu reminds us what atomics are and how and when to use them.

[Teodorescu, 2024]
The Publish Pattern  WEB  PDF
Lucian Radu Teodorescu.
Overload, 32(183):16-19, October 2024.
How do you minimise locking between producers and consumers? Lucian Radu Teodorescu describes a common, but currently undocumented, design pattern.

[Terje, 2005]
Letter to the Editor  WEB  PDF
Terje.
Overload, 13(66):, April 2005.

[The Harpist, 1995]
Related objects  PDF
The Harpist.
Overload, 3(7):24-28, April 1995.

[The Harpist, 1995]
Having Multiple Personalities  PDF
The Harpist.
Overload, 3(8):30-33, June 1995.

[The Harpist, 1995]
Joy Unconfined - reflections on three issues  PDF
The Harpist.
Overload, 3(9):12-14, August 1995.

[The Harpist, 1995]
Addressing polymorphic types  PDF
The Harpist.
Overload, 3(10):16-21, October 1995.
C++ Techniques

[The Harpist, 1995]
Java? Where is that?  PDF
The Harpist.
Overload, 3(11):15-18, December 1995.
Software Development in C++

[The Harpist, 1996]
The Standard Template Library - first steps: sequence containers  PDF
The Harpist.
Overload, 4(13):21-24, April 1996.
C++ Techniques

[The Harpist, 1996]
editor << letters;  PDF
Sean A. Corfield, Peter Wippell, Dave Midgley, Roger Woollett, The Harpist.
Overload, 4(13):30-31, April 1996.

[The Harpist, 1996]
The Standard Template Library - first steps auto_ptr  PDF
The Harpist.
Overload, 4(14):12-15, June 1996.
C++ Techniques

[The Harpist, 1996]
The Standard Template Library - sorted associative containers part 1 set & multiset  PDF
The Harpist.
Overload, 4(15):27-29, August 1996.
C++ Techniques

[The Harpist, 1997]
Standard containers for polymorphic types  WEB
The Harpist.
Overload, 5(17-18):, January 1997.

[The Harpist, 1997]
New Keywords For...  PDF
The Harpist.
Overload, 5(19):17-21, April 1997.
The Draft International C++ Standard

[The Harpist, 1997]
The Pitfall of Being Ignorant  PDF
The Harpist.
Overload, 5(20):13-17, June 1997.
C++ Techniques

[The Harpist, 1997]
Rational Values  PDF
The Harpist.
Overload, 5(21):27-30, August 1997.
Whiteboard

[The Harpist, 1997]
Rational Values Implementation Part 1  PDF
The Harpist.
Overload, 5(22):27-30, October 1997.

[The Harpist, 1997]
editor << letters;  PDF
John Merrells, The Harpist, George Wendle, Francis Glasborow, Chris Southern.
Overload, 5(22):, October 1997.

[The Harpist, 1997]
Rational Values Implementation Part 2  PDF
The Harpist.
Overload, 5(23):23-28, December 1997.
Whiteboard

[The Harpist, 1998]
Rational Values Part 3  PDF
The Harpist.
Overload, 6(24):23-28, February 1998.
Whiteboard

[The Harpist, 1998]
Implementations & Interfaces  PDF
The Harpist.
Overload, 6(25):26-29, April 1998.
Whiteboard

[The Harpist, 1998]
Object Design and Implementation  PDF
The Harpist.
Overload, 6(26):22-26, June 1998.
Whiteboard

[The Harpist, 1998]
Object (low-level) Design and Implementation  WEB  PDF
The Harpist.
Overload, 6(27):, August 1998.

[The Harpist, 1998]
Exceptions & Exception Specifications  WEB
The Harpist.
Overload, 6(28):, October 1998.

[The Harpist, 1998]
Exception Specifications  WEB
The Harpist.
Overload, 6(29):, December 1998.

[The Harpist, 1998]
Exception Discussion  WEB
Ken Hagan, The Harpist.
Overload, 6(29):, December 1998.

[The Harpist, 1999]
Overloading Operators  WEB
The Harpist.
Overload, 7(30):, February 1999.

[The Harpist, 1999]
A Letter from Ken Hagan annotated by The Harpist  WEB
Ken Hagan, The Harpist.
Overload, 7(30):, February 1999.

[The Harpist, 1999]
Micro-Derivation & Related Ideas  WEB
The Harpist.
Overload, 7(32):, June 1999.

[Thomas, 2012]
Back to School  WEB  PDF
Andy Thomas.
Overload, 20(108):12-13, April 2012.
The Sinclair ZX Spectrum will be 30 years old in April 2012. Andy Thomas recalls how this plucky little home computer shaped his childhood.

[Thomason, 2017]
Single Module Builds - The Fastest Heresy in Town  WEB  PDF
Andy Thomason.
Overload, 25(138):7-9, April 2017.
Unity builds can be controversial. Andy Thomason shows how much difference they can make to build times.

[Thomason, 2017]
Vulkan and you - Khronos’ successor to OpenGL  WEB  PDF
Andy Thomason.
Overload, 25(139):12-14, June 2017.
Various graphics APIs exist. Andy Thomason unravels the mysteries of Vulkan, the latest 3D Graphics API from Khronos, the custodians of OpenGL.

[Tolman, 2017]
The Path of the Programmer  WEB  PDF
Charles Tolman.
Overload, 25(140):4-5, August 2017.
Charles Tolman provides a framework for personal development.

[Tolman, 2017]
The Historical Context of Technology  WEB  PDF
Charles Tolman.
Overload, 25(141):8-9, October 2017.
Charles Tolman provides a historical context for foundational thinking.

[Tolman, 2017]
A Design Example  WEB  PDF
Charles Tolman.
Overload, 25(142):7-9, December 2017.
Design issues cause problems. Charles Tolman considers an organising principle to get to the heart of the matter.

[Tolman, 2018]
A Wider Vision of Software Development  WEB  PDF
Charles Tolman.
Overload, 26(143):4-5, February 2018.
Is code a hopeful arrangement of bytes? Charles Tolman brings his Organising Principles series to a close.

[Toms, 1993]
Editor's Ramble  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
C++ Streams  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
Templates  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
An Introduction to Object Orientation  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
Class Struggle  WEB
Mike Toms.
Overload, 1(1):, April 1993.
A basic introduction to the uses of C++

[Toms, 1993]
Dates & Times  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
Whingeing Session  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
Epilogue  WEB
Mike Toms.
Overload, 1(1):, April 1993.

[Toms, 1993]
Editor's Ramble  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
C++ Streams (Part 2)  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
Class Struggle  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
The Help Compiler  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
An E-mail Conversation with Bjarne Stroustrup  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
Members' Letters  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
The Pedant  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
Epilogue  WEB
Mike Toms.
Overload, 1(2):, June 1993.

[Toms, 1993]
Editor's Ramble  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1993]
C++ Strings -The ANSI Way  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1993]
Custom Controls  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1993]
Class Struggle  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1993]
Readers Letters  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1993]
Epilogue  WEB
Mike Toms.
Overload, 1(3):, August 1993.

[Toms, 1994]
Editor's Ramble  WEB
Mike Toms.
Overload, 2(4):, February 1994.

[Toms, 1994]
Windows Waffle  WEB
Mike Toms.
Overload, 2(4):, February 1994.

[Toms, 1994]
char* p vs char *p  WEB
Mike Toms.
Overload, 2(4):, February 1994.

[Toms, 1994]
Readers Letters  WEB
Mike Toms.
Overload, 2(4):, February 1994.

[Toms, 1994]
Epilogue  WEB
Mike Toms.
Overload, 2(4):, February 1994.

[Toms, 1994]
Letters  WEB
Mike Toms, Adrian Fagg.
Overload, 2(5):21, September 1994.

[Tornhill, 2013]
Code as a Crime Scene  WEB  PDF
Adam Tornhill.
Overload, 21(117):4-8, October 2013.
Forensic techniques can predict possible future crimes. Adam Tornhill shows how they can be applied to code.

[Tornhill, 2014]
Beauty in Code  WEB  PDF
Adam Tornhill.
Overload, 22(121):8-9, June 2014.
Attractiveness matters. Adam Tornhill uses a Clojure example to show how generalisation can be more beautiful than special cases.

[Tornhill, 2015]
Meet the Social Side of Your Codebase  WEB  PDF
Adam Tornhill.
Overload, 23(127):4-7, June 2015.
Programming requires collaboration. Adam Tornhill suggests some ways to uncover communication paths in your organisation.

[Tornhill, 2016]
Kill the Clones  WEB  PDF
Adam Tornhill.
Overload, 24(134):8-10, August 2016.
Problems in code can hide in surprising places. Adam Tornhill demonstrates how to detect software clones and uncover hidden dependencies.

[Tripp, 2003]
Embedded Scripting Languages  WEB  PDF
Jonathan Tripp.
Overload, 11(55):, June 2003.

[Turalski, 2019]
ACCU Conference 2019: Reports  WEB  PDF
Felix Petriconi, Stefan Turalski, Ori Ben-Shir, Mathieu Ropert, Anthony Williams.
Overload, 27(151):13-19, June 2019.
ACCU holds an annual conference. Several attendees tell us what they learnt there this year.

[Uemlianin, 2004]
Letters: Software Project Management Classics?  WEB  PDF
Ivan Uemlianin.
Overload, 12(61):, June 2004.

[Unknown, 1998]
editor << letters;  PDF
Phil Bass, Unknown.
Overload, 6(24):35-36, February 1998.

[Vanhout, 2008]
Iterators and Memberspaces  WEB  PDF
Roel Vanhout.
Overload, 16(88):, December 2008.
Exposing a compound object's collections can be messy. Roel Vanhout introduces a powerful idiom.

[Vollmann, 1998]
Hotel Case Study Comments  WEB  PDF
Detlef Vollmann.
Overload, 6(27):, August 1998.

[Vollmann, 1998]
Notes on Exceptions  WEB
Detlef Vollmann.
Overload, 6(28):, October 1998.

[Vollmann, 1998]
Exception Usage  WEB
Detlef Vollmann.
Overload, 6(28):, October 1998.

[Vollmann, 1999]
Exception Handling Alternatives  WEB
Detlef Vollmann.
Overload, 7(30):, February 1999.

[Vollmann, 1999]
Exception Handling Alternatives (Part 2)  WEB
Detlef Vollmann.
Overload, 7(31):, April 1999.

[Vollmann, 1999]
Software Architecture  WEB
Detlef Vollmann.
Overload, 7(34):, December 1999.

[Vollmann, 2001]
Metaclasses and Reflection in C++  WEB
Detlef Vollmann.
Overload, 9(45):, October 2001.

[Vollmann, 2001]
Metaclasses and Reflection in C++ - Part 2  WEB
Detlef Vollmann.
Overload, 9(46):, December 2001.

[Vollmann, 2002]
Letters to the Editor  WEB  PDF
Detlef Vollmann, Josh Walker.
Overload, 10(52):, December 2002.

[Vredeveld, 2019]
Trip Report: Italian C++ 2019  WEB  PDF
Hans Vredeveld.
Overload, 27(152):19, August 2019.
Milan held Italy’s largest C++ conference. Hans Vredeveld reports back.

[Vredeveld, 2019]
Trip Reports: Meeting C++ 2019 and Embedded C++ 2019  WEB  PDF
Svitlana Lubenska, Hans Vredeveld, Benedikt Mandelkow.
Overload, 27(154):4-7, December 2019.
Deciding which conferences to attend is difficult, and we can’t go to them all. Svitlana Lubenska, Hans Vredeveld and Benedikt Mandelkow give us a flavour of what we may have missed.

[Wakeling, 2007]
Working with GNU Export Maps  WEB  PDF
Ian Wakeling.
Overload, 15(79):, June 2007.
Taking control over the symbols exported from shared libraries built with the GNU toolchain.

[Wakely, 2013]
Letter to the Editor  WEB  PDF
Jonathan Wakely.
Overload, 21(113):24, February 2013.

[Wakely, 2014]
Stop the Constant Shouting  WEB  PDF
Jonathan Wakely.
Overload, 22(121):12-13, June 2014.
CONSTANTS often shout. Jonathan Wakely considers why this happens in C and what the alternatives are in C++.

[Wakely, 2015]
Get Debugging Better!  WEB  PDF
Jonathan Wakely.
Overload, 23(127):18-19, June 2015.
The GNU debugger has several useful features you may not know. Jonathan Wakely shows us how to save time and pain with some simple tricks.

[Wakely, 2016]
C++ Antipatterns  WEB  PDF
Jonathan Wakely.
Overload, 24(134):14-17, August 2016.
Certain mistakes crop up frequently in C++. Jonathan Wakely offers some pro-tips to help you avoid common errors.

[Walker, 2001]
Template Metaprogramming  WEB
Josh Walker.
Overload, 9(46):, December 2001.

[Walker, 2002]
Applied Reading - Taming Shared Memory  WEB  PDF
Josh Walker.
Overload, 10(51):, October 2002.

[Walker, 2002]
Letters to the Editor  WEB  PDF
Detlef Vollmann, Josh Walker.
Overload, 10(52):, December 2002.

[Wang, 2013]
The Open- Closed Principle (OCP)  WEB  PDF
Nan Wang.
Overload, 21(113):14-15, February 2013.
Changing requirements and environments can require cascading changes through software. Nan Wang demonstrates how the Open-Closed principle can minimise changes

[Wang, 2012]
Black-Scholes in Hardware  WEB  PDF
Wei Wang.
Overload, 20(110):8-15, August 2012.
The Black-Scholes model is a financial model. Wei Wang outlines its design and implementation for those who want to understand how algorithms can be implemented in hardware.

[Watson, 1996]
editor << letters;  PDF
Sean A. Corfield, Remi Sellem, Bryan Colyer, Phil Bass, Colin Harkness, Steve Watson.
Overload, 4(14):18-19, June 1996.

[Watts, 1998]
Exception Errors  WEB
Will Watts.
Overload, 6(29):, December 1998.

[Weatherhead, 2015]
Template Programming Compile Time String Functions  WEB  PDF
Nick Weatherhead.
Overload, 23(128):14-17, August 2015.
Practising old exercises in new ways can keep you sharp. Nick Weatherhead demonstrates some wellknown code katas using C++ compile time tricks.

[Weatherhead, 2016]
Template Programming Compile Time Combinations & Sieves  WEB  PDF
Nick Weatherhead.
Overload, 24(131):13-17, February 2016.
Functional style frequently uses sequences. Nick Weatherhead applies these ideas to combinations in C++.

[Weatherhead, 2016]
C++ Synchronous Continuation Passing Style  WEB  PDF
Nick Weatherhead.
Overload, 24(135):16-19, October 2016.
Direct and continuation passing styles differ. Nick Weatherhead explains a continuation passing style for synchronous data flow.

[Weltman, 2001]
.NET  WEB
Rob Weltman.
Overload, 9(43):, June 2001.

[Wendle, 1995]
Overloading on const is wrong  WEB
George Wendle.
Overload, 3(6):, March 1995.

[Wendle, 1995]
Operators - an overloaded menace  PDF
George Wendle.
Overload, 3(7):12-14, April 1995.

[Wendle, 1995]
Quantum Chromo Typology  PDF
George Wendle.
Overload, 3(9):5-7, August 1995.

[Wendle, 1995]
editor << letters;  PDF
Sean A. Corfield, Keith Derrick, George Wendle, Chris Simons, Dave Midgley, Dr. James Brennig.
Overload, 3(10):25-28, October 1995.

[Wendle, 1997]
Painting the Bicycle Shed  PDF
George Wendle.
Overload, 5(20):8-10, June 1997.
The Draft International C++ Standard

[Wendle, 1997]
extern "X" and namespaces  PDF
George Wendle.
Overload, 5(22):12-15, October 1997.

[Wendle, 1997]
editor << letters;  PDF
John Merrells, The Harpist, George Wendle, Francis Glasborow, Chris Southern.
Overload, 5(22):, October 1997.

[White, 2002]
Introduction to WOC: Abstracting OpenGL 3-D Model Definition and Rendering with C++.  WEB  PDF
Steve White.
Overload, 10(47):, February 2002.

[Wigley, 2002]
Alternatives for Partial Template Function Specialisation  WEB  PDF
Oliver Wigley.
Overload, 10(50):, August 2002.

[Wild III, 1993]
Managing Class Coupling  WEB
Frederic H. Wild III.
Overload, 1(3):, August 1993.

[Williams, 2001]
A Generic Non-intrusive Smart Pointer Implementation  WEB
Anthony Williams.
Overload, 9(42):, April 2001.

[Williams, 2001]
Flexible Functors and Binders  WEB
Anthony Williams.
Overload, 9(44):, August 2001.

[Williams, 2001]
Introduction to C++ Templates  WEB
Anthony Williams.
Overload, 9(45):, October 2001.

[Williams, 2002]
Pairing Off Iterators  WEB  PDF
Anthony Williams.
Overload, 10(51):, October 2002.

[Williams, 2003]
EXPR_TYPE - An Implementation of typeof Using Current Standard C++  WEB  PDF
Anthony Williams.
Overload, 11(54):, April 2003.

[Williams, 2005]
Letter to the Editor  WEB  PDF
Anthony Williams.
Overload, 13(70):, December 2005.

[Williams, 2006]
Implementing drop-down menus in pure CSS (no JavaScript)  WEB  PDF
Anthony Williams.
Overload, 14(73):, June 2006.
Implementing drop-down menus to aid website navigation is usually thought to require lots of JavaScript. This article shows how to do it using just CSS.

[Williams, 2007]
Implementing Synchronization Primitives for Boost on Windows Platforms  WEB  PDF
Anthony Williams.
Overload, 15(78):, April 2007.
Anthony Williams on the popular Boost library.

[Williams, 2008]
Exceptions Make for Elegant Code  WEB  PDF
Anthony Williams.
Overload, 16(86):, August 2008.
Anything that can go wrong, will go wrong. Anthony Williams compares ways of dealing with errors.

[Williams, 2009]
Multi-threading in C++0x  WEB  PDF
Anthony Williams.
Overload, 17(93):11-17, October 2009.
Threading support is being added to C++. Anthony Williams introduces us to the new facilities.

[Williams, 2011]
Picking Patterns for Parallel Programs (Part 1)  WEB  PDF
Anthony Williams.
Overload, 19(105):15-17, October 2011.
Designing programs for multi-core systems can be extremely complex. Anthony Williams suggests some patterns to keep things under control.

[Williams, 2015]
Numbers in JavaScript  WEB  PDF
Anthony Williams.
Overload, 23(128):19-20, August 2015.
JavaScript floating point numbers can confuse C++ programmers. Anthony Williams draws our attention to some surprising behaviour.

[Williams, 2016]
Using Enum Classes as Bitfields  WEB  PDF
Anthony Williams.
Overload, 24(132):22-23, April 2016.
Scope enums have many advantages over standard enums. Anthony Williams shows how to use them as bitmasks.

[Williams, 2017]
Getting Tuple Elements with a Runtime Index  WEB  PDF
Anthony Williams.
Overload, 25(139):18-19, June 2017.
Accessing a tuple with a runtime index is a challenge. Anthony Williams shows us his approach.

[Williams, 2019]
ACCU Conference 2019: Reports  WEB  PDF
Felix Petriconi, Stefan Turalski, Ori Ben-Shir, Mathieu Ropert, Anthony Williams.
Overload, 27(151):13-19, June 2019.
ACCU holds an annual conference. Several attendees tell us what they learnt there this year.

[Wilson, 2009]
An Introduction to Fast Format (Part 1): The State of the Art  WEB  PDF
Matthew Wilson.
Overload, 17(89):, February 2009.
Writing a good library is hard. Matthew Wilson compares some existing formatting libraries, and promises to do better.

[Wilson, 2009]
An Introduction to FastFormat (Part 2): Custom Argument and Sink Types  WEB  PDF
Matthew Wilson.
Overload, 17(90):, April 2009.
A library should be customisable and have good performance. Matthew Wilson shows how to achieve both.

[Wilson, 2009]
An Introduction to FastFormat (Part 3): Solving Real Problems, Quickly  WEB  PDF
Matthew Wilson.
Overload, 17(91):, June 2009.
A good library must be useful in practice. Matthew Wilson looks at usability and extendability.

[Wilson, 2009]
Quality Matters: Introductions, and Nomenclature  WEB  PDF
Matthew Wilson.
Overload, 17(92):, August 2009.
There are many aspects of Software Quality. Matthew Wilson introduces us to some of the concepts.

[Wilson, 2009]
Quality Matters: Correctness, Robustness and Reliability  WEB  PDF
Matthew Wilson.
Overload, 17(93):, October 2009.
What do we mean by quality? Matthew Wilson considers some definitions.

[Wilson, 2009]
Quality Matters: A Case Study in Quality  WEB  PDF
Matthew Wilson.
Overload, 17(94):26-32, December 2009.
How do we assess quality? Matthew Wilson takes a look at the design of one library.

[Wilson, 2010]
Quality Matters: Diagnostic Measures  WEB  PDF
Matthew Wilson.
Overload, 18(95):, February 2010.
How do we catch problems early? Matthew Wilson investigates the recls library.

[Wilson, 2010]
Quality Matters: The Worst Form of ‘Error’  WEB  PDF
Matthew Wilson.
Overload, 18(98):28-32, August 2010.
Handling Except For All The Others Dealing with errors is a vital part of good programming. Matthew Wilson specifies a taxonomy.

[Wilson, 2010]
Quality Matters #6: Exceptions for Practically-Unrecoverable Conditions  WEB  PDF
Matthew Wilson.
Overload, 18(99):26-36, October 2010.
Being robust is harder than you think. Matthew Wilson analyses a classic program.

[Wilson, 2010]
Quality Matters Christmas Intermezzo  WEB  PDF
Matthew Wilson.
Overload, 18(100):32, December 2010.
Sometimes it’s good to reflect. Matthew Wilson considers what he’s learnt so far.

[Wilson, 2013]
Quality Matters #7 Exceptions: the story so far  WEB  PDF
Matthew Wilson.
Overload, 21(114):10-17, April 2013.
Exception handling is difficult to get right. Matthew Wilson recaps the story so far.

[Wilson, 2014]
Quality Matters #8: Exceptions for Recoverable Conditions  WEB  PDF
Matthew Wilson.
Overload, 22(120):9-17, April 2014.
Too many programs deal with exceptions incorrectly. Matthew Wilson suggests practical steps to improve your code.

[Wilson, 2015]
QM Bites - The two sides of Boolean Parameters  WEB  PDF
Matthew Wilson.
Overload, 23(130):16-17, December 2015.
Boolean parameters are tempting but make life difficult. Matthew Wilson advises us to avoid them (almost) all the time.

[Wilson, 2016]
QM Bites : Maximising Discoverability of Virtual Methods  WEB  PDF
Matthew Wilson.
Overload, 24(131):24-25, February 2016.
C++11 introduced override as a contextual keyword. Matthew Wilson encourages us to use it.

[Wilson, 2016]
QM Bites: Understand Windows OS Identification Preprocessor Macros  WEB  PDF
Matthew Wilson.
Overload, 24(132):11, April 2016.
There’s confusion between user-defined and predefined Windows 32/64-bit operating-system identification macros. Matthew Wilson shines light on the issue.

[Wilson, 2016]
QM Bites: looping for-ever  WEB  PDF
Matthew Wilson.
Overload, 24(132):21, April 2016.
Never-ending loop constructs can confound user and compiler in subtle ways. Matthew Wilson offers advice to maximise portability and transparency.

[Wilson, 2016]
QM Bites - Order Your Includes (Twice Over)  WEB  PDF
Matthew Wilson.
Overload, 24(133):7, June 2016.
Header includes can be a shambles. Matthew Wilson encourages us to bring some order to the chaos.

[Wilson, 2019]
QM Bites: Understand Windows Operating-System Identification Preprocessor Macros  WEB  PDF
Matthew Wilson.
Overload, 27(149):23, February 2019.
Quality matters and bite sized articles help. Matthew Wilson returns with a QM Bites.

[Wilson, 2019]
Non-Recursive Compile Time Sort  WEB  PDF
Norman Wilson.
Overload, 27(154):9-10, December 2019.
Compile time sorting usually uses recursion. Norman Wilson shows how C++14 features make this easier.

[Wilson, 2020]
Using Compile Time Maps for Sorting  WEB  PDF
Norman Wilson.
Overload, 28(156):19-21, April 2020.
Compile time sorting can be interesting. Norman Wilson shows how to sort a map.

[Wilson, 2001]
String Tokenization - A Programmer's Odyssey  WEB
Simon Wilson.
Overload, 9(44):, August 2001.

[Winder, 2016]
So Why is Spock Such a Big Deal?  WEB  PDF
Russel Winder.
Overload, 24(131):26-32, February 2016.
Spock testing in a Java environment is all the rage. Russel Winder talks through the history of testing on the JVM and demonstrates why Spock is so groovy.

[Winder, 2016]
Testing Propositions  WEB  PDF
Russel Winder.
Overload, 24(134):17-27, August 2016.
Is testing propositions more important than having examples as exemplars? Russel Winder considers this hypothesis.

[Winder, 2017]
Mean Properties  WEB  PDF
Russel Winder.
Overload, 25(137):4-7, February 2017.
Property based testing is all the rage. Russel Winder walks us through an example of properties an arithmetic mean function should have.

[Winder, 2017]
Marking Benches  WEB  PDF
Russel Winder.
Overload, 25(141):5-7, October 2017.
Russel Winder reminds us that benchmarking code performance is a complicated issue.

[Winder, 2021]
Testing Propositions  WEB  PDF
Russel Winder.
Overload, 29(164):9-18, August 2021.
Is testing propositions more important than having examples as exemplars? Russel Winder considers this hypothesis.

[Wippell, 1995]
A “too-many-objects” lesson  PDF
Peter Wippell.
Overload, 3(8):39-40, June 1995.

[Wippell, 1995]
editor << letters;  PDF
Peter Wippell.
Overload, 3(8):42, June 1995.

[Wippell, 1995]
Another “too-many-objects” lesson  PDF
Peter Wippell.
Overload, 3(9):33, August 1995.

[Wippell, 1996]
I do not love thee, STL!  PDF
Peter Wippell.
Overload, 4(13):18-20, April 1996.
C++ Techniques

[Wippell, 1996]
editor << letters;  PDF
Sean A. Corfield, Peter Wippell, Dave Midgley, Roger Woollett, The Harpist.
Overload, 4(13):30-31, April 1996.

[Woods, 2009]
The Generation, Management and Handling of Errors (Part 1)  WEB  PDF
Andy Longshaw, Eoin Woods.
Overload, 17(92):, August 2009.
An error handling strategy is important for robustness. Andy Longshore and Eoin Woods present a pattern language.

[Woods, 2009]
The Generation, Management and Handling of Errors (Part 2)  WEB  PDF
Andy Longshaw, Eoin Woods.
Overload, 17(93):, October 2009.
Dealing with errors is a vital activity. Andy Longshaw and Eoin Woods conclude their pattern language.

[Woollett, 1996]
editor << letters;  PDF
Sean A. Corfield, Peter Wippell, Dave Midgley, Roger Woollett, The Harpist.
Overload, 4(13):30-31, April 1996.

[Wu, 2022]
Compile-Time Strings  WEB  PDF
Wu Yongwei.
Overload, 30(172):4-7, December 2022.
Compile-time strings have been used in many projects over the years. Wu Yongwei summarises his experience.

[Wu, 2023]
C++ Exceptions and Memory Allocation Failure  WEB  PDF
Wu Yongwei.
Overload, 31(176):4-7, August 2023.
Memory allocation failures can happen. Wu Yongwei investigates when they happen and suggests a strategy to deal with them.

[Wu, 2024]
C++ Compile-Time Programming  WEB  PDF
Wu Yongwei.
Overload, 32(183):7-13, October 2024.
Programming at compile time has been possible in C++ for a long time. Wu Yongwei considers its past, present and future.

[Yakyma, 2011]
Refactoring and Software Complexity Variability  WEB  PDF
Alex Yakyma.
Overload, 19(102):21-23, April 2011.
Most code bases could have their complexity improved. Alex Yakyma presents a model that suggests how to do this.

[Youngs, 1996]
editor << letters;  PDF
Sean A. Corfield, Allan Newton, Graham Jones, Phil Bass, Steven Youngs.
Overload, 4(15):35-36, August 1996.

[van Laenen, 2011]
Outsource Your Self-Discipline  WEB  PDF
Filip van Laenen.
Overload, 19(105):12-14, October 2011.
It’s all too easy to skip those tedious but vital steps towards code quality. Filip van Laenen suggests getting someone else to do them.

[van Laenen, 2012]
Mutation Testing  WEB  PDF
Filip van Laenen.
Overload, 20(108):16-22, April 2012.
We all know that testing improves our code, guarding against errors. Filip van Laenen asks how we know that the tests are comprehensive?

[van Laenen, 2013]
Wallpaper Rotation on Ubuntu using Ruby and Flickr  WEB  PDF
Filip van Laenen.
Overload, 21(115):14-20, June 2013.
Repetitive tasks are ideal candidates for scripting. Filip van Laenen walks us through a simple example.

[Ésik, 2019]
Use UTF-16 Interfaces to Ship Windows Code  WEB  PDF
Péter Ésik.
Overload, 27(151):10-12, June 2019.
Character encoding can cause problems. Péter Ésik explains why UTF-16 interfaces help on Windows.





Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED


By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED



Settings can be changed at any time from the Cookie Policy page.