Do you ever work alone?
If so how do you avoid cabin fever? Not in the Jack Kerouac sense, but more being able to critically or subjectively analyse your own work?
I find myself more and more being unable to avoid negative thoughts about the work I do when working alone.
7 comments
[ 5.1 ms ] story [ 31.1 ms ] threadGive yourself a break, every iteration gives you insight to the problem you are working on, there is no need to get it perfect on the first round. (perfect is the enemy of good).
Trick yourself, don't call your code 1.0, label it beta or a prototype for an extended period. Your longer term goal is to get to a release, but your immediate goal is to work on the next point update.
Trust yourself, if you think something has a bad code smell note it for later. If you think a UI isn't intuitive, live with it for a little while to figure out exactly what you need to change.
However, it could be that this isn't the ideal solution for you. Follow your nature! If you are getting 'cabin fever' then take that as an opportunity to take a break and speak to other people. Often people are more productive when they stay fresh and remove their burdens instead of trying to 'push through'.
tl;dr: when I work on just that, it doesn't go well; I'm most productive when I have some collaborative work to do otherwise, with bursts on the solo project. And I'm a huge introvert, but all work and no social interaction makes Jack a dull boy.
There was a chunk of time at the beginning where I got a grant to stay at my college over a summer time to work on it -- I lived in a dorm, had no close friends anywhere nearby, and those months were just plain weird. I'd end up sleeping from 9am to 3pm or so, getting up and eating some grapenuts, then going to work (alone, in a usually-empty building) again... but I also seemed to alternate between highly-focused work and highly-focused time wasting (like in drawn-out arguments on Slashdot; this was 1997). Sometimes I'd go a week without having a conversation with another human being at all.
All in all, it wasn't a happy time, or a very productive one (in spite of the fact that I had nothing else to do).
Fast-forward -- I got a job, married my college sweetheart, and worked on the site in spare time or on vacations. That worked pretty well. I could clear my head from problems I liked less on the real job by switching gears now & then.
About 3 years ago I tried making it into my only thing again -- and didn't succeed at all. Admittedly I also had my first child in there, but still it's pretty obvious I didn't get much done -- only incrementally more than when it was my spare-time project. I sunk hours into researching new hosts (when my current one was fine), configuring my own mail server (when I could have just gone with Google Apps hosting) -- my prioritization was horrible, and even knowing that, I couldn't dredge up the motivation to fix how I spent my time.
So it's back to spare time (unfortunately, I'm super-busy now, so it's not getting much love...), but I'll be pretty wary about taking it up again full-time unless I can get someone else to work with me. The simple fact of discussing progress with other people, of explaining how I'm prioritizing my work, makes me do things much better.
There's another option -- if you have a mentor or friend who understands your work, and who can give you 5 minutes of time a day, or every few days... that might work wonders. Knowing they'll be asking "how's it going?" in 6 hours can motivate you to dig into something, just to have an answer. Knowing they'll be asking "why's this your top priority?" can make you stop & change course. Knowing they'll have had similar frustrations, similar roadblocks, and will offer a few good suggestions for how to proceed can ease your mind.
Working well has a rhythm to it, of course, so if they can help you find your pace, you may not even notice if they're unavailable for a few weeks.
HTH; good luck.
This doesn't really have much to do with working alone, but it is harder to grow if you can't get feedback and aren't forced to explain your code to others.
If (like me) you are physically unable to get together with your peers IRL to discuss your work (for instance, because you're about 1000km away from the nearest person you can conceivable discuss things with), you should find other ways to do this. IRC is good, putting code up in github for feedback, blogging about it, these all help kickstart the next round of learning.
You may feel worse about your code once you get some external eyeballs on it, but it's likely you'll get positive feedback, which is always comforting.
There's no aboiding negative thoughts, it's a sign that you are striving to do better. Start worrying when you don't think you can do better.
My advice: cut yourself some slack Andrew. Understand that your mind is just creating stories (again) and dismiss them. Sometimes I will even smile at how infantile my thoughts can be.
But yes, I get cabin fever bigtime (I work alone a lot) and sometimes I have to get out, even if there are a thousand excuses not to.
Take care.
I think the trick is to stop the work and talk to your friends/girlfriend about it, even if they do not have a clue about coding. I talk to my girlfriend every time I run into a problem or a negative thought pops in my head and won't go away. Even though she does not have any knowledge about programming, she tries to engage and guide me to the simple solution that saves the day most of the time.