

My Hacker Heresy: Hacking is what happens between diaper changes. - VaedaStrike

One of the prevailing views of hacking is an intrinsic need to have significant blocks of time to facilitate the need of wrapping one's mind around the complex systems that are formed and modified by any hacker pounding out his passion.<p>I'm a dad. A new one. Also a relative noob to programming. My 'big project' is three years in the making and I'm just now stepping out of the back end formation and relational database design into tackling a front end. But I'm married with a kid, no money and a full time job.<p>For the past first year of married life the programming needless to say has been ground to a halt, until, that is I discovered this hack.<p>Insane documentation. I'm not talking about documentation in the code, rather a separate ongoing accounting of what I'm doing. Very detailed, very time consuming.<p>Why does it work? Because it enables me to grasp where I left off and where I'm going at a relatively very fast clip.<p>15 min windows actually yield progress. It's small but every step closer to launching is something I celebrate.
======
JoeCortopassi
First time dad to, with a teething 7 month old. Definitely feel your pain.
I've been just documenting the crap out of eeevvveeerrrything, but your method
sounds like a good idea for the progress of a project as a whole.

The one thing I try to stick to, is make progress on at least one thing every
day.

~~~
VaedaStrike
I would imagine, as with anything, some balance would be needed.

I think one of the things that's helping me with this type of documentation is
that it's just for me. I mean that I don't worry too much about other's being
able to understand what I'm referencing, I don't plan on anyone reading it, so
I'm free to write whatever my mind needs to quickly take me back to the place
I left off and to make sure that I remember what loose ends I still have to
work on tying.

I agree with you completely on the making some progress every day.

The documenting also helps to recognize when the direction I'm going in is not
netting results fast enough or adequate enough for the desired end.

------
runjake
My Hacker Heresy: Hacking is what happens after the kids are asleep and when
I'm not spending quality time with the wife.

Then again, I have 3 kids.

------
petervandijck
More details and an example?

~~~
VaedaStrike
Well since I have to be a jack of all trades AND have a few details that I
need to have for my particular project that are not generally as vital in most
development projects I have both a bit more complicated data structure as well
as having the need to become sufficiently competent in a number of areas.

One example is a need I have to do all or virtually all interactions between
my heavily normalized back end with stored procedures as well as needing to
have data protection built on both the front end and the back end. This
redundancy is also something I need to deploy in a somewhat consistent manner
if I am to keep a handle on what I'm doing. When there's replication in
protecting the data on both sides, at least it's been my experience, that the
going back and forth makes more moments for things to be forgotten, so I find
that being very systematic in my approach is needed, but being systematic
while working in a piecemeal manner, at least for me, is tough.

Documenting my code helps some, but having my own linear, self directed
narrative about what I've done, what I'm doing, where I'm going, written in a
way that I understand and not encumbered by the preoccupation that should
accompany, I believe, well documented code, helps a ton. If I can write and
not worry about dotting all the I's or crossing all the proverbial T's then a
few minutes reading/revising my narrative and I'm ready to jump back in to
coding, even if I just got done feeding the baby, changing the diaper, paying
the cell phone bill, putting the baby to sleep and then doing a 'honey-do' for
my wife. I can sit down and quickly get oriented in the direction I need to
go.

I hope that was what you wanted when you asked for details and an example. If
not I'll need you to elaborate more on exactly what you want to hear.

