When I first started working as a technical professional,. I was surrounded by a bunch of engineers. They encouraged me to keep an engineering notebook to record my work. Basically this was a spiral bound notebook that you would write in every day. You would record significant events that occurred that day. The importance was that you could look back in your notebook to remember important facts. So I began keeping an engineering notebook myself.
Later I transitioned into programming. But I kept my habit of logging my experiences in an engineering notebook. Right now I have a pile of notebooks recording work facts over the years. My last notebook filled up after I started my most recent job. All the work for my current project is performed on site at a customer's location. There is no supply cabinet here for me. So I started for the firsts time writing my programming notes on paper I grabbed from the printers.
After a while I realized that printer paper was not as easy to keep together as a spiral notebook. I was thinking about going back to a spiral notebook. But then I read a discussion about keeping such an engineering notebook. And the majority of posts to that discussion recommended that you keep such a log electronically. This was a very good idea. I began trying to figure out how to accomplish this. Then when I had a little free time, I wrote a little program to act as my electronic notebook.
My program is called Notebook. There is nothing really outstanding about it. When you first launch the program. it defaults to today's date. You can enter free form text in the notepad section. You can navigate to other days by pressing some buttons. The program simply stores all notepad data in text files, one for each day that you record some information. These days I am using this program daily to record my programming accomplishments. In fact, I have already transcribed all my printer paper notebook pages to electronic versions in Notebook.
Mysterious Double Instance Hampering Performance - I study the existing code base. Confer with a colleague. Then I determine the optimal plan to change the functionality to load only a slice of all the dat...