I think too much. I think to much about my code, and I think to much about life in general to be as good a developer as I want to be. I know this sounds a bit like self defeating talk, a little contrite even, but hear me out for a second.
Code itself is pretty simple when you make yourself familiar with the syntax and the rules by which the system works. Your job is simply to give the system instructions to follow the same way you would give a stranger directions if they asked you on the street corner, albeit much much more detailed directions. You can’t assume anything about how they might interpret the directions you’re giving so you must make an effort to be explicit.
I’m good at giving people directions. I see the map in my head, I can describe to them the way, and I can even give them a few things to stop and see along the way. I will get them to their destinations. I have a hard time however, remembering all the exact street names, distances between points, and I certainly don’t take into account traffic and construction.
I’ve never been one to get hung up on the details. I’m not primarily focused on the minute details of large tasks, but I’ve got the vision for the greater goal. Assumptions are what keep a good developer from being a great developer, because being good is making something work, but being great means taking into account all of the intricacies in a development environment.
I know where my flaws lie, but I don’t let them hold me back or prevent me from making something just work.
Do you need to be a great developer? I ask myself these types question quite often when comparing myself to some of my peers. In all honesty I’m okay with being a good developer, not a great one. I have sets of other skills that my great developer friends just don’t have. I’m more balanced in my design and development skills than others and I utilize my creative and analytical brain in harmony. That is something you can’t teach easily.
If you are struggling to be the best at something, but seem to not be making the progress you feel you should be, stop and ask yourself if you have something else that others cannot provide. You’d be surprised the mixtures of skills we possess. Convincing others that you’re fit for a job that you don’t quite fit in can be nerve racking, but it doesn’t mean you can’t do it or that you can’t make a job that fits you. Thats what I’ve been doing for the last 8 years. I’ve been creating my own place in the world. I’ve been doing it by being a good developer, a good designer, a good photographer, an okay writer, and a great people person. The sum of the parts typically are greater than the whole, so just remember it’s okay to just be good at some things.
With that I’m happy.