This is probably an old topic, but I just ran into it again, and it sounds like a good area to look for other ideas.
The library I am working on has a bug that I am having difficulty isolating. In fact one of the things that happened in the last day or two, was the size got too big. The amount of detail is so large, I can't keep the whole thing in my head.
I call this Brain Buffer Overflow.
There are many techniques available to help reduce the size of the stuff you need to fit into your head, so there is room for more important stuff.
- Breaking things into functions, so you deal with the interface, rather than the internal details.
- Same thing for classes. Hide the dirty implementation behind a class interface, so you don't have to think about the details.
- I print source listings and tape them up on the wall, so I have a more global view than what is available, though my 22 inch lcd monitor.
What techniques do you use to help keep unneeded stuff out of your brain buffer, so you can deal with larger problems?