97 Things Every Programmer Should Know

(Chris Devlin) #1

Collective Wisdom from the Experts 99


Beyond communication with machine, self, and peers, a project has many
stakeholders, most with a different or no technical background. They live in
testing, quality, and deployment; in marketing and sales; they are end users
in some office (or store or home). You need to understand them and their
concerns. This is almost impossible if you cannot speak their language—the
language of their world, their domain. While you might think a conversation
with them went well, they probably didn’t.


If you talk to accountants, you need a basic knowledge of cost-center account-
ing, of tied capital, capital employed, et al. If you talk to marketing or lawyers,
some of their jargon and language (and thus, their minds) should be familiar
to you. All these domain-specific languages need to be mastered by someone
in the project—ideally, the programmers. Programmers are ultimately respon-
sible for bringing the ideas to life via a computer.


And, of course, life is more than software projects. As noted by Charlemagne,
to know another language is to have another soul. For your contacts beyond the
software industry, you will appreciate knowing foreign languages. To know
when to listen rather than talk. To know that most language is without words.


Whereof one cannot speak, thereof one must be silent.
—Ludwig Wittgenstein
Free download pdf