There has to be other people out there like me.
I have issues. Many issues. We all do. Perhaps the one that gets to me the most is that I'm a perfectionist when it comes to certain things, like designing software. It's a curse, because I try to be perfect from the beginning and it adds to the inertia of getting the project started in the first place; getting that first, crucial prototype out the door is the key first step to any project.
This is an issue that I've had for a quite a while now and I know that software is supposed to be imperfect. Particularly when you undertake to create something new, no one knows what it's supposed to look like; no one knows, 100%, what it's supposed to do. Certainly, there is an idea of what problem a particular piece of software should solve with version 1, but I'm always trying to figure out what it's supposed to do in version 2, before version 0.1 is even complete. Therein lies the problem. My psyche forces me to understand the problem and solution completely before I can really start to make it a reality.
I have a pile of papers scattered around my desk at home and my desk at work with various projects that I've doodled or half started, but couldn't think through completely either due to waning interest or lack of time. In all cases, I get stuck trying to see the whole picture before I've arrived at the destination.
As a developer, I know the importance of prototyping and building simple proof-of-concepts. If fact, I do this often in my professional life. But as soon as I start working on any type of personal project, this perfectionist drive just kicks in and immobilizes me from the get-go :-(
I can't be the only one that suffers from this afflictive emotion. How do other developers deal with it?
One way is to work with others. A couple of months back, I worked on a project with a friend I met while working at ITT, Blake Dubin. It was great working with him as he had a vision of exactly what this tool needed to do, which relieved me from over-analyzing the requirements of the tool. In addition, it helps that he prodded me to get the work done Yeah, the code was a bit sloppy, but it was done in under 15-18 hours and it's really pretty cool to boot.
The problem is that in my day-to-day life, I rarely deal with other developers/managers that I feel are as interested in building these things as I am. One of the big problems is that I'm surrounded by slightly older developers. That in itself is not so bad, as there is always something to be learned from experience in the industry, but the problem is, they're not old enough that they can kinda shake off the responsibilities of family life yet. These guys are in their late 20's and 30's, so they have to, rightfully, place family ahead of self, especially since they have very young kids, which leaves them with little free time to work on anything else.
I have a few friends who are developers as well. My college roommate, Joe, lives right around the corner from me. But he's absorbed by World of Warcraft. The man is practically glued to his computer desk. In addition, he doesn't have the same passion for creating random pieces of software (I think he'll end up in management in a few years).
I'm sure this problem is not restricted to just software development. So how do you guys deal with this? It's even more annoying that I realize that this is a problem that I have, and yet I'm unwilling or unable to resolve it by myself.
Remember Me
newtelligence dasBlog 1.8.5223.0
This site is a combo blog/portfolio for me, Charles Chen.
Sign In