Lately at current gig have been working on some inherited code that is overly OO and complex - written by an architect astronaut (click me) - to the point that its quite challenging to work with, as you have to keep multiple classes/parent classes and their workings in your head at one time to accomplish very simple things that should just be a couple lines of code. I end up having to read 1000 lines of code to fix trivial bugs, and dissecting and over-riding method after method. And I've been burning out on the code quite fast, which leaves me pretty unproductive for long periods after the first hour or two. A few days ago a friend sent me this link: http://www.tecnicadelpomodoro.it/docs/francesco-cirillo/2007/ThePomodoroTechnique_v1-3.pdf I decided to try it. The core is this: you work in 25 minute uninterrupted chunks, with a mechanical kitchen timer. You only work on one thing at a time, in this case hacking on this code. You do not multitask while you work. So no post whoring every 10 minutes or anything like that. You utterly focus on a single task for the entire 25 minutes. Each time the timer goes off, you make yourself stop. You take a 5-10 minute break where you don't use your brain much, walk around, pee, get some water, etc. And then back to another 25 minute work session. Every 4 work periods, you take a half hour break. Been doing this, and am shocked at how much more productive I am. I often code in 8-12 hour marathons, and I get pretty frazzled at the end. This really helps coding stamina, MAKING yourself take the scheduled breaks, otherwise you're like, "Just one more thing" and pretty soon you've gone 3-4 hours without taking a break and your brain is fried need a long break just to be able to think worth a crap. This method kicks ass. You can code longer. You can code better.