I ran across this list of 3 types of programmers today. When I read this, I finally understood something about myself: I’m an Elvis! :)That article purports, in short,that the three types (called Mort, Elvis, and Einstein in the above linked article) are delineated by the amount of preparation you need to put into projects before and during coding. I changed the names used from Mort/Elvis to Wayne/MacGuiver (I think those names make more sense).
- Wayne (John)-Often referred to as a cowboy coder. They prefer to jump into a project, and use tried and true techniques. It’s better to finish the project then spend too much time planning. If you need to come back later and fix things, that’s no big deal. No beta, just release.
- MacGyver-Will spend some time planning and designing, but won’t get too bogged down in the details. Tries to make an easily maintainable program, and learns new techniques as necessary along the way. Release a beta, fix bugs, release final.
- Einstein-Paranoid about failure of any sort. Spend a lot of time preparing. Studies and learns ahead of time about any foreseen new techniques required for the project. Strives to create the most efficient program possible. Release alpha, release beta, release RC 1, release further RC’s as necessary, final release.
The cool thing for me was that I finally have some backing for a concept I’ve believed for a long time: I’m not a spaghetti coder, nor am I a scientist type OO programmer. I’m somewhere between the two. See, like the Einstein types, I think that spaghetti coders generally make crappy code. However, I’m not paranoid enough to take the preparation that Einsteins prefer.However, I will admit that some projects require the Einstein type of coding. By the same token, I believe that some projects (or rather, some clients/bosses) require spaghetti coding.All that said, I think it’s fair to say that people that would read Framework books sit in the Einstein camp, for the most part. Paranoia is a strong term, but I think it drives these programmers to the lengths they prefer to take with their projects. Now, I do believe that some framework users will probably be in the MacGyver group. But the framework developers themselves, and a lot of their users are definitely Einsteins.I’m curious, what would you call yourself?