While browsing Reddit I came across what looked like a promising article: A Programmer+¢G‚¬G„¢s Communication Skills. Turns out to be not so interesting, merely taking a swipe at the popular notion that “communication skills” are important for programmers. I’m all for debate, but perhaps one should understand the (un)subtle distinction between “communication” and “presentation/seminar” before taking such swipes.
rnrn
Good communication skill means the ability to convey ideas succinctly, to receive and understand ideas, and to seek clarification when you don+¢G‚¬G„¢t understand. It’s important when presenting a talk in an auditorium, gathering requirements from a customer, explaining to a subordinate how to implement a module, explaining the project status to your boss, writing a user manual, and documenting your source code (especially if you believe that code is self-documenting).
rnrn
But I still haven’t got to the real reason that communication skills are important for programmers … you see, when we write a program we use a programming language. That language is the medium through which we communicate our intentions to the computer and with other developers.
rnrn
If you can+¢G‚¬G„¢t describe to me how you are going to implement something, I don+¢G‚¬G„¢t trust that you can describe it to a computer (which has far less capability to work out what you+¢G‚¬G„¢re trying to say).