I'm working on a project at the moment where I have to document everything I do, so a lot of my time is usually spent doing that. That being said, I did do one day where I did 4 hours of just programming and pretty much fixed everything, only to realise that I hadn't documented the changes and had to do it again. 17122 words of documentation and still just making the hierarchy. Yay.
It depends on what you mean by program and what you mean by straight. I consider programming to be more than just writing out your code. All the analysis, design, testing, etc. is part of 'programming'. As for the time aspect, my working day is eight hours, it is punctuated with coffee breaks and lunch so any single stretch is usually only a few hours.
Dedication is power, power is being able to write code. Agree?
Between four and eight hours a day. A single session (that is, only opening my editor, the program I'm working on, and a web browser strictly for research) will be between one and two hours.
Dedication is power, power is being able to write code. Agree?
This is... Very arbitrary. It fails to be inspiring because it fails to make sense. The logical conclusion is "Dedication is being able to write code" but that doesn't sound right. Through dedication to writing (good)code you can write (good)code. And writing code can be powerful.
My recently adopted style of writing code involves writing the simplest solution first, then seeing what patterns emerge to arrive at a design.
I find I am most productive whenever I write whatever horrible code works and then clean it up once I understand what I'm working with. The issue is that I am often reluctant to write horrible code - after all, I can't trust my future self to clean it up.
I spend more time thinking about the best way to write the code than I do actually writing the code.
I tell people that programming involves a whole lot of "paper clip twiddling." By that I mean you sit at your desk, turning a paperclip in your hand. This sort of thing drives inexperienced manages absolutely crazy because they think you aren't being productive. They don't realize that programming involves a whole lot of thought, and a little bit of typing.
I spend more time thinking about the best way to write the code than I do actually writing the code.
While I agree that you should definitely think through the problem(s) you are trying to solve and figure out a clean and easily extensible way to implement it, I also believe that too much thought can also be detrimental to the project. This happens when people (Myself included, though I am trying to cure myself of this) put way to much thought into solving very simple problems "elegantly".
Basically I think it is all well and good to come into a project (Or problem you are tasked with solving) with a well thought out plan, but don't sweat the small stuff. If it is a simple task to solve then solve it with a simple solution. A lot of the time the simplest solution that is also extensible is the best solution, and I am sure anyone who maintains that code in the future (Including yourself) will thank you for it.
But onto the topic at hand, for myself it all really depends on the day and the task at hand I would say. Sometimes I can get into the zone and go for 4-5 hours straight if I really am enjoying a certain task or I really want to get it done. But usually I would say my average is about 4-8 hours in a day in 1-2 hour sessions like Lachan.
dhayden: Oh. So I'm not the only incessant, almost compulsive fiddler? I have on my desk one of the locks from another desk, and I spend a significant portion of the day locking and unlocking it. I find I simply need to have some small item to fiddle with, preferably with simple moving parts, and if I don't have one at hand I'll grab whatever I can find nearby.
I don't fiddle much (that I know of), but I pace or go for walks. Somehow walking helps me think, especially when I am stumped or need to make some important design decision.
In terms of time spent programming, it depends on the complexity of the task. Sometimes I have to do a lot of thinking before typing, and sometimes I can just do all of the thinking as I am typing/coding. Sometimes coding/typing isn't involved in the particular development task I need to complete.
I also spend considerable amount of time just using the software, thinking about how it could be improved or extended.
Usually when I have gotten through the thinking phase, where I figure out my plan, and my vision of the final product, I get some momentum doing the coding and end up going on a sort of binge, where I stay up for 24 hours at a time for example (not recommended). Also, sometimes there are deadlines or people giving me urgent requests, so I have to stay up 24 hours whether I like it or not.
So my range is between no coding, and 24 hours of coding per day.
I don't fiddle much (that I know of), but I pace or go for walks. Somehow walking helps me think, especially when I am stumped or need to make some important design decision.
That sounds familiar. I have been known to stop at one of our injection moulders. Watching the synchronised motion of the moulder and robot unloading it helps me get focused sometimes.