| [reply] |
I work with an awful lot of talented (and real crappy) programmers, and I've been observing them to try to learn what makes them so good (and so bad). I've come to the conclusion that there is no magic answer. It's a combination of things, and different programmers have different combinations. Here are three examples of gifted programmers, with very different skill sets.
Programmer A
This first programmer is only a few years out of school, but he's quickly become one of the company's top engineers (and we have about 800 of them). He has an incredible ability to research and learn (he's like a sponge), but what sets him apart is his creativity in applying what he's learned.
Programmer B
He's a more senior engineer. He's an "old-school" C programmer, and so his C++ code has a lot of globals and pointer arithmetic, but he doesn't make many mistakes (if any). In addition, he has a lot of vision and an uncanny ability to predict the future. His code reflects this, by leaving a lot of flexibility for future development.
Programmer C
In terms of experience, he sits somewhere between programmer A and B. His key to success is simplicity. He doesn't use fancy code or technologies to get work done. He relies on tools he knows well, always picks the right tool for the right job, and makes sure his code is as simple as possible. It may not be flexible or fancy, but it's so easy to read that anyone can understand it. It's quickly modified, and there are rarely any bugs in the code.
Each of these programmers has his own strengths, and I could go on for a while about what makes them so good.
Documentation, efficiency, and all of the other traits you mentioned are all good qualities for a programmer to have, but in the end, knowledge, and the ability to apply it, is what sets them apart. You can be the most organized, efficient, creative person on the planet, but if you don't know the tools and technologies you're using, and you don't know what problem you're trying to solve, your code will be crap.
Read, learn, apply. Often. That's the key to becoming a wicked engineer (IMHO).
Phemur
| [reply] |
Perl. Not PERL.
That is all.
(cowers from the wave of downvotes) | [reply] |
heh. Ironic I was going to post something similar.. especially considering the title of the node.. Uses and Abuses of PERL - one is abusing it right now by the grammer/capitalization of it. But, it's hard to be flamish about this issue - due to so many others who make the same mistake on the Web today. I don't mean those seeking Perl answers - but actual articles written by people for informative websites or whatnot. It's crazy how many capitalize it - I'm assuming they do it due to it being an acronym. An interesting node to view - PERL should change it's name.
Update: Alright.. not an acronym..so don't capitalize it ;)
| [reply] |
| [reply] |