Keeping a software engineering journal

On the software projects I’m working on right now, I am keeping a daily journal.

Think of it as a diary – each day, I write down my thoughts about what I’m working on – if I need to make a decision I can write down my analysis of the options and ramifications of the decision tree.

I use it to record research I’ve done, links to web sites with discussions of topics, training videos, etc.

I find that getting my thoughts out on (digital) paper really helps clarify my thinking process.

I’ve been doing this nonstop for 13 months now, and I’ve never done anything like this before, to this degree – one project’s journal is now 174 pages, and there’s probably at least that much left to go before phase 1 of this project is finished.

Aside from helping organize thoughts, I’ve found it very valuable to go back in time and dig back out command lines, programming bits, design decision process. If I find I am starting to question something, I can just dive back in to the original decision process and “reload my brain” about the topic very quickly. And this means I almost never have to re-think or re-do work. I might try a different option, but I don’t have to re-analyze from scratch, which is where all the hard work is.

I end up journaling significantly more text than code I write, but I can tell you the resulting code product is concise, well organized, and well thought out.

What methods do you use to organize your software engineering work?


Posted

in

by

Tags: