Some random thoughts and (vaguely) interesting things I see or do. I keep getting back to some references on the best practices for C++/Java API design so I decided to summarize them all here for future reference. General design guidelines Be minimal: A minimal API is one that has as few public members per class and as few classes as possible. This makes it easier to understand, remember, debug, a