reading - How to be
a Programmer:

"This long essay attempts to summarize the non-technical
things that I wish someone had explained to me at the
beginning of my career as a professional programmer. It is
primarily concerned with social situations and team
relationships that occur in typical software development. I
try to cover what I consider the essential, often
non-techncial, skills of the beginning, intermediate and
advanced programmer. The essay gives my opinions only; its
value lies in that the material is so subjective that it is
generally not taught in school directly or emphasized enough
in publications. It begins with a table of contents that will
allow the reader to judge their interest in the material. To
the beginner, it may be a peek into the culture of the
software engineer; to the advanced programmer, it is an
opinionated review that I hope will provoke thought due to its

(Post originally written by Ruslan Spivak on the old Nuxeo blogs.)