|
Coding in Flow [0115.2000] With starting back at my old job and all, I realized I needed a tool for helping me stay focused. I'm notorious for sitting down to do something, wanting to do it, and just not being able to get into it for whatever reason. In the past, I'd wind up getting distracted, bored, and annoyed. Especially when I was coding. So last night I did some thinking and came up with a tool to get myself motivated. I started by just writing whatever came to mind - sort of like these rants.. and then started moving it to the issue of procrastination and slacking.. As I wrote about times when I was really pumped about doing something, and times when I became really creative and resourceful in getting it done, I began to discover a pattern. First, I do something to warm up, like review notes or draw a diagram, or talk to somebody about it. That gets my brain primed to take on the challenge. It's sort of like lifting weights.. You can't just start lifting huge weights when you go to work out. You need to stretch and maybe lift some light ones to warm up. Once I've started this "warm up" phase, I begin to visualize an image of where i'm going. That image might be a document describing how to build a program, or it might be the program itself. But there's something I want to accomplish when I sit down. Sometimes, I don't know what it is until I've warmed up and have really gotten back into the project. Along the way, I use dialog and ask questions, which is helpful even if there's no one else around to answer them. I can just write questions down to answer as I go along. Putting things into words helps me clarify things, and is an especially useful middle step when programming, because the ideas need to be put in text format anyway. Then, as I think, I look for problems to be solved. Attempting to solve a specific problem goes a long way to making "grunt work" seem more interesting. The little stuff can just fly by while I focus on the larger problem. Finally, once all this stuff is really going, I feel motivated and interested in getting it done. This isn't necessarily a step in the process as it is the destination, or a way of checking that I'm on track - if I feel this way, I know I'm on track. I just tried this with some work I took home. I started by doing some freewriting about the project to warm up, and pretty soon I realized what I needed to do, and I went through that whole part of the project in an hour. It felt great. I think this will be escpecially helpful now that I'm working two jobs (Zike and ASI), and I'll most likely be working in "chunks" with long spaces in between sessions on a particular project. Hopefully, this will help keep me motivated at work, and help me get back into projects more rapidly when I sit down to work on them. |