If I'm planning out architecture, I'll write code for an hour or less and then go get coffee and write notes. Basically I "ramp up" to a complete implementation by starting out on something and seeing if it has a major flaw.
If it's coding up something deep and algorithmic(e.g. recently I started implementing a small scripting language and associated type inference engine), I'm going to be buried in it more-or-less continously for however many days it takes.
If it's debugging the deep algorithm, I'll work on it off-and-on(the stage I'm in now with the type system project) in blocks of an hour to a few hours at a time. This is the stage where a lot of insight is needed so I don't push myself too much to "force" solutions to appear.
If it's a "trivial features + fixes" type of thing, I'll procrastinate a ton and then take the hour or two needed to finish. Since this is most of what I do I spent a lot of time procrastinating.
In the rest of my (working) time I'm mostly focused on game design tasks. I'm working with two others on a Flash/iOS game, and I'm taking the lead design/implementation role. We meet occasionally, several times a week; so I don't own a startup, per-se(one of my partners is in charge of the business aspects), but I'm doing something entrepreneurial just the same.
Outside of work, I mostly try to relax(walking and some body-weight exercise), clear my mind(some occasional meditation), and learn a little(reading). My social activities are mostly online, these days. When I have time, my friends don't. And when they do, I don't. So I only get to hang out occasionally.
If I'm planning out architecture, I'll write code for an hour or less and then go get coffee and write notes. Basically I "ramp up" to a complete implementation by starting out on something and seeing if it has a major flaw.
If it's coding up something deep and algorithmic(e.g. recently I started implementing a small scripting language and associated type inference engine), I'm going to be buried in it more-or-less continously for however many days it takes.
If it's debugging the deep algorithm, I'll work on it off-and-on(the stage I'm in now with the type system project) in blocks of an hour to a few hours at a time. This is the stage where a lot of insight is needed so I don't push myself too much to "force" solutions to appear.
If it's a "trivial features + fixes" type of thing, I'll procrastinate a ton and then take the hour or two needed to finish. Since this is most of what I do I spent a lot of time procrastinating.
In the rest of my (working) time I'm mostly focused on game design tasks. I'm working with two others on a Flash/iOS game, and I'm taking the lead design/implementation role. We meet occasionally, several times a week; so I don't own a startup, per-se(one of my partners is in charge of the business aspects), but I'm doing something entrepreneurial just the same.
Outside of work, I mostly try to relax(walking and some body-weight exercise), clear my mind(some occasional meditation), and learn a little(reading). My social activities are mostly online, these days. When I have time, my friends don't. And when they do, I don't. So I only get to hang out occasionally.