Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re: How do you code?

by samizdat (Vicar)
on Jan 14, 2008 at 15:28 UTC ( [id://662295] : note . print w/replies, xml ) Need Help??

in reply to How do you code?

I'm a rabid INFP (Meyers-Briggs: (I)ntrovert - I(N)tuitive - (F)eeling - (P)erceptive), so I have to have motivation that gets me in the gut. I can't just apply myself to a dull boring "normal" work project without having a 'higher purpose' in mind that gets me up in the morning and keeps me driving long after the kids are in bed. in my case, I have a vision for using technology to help kids grow up smarter and more self-motivated.

I know I have to 'ace' my low-level work-related projects using the least amount of my precious time, so I drive myself to analyze things at the highest level possible so that I don't have to go back in and spend time fixing things. In our work at {insert name of big computer co in RR, TX}, much of my job involves discovering dependencies and requirements from other existing software systems and standards -- as well as new requirements that hide behind some bull-puckie buzzword like 'persistent storage' -- that aren't always spelled out except in the memories of guys who've moved on to other projects, so roping in all of those is 90% of the work in a successful project.

I'm also a big fan of pacing, and I generally stop when I make my first major blunder and pick up where I left off in the morning after a good night's sleep and some off-topic rumination, such as on my Higher Purpose. This presupposes that I'm ahead of the game and not coding features at the last-last-last moment. That crunch will come no matter what I do, by the nature of projects where Marketing always wants it all yesterday, but if I'm consistently applying myself for maximum effect from the beginning, most of my aw-sh!ts have already been surmounted when it does hit.

It's also essential to be able to deal with those "while you have bandwidth" projects that magically show up to fill your time by making sure you get complete SoWs before getting stuck with work you need to apply major time to. I just got asked to configure an NTP server for our test lab, and before I knew it there was a bunch of Active Directory work included and oh, by the way, it's all in a VMware partition and you need to set that up, learn it, and deliver to that target. Sheesh!

Don Wilde
"There's more than one level to any answer."