Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: How do you code?

by sundialsvc4 (Abbot)
on Jan 13, 2008 at 18:43 UTC ( [id://662203]=note: print w/replies, xml ) Need Help??


in reply to How do you code?

I try to stick to the principles that allowed Charles M. Schulz to create more than 18,000 "Peanuts" comic-strips entirely by himself over the course of 50 years. He did it by consistently producing at least 7 strips a week during every one of those 2,600 weeks. And while it may be said that he did this at the cost of having gotten to do much of anything else, such as “retire,” he got to where he was -- to where he chose to be and wanted to be -- entirely through self-discipline.

Computer programming is engrossing, consuming work. It is also very high-pressure, and the pressure is all the more high because “every one of those weeks, or days,” is not the same. There are days when thoughts flow like water, and days when they flow like frozen tar.

So what I try to do is to write something every day. And for the most part I like to stick to a fairly consistent schedule. That schedule definitely involves keeping “about 9-to-5 hours,” offset by enough of an interval to avoid wasting time in the rush-hour crowds. (I also don't work from my home.) I've been known to stop in the middle of a subroutine. I try to end the day's work with "a note to myself" about what to do tomorrow, and often the next day I completely disagree with that little note. I am careful not to take work home with me, and some of my worst work has been done too-late at night.

The music varies. Sweet-flowing idea days get rewarded with classical or good bluegrass. Tar gets pummeled with Bon Jovi. High-quality comfortable noise-canceling headphones are worth the investment. Your desktop is not a drum.

I use a source-code control system (of course) and commit my work to it several times a day; usually two or three. I've been known to come in on a Tuesday and throw-away just about everything that I did on a Monday. Some days' thoughts are definitely clearer than those of other days.

I take long walks at lunchtime. (I don't know of any programmer worth his or her salt who doesn't like to take long walks at lunchtime...) Some of my best ideas come during those walks. I keep a notepad and a number-two pencil.

As far as overall work-scheduling is concerned, I use a very old beaten-up copy of Microsoft Project, back when they called it that. You've always got to have many things going on at once, and if you can keep them all in your head then you are better than me. That's also where the number-two pencil comes in. When an idea pops in, capture it immediately. Be sure to write clearly and completely. Once you've done that, you can't lose it. Your subconscious mind is thinking about things all the time. When ideas come to the surface they seem crystal-clear at the time but they don't stay around long.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://662203]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (5)
As of 2024-04-24 17:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found