A couple days ago DZone linked to the following article.
The author goes on to define a Day programmer as someone who write code for a living, being mostly incompetant at their job, just doing this for a paycheck. He then goes on to talk about night programmers as the leads of the technological world, the people that do most of the work, the people contributing to the evolution of their trade.
Every person i’ve ever met acknowledges that there is a distinction, I am no exception. However I believe there are actually 3 categories of developers, and they aren’t as clearly defined as he makes it out to be. website host information My categories are more along the lines of this
Let me now describe how i see each person. First here are the characteristics that i associate with a programmer.
Most programmers don’t see a solution, they see code to write, and that’s it. They also understand this limitation, and don’t regret it as their job is usually a means to an end ( feed their family, buy that lexus, the trip to Bora Bora ). These are often the first hit when a company is having financial trouble or the economy slumps.
The difference between a developer and a programmer, although might seem simply refering to terminology, i believe there is a fundamental difference. A developer is someone that will be uptodate, and someone who can propose a solution to a problem, not just take a requirement and bang out a bunch of code. Here are some of the characteristics that i associate with a developer.
A developer will help you through the problems, and stick with it. They won’t jump ship at first sign of a slightly better paying job, because they joined your company for more than just the paycheck. They joined because of the atmosphere, the challenge, the opportunity to show that they can be a cornerstone resource, and that thought they could contribute. These resources are the ones that will bring you solutions to your problems, instead of trying to find a way to fit your problem into their known pattern.
Now for the third category, what i call the elitist schmucks. These are actually mostly detrimental to your projects, so beware.
The elitist schmuck, is a very intelligent individual, and can be a huge contributor to your project, as long as you let them decide everything on how it is done. They have a vision, and as long as you don’t challenge that vision, things will be alright, until the next “big thing” hits, and you refuse to re-write your whole application/platform/etc into that new thing.
The difference i see between a developer and a schmuck, is the ability to work with a team, and with the business to achieve a solution. The ability to say “Ok, this isn’t the ideal technical solution, but it fits the timeframe, the budget and will work for now.” They often will propose multiple solutions to your problem, and offer the pro’s and con’s to each, and work to find the best fit.
just my 2 cents on the matter.