Advertisement

Losing "Coding Inertia" and how to deal with it?

Started by February 20, 2013 05:58 AM
9 comments, last by Anri 11 years, 6 months ago

I'm sure a lot of people can identify with what I'm talking about - it's when you spend the day doing stuff, then you get this awesome design idea, you code for many hours, but then eventually have to go to sleep, it's like the entire design is loaded up in the fastest memory region of your brain.Then when you wake up in the morning, it's all gone - you have to "get into it" again, which wastes time, not to mention you have to build up the motivation you had at the peak of the previous night of coding.It would be so much easier if I could just keep that state constantly in my head.Would anyone else share their "way" of operation?

this is difficult to do sometimes when in such a state, but if i'm getting tired, i try to leave w/e i'm working on unfinished. so long as i have a clear design in mind. i try to go to sleep(no matter how much i'm itching to finish that last part).

this way, when i wake up, i have a place to continue working, rather than going "so, what next?" it's a "let's get this finished!".

of course, doesn't always work out that way, if i do have things finished(but still tons of work to do), i tend to lay in bed for a couple hours thinking of how to approach the next portion of the project, once i have a clear design i have the problem of wanting to just grab my laptop and work on it right their and then, generally i try to hold off till i get some sleep though.

edit: also brings this to mind: http://xkcd.com/323/ =-)

Check out https://www.facebook.com/LiquidGames for some great games made by me on the Playstation Mobile market.
Advertisement

Whenever I get inertia like that, I try to just not sleep and work overnight and the next day. The longest I have done that was working on and off with no sleep for 48 hours on a weekend.

C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.

Isn't that the most fun of it? It usually do my best work at night, when I am in a quite-tired-but-its-okay-as-long-i-have-my-music-on state. That way I can work for hours, "forgetting" about the real world for a while. Usually after such a night, I am still quite motivated after getting up, but I guess it's somewhat like what slicer4ever said: I don't get all my work done at night (because eventually I get too tired to carry on) and have unfinished business in my code base. Maybe that's the reason it works so well... I will test this theory.

I try to finish up enough code to get a commit into the source repository before finishing for a day. That way I can look at the log to see what I did. Alternatively, if I haven't committed, then I load up the commit/check-for-modifications dialog and look over the list of changes that are present.

Sometimes, if I'm in the middle of something, I'll deliberately introduce a compile error into my code (e.g. just write 'todo' in the middle of a line) so then when I hit build in the morning, I can't forget where I was up to.

I also keep an untidy scrap of paper on my desk with words/tasks/problesm scribbled all over it. If there's some key detail that I shouldn't forget, I'll jot down a keyword and underline it on that, and then put it on my keyboard to jog my memory in the morning.

I find it helps to do my morning remembering over a large mug of good coffee smile.png YMMV

I also keep an untidy scrap of paper on my desk with words/tasks/problesm scribbled all over it. If there's some key detail that I shouldn't forget, I'll jot down a keyword and underline it on that, and then put it on my keyboard to jog my memory in the morning.

Haha, I do exactly that too :)

I also frequently mail myself right after going to bed, because I suddenly figured out a potential solution to some problem I have...

If I've lost momentum, it's usually enough to stare at the code, or fiddle with the current executable for a while to find what I need to do next.

It's good to have some long term goals for the project, and a rough timetable to stay focused and not spend too much time with details.

Doesn't matter if the timetable doesn't hold, but If you don't feel like you make progress, it is easy to lose momentum.

Advertisement

Yeah, playing with the executable helps a lot. From time to time a find myselfs staring at a particle effect or something similarly unimpressive that came out just a bit more beautiful than anticipated. When I recorded the first gameplay video of my current project I watched it like a hundred times. After that I knew exactly what the next thing to work on was.

Whenever I get inertia like that, I try to just not sleep and work overnight and the next day. The longest I have done that was working on and off with no sleep for 48 hours on a weekend.

Excellent advice, that sounds really really healthy!

While I maintain a more formal To-Do document, I also always have a notepad window open when I start and stop coding. When I have to stop for whatever reason I'll type up some very specific instructions about what I was doing last and what I intend to do next. I usually use various phrases in caps for direction like JUST FINISHED xyz thing, NEXT UP abc thing. Or HAVEN'T FINISHED qrs thing.

I'm working on a game! It's called "Spellbook Tactics". I'd love it if you checked it out, offered some feedback, etc. I am very excited about my progress thus far and confident about future progress as well!

http://infinityelephant.wordpress.com

i'm also in the camp of when i'm really on a roll i just put off sleep as long as i can :) wind up staying up well into the next day then totally crashing and sometimes takes a couple days to get back to normal but the output of those long all night stretches is always my best and most inspired code.

This topic is closed to new replies.

Advertisement