3 ms·
Seriously, last one. This article is the best thing I've read in probably a month or more. " From your experience as a programmer, what is it that makes a gre
by pchristensen 18y ago
Seriously, last one. This article is the best thing I've read in probably a month or more.
" From your experience as a programmer, what is it that makes a great developer? Can you point out a few qualities, both technical and personal?
Curiosity, initiative, tenacity, ability to reason logically, ability to communicate and to work with others. That’s not at all special for programmers, I’m afraid. Also, I strongly prefer to be around people with a sense of humor.
Your advice for young programmers -- or for not-so-young programmers?
Programming is part of software development. It doesn’t matter how fancy your code is unless it solves the right problem and you can explain it to others. So, brush up on your communication skills. Learn to listen, to ask good questions, to write clearly, and to present clearly. Serious programming is a team sport, brush up on your social skills. The sloppy fat geek computer genius semi-buried in a pile of pizza boxes and cola cans is a mythical creature, best buried deep, never to be seen again.
Learn your first language well. That means trying it for difficult tasks. Don’t obsess about technical details. Focus on techniques and principles.
Learn another programming language; choose any language that’s quite different from what you are best acquainted with. You can’t be a professional in the IT world knowing only one language. No one language is the best for everyone and for everything.
Don’t just do programming. Computing is always computing something. Become acquainted with something that requires your software development skills: Mediaeval history, car engine design, rocket science, medical blood analysis, image processing, computational geometry, biological modeling, whatever seems interesting. Yes, all of these examples are real, from my personal experience. "
- plinkplonk 18y ago"Don’t just do programming. Computing is always computing something. Become acquainted with something that requires your software development skills: Mediaeval history, car engine design, rocket science, medical blood analysis, image processing, computational geometry, biological modeling, whatever seems interesting. " This is the "magic key". Knowing a domain and being a good programmer makes you infinitely more valuable than just the latter.