What are some proven methods for keeping track of research and programming in a lab notebook format?
I don't do CS specifically, but I do research in computational/mathematical Epidemiology, which similarly lacks a clear format for a "lab notebook" and where the electronic tools designed for something like chemistry and biology doesn't necessarily suit.

Honestly, I've tried a number of systems. A private Wiki, a variety of other electronic systems, etc. And when it came down to it, I went back to a traditional paper notebook.

I've ended up with a bound paper notebook where I keep notes about experiments and simulations being run, thoughts on direction for the project, and the occasional printout of results taped inside. This has, for me, worked far better than electronic systems.