| In the 35 years since the
original publication of Gerald Weinberg’s The
Psychology of Computer Programming, much of the
civilized world seems to have forgotten that programming
is a human activity, and that the amazing software products
and services we rely on are created by people, who have
their own likes and dislikes, strengths, weaknesses,
quirks, and idiosyncrasies. Interestingly, IT professionals
(programmers, software engineers, and people with a variety
of other technical titles) are often advised to spend
more time understanding and empathizing with the non-technical
people for whom they build systems; but it’s rare
that you hear non-technical people being advised to spend
more time understanding and empathizing the geeky techno-nerds
who actually do the work of building such systems.
If this topic has come up in
your organization, or among your peers, then Bruce
Taylor’s new book, Working Among Programmers,
is a must-read. It’s also a quick read, a mere
150 pages of straightforward, non-technical language;
and each chapter has a summary section entitled “For
Those In A Hurry,” with half a dozen bullet points
capturing the salient points discussed in the chapter.
For technical people, the discussion
will seem obvious and familiar; but non-technical people
have probably never stopped to ask how programmers
think, what their self-image is like, how they feel
about career advancement, about managers (which, of
course, should be obvious to anyone who reads “Dilbert” cartoons),
and about end-user “civilians” (no, it’s
not as bad as the attitude expressed by the Nick Burns “computer
guy” skit that Jimmy Fallon used to play on old
episodes of Saturday Night Live). And all of these
topics are contained in just one chapter of Taylor’s
book, entitled “About Programmers.”
There are other chapters about
organizational culture; the cast of characters in the
IT field (application programmers are not like system
programmers, and neither of those two categories are
similar to database designers, testers, network architects,
and others); the nature of a programmer’s work;
the nature of software engineering; and the trials
and tribulations of programmers.
If your own career doesn’t
depend on successful relationships with the programmers
who work with you (or for you), or if you only give
simple assignments and projects to your programmers,
then maybe you don’t need this book. But in most
of the organizations that I visit, the relationship
between programmers and the rest of the world is strained
at best, and totally dysfunctional at worst; and the
projects being given to the programmers are becoming
increasingly complex and challenging. It certainly
can’t hurt to have a better understanding of
what makes these people tick; indeed, it may be the
difference between success and failure.
Looking at Bruce’s
technical resume, I was intrigued to see that he
began with a BA in English Literature, followed by
an MS in Computer Science, followed (some 27 years
later) by an MA in Community & Social Psychology.
His job history and list of technical skills clearly
demonstrates that he knows about the bits-and-bytes
world the geeks live in, but he’s also got
the education and training (including a personal
and professional coaching certificate) to understand
what makes them tick. If you’d like to keep
up with his current work, he’s got a website
and a blog.
Ed Yourdon
Yourdon Inc.
December 2006
|