This next log book entry focuses on communication. During the class we discuss communication a lot. Brooks' Mythical Man Month is all about communication, Multics discussed the inhomogeniety of technical understanding and light methodologies such as XP stress interpersonal communication. Ed's entry squarely addresses this issue and how difficult it is. Later!
Edward Gilsky's log book entry:
Having nearly completed the first course CS540 in the Quantitative Software Engineering MS being offered by Stevens Tech, I find myself wanting to believe that some of the material we have been introduced too might actually work and make my job easier, however, my mind keeps going back to something one of my instructors said to the students in a class I was in a long time ago.
In 1982 I was taking my third programming class for my BS in CS at Florida Tech. The class was COBOL and the instructor was a nice guy who cared aboutwhat he was teaching and his students, so he would often discuss the "why's" of what he was saying instead of just the "how's". A student brought up a problem he was having with another instructor who didn't like the way he had coded something, even though it seemed to work. The student was frustrated because he couldn't get across to the second instructor why he had written the code the way he had. He asked the COBOL instructor how to make it clear, and the COBOL instructor said "Never defend your work". That's all, just "Never defend your work, your just wasting your time". That didn't go over to well with the class, we were very defensive of our creations and generally took it personally when someone criticized them. We decided that the COBOL teacher was just old and tired, much like the language he taught.
Over the years I began to learn that he seemed to be absolutely right. I still couldn't figure out why, but nine times out of ten, when I tried to defend (or even explain) what I had done and why (in particular to
managers), the end result was that things were worse than before I had done so. Eventually I learned to avoid explaining what I was doing, even though I didn't understand why it was necessary to do so.
After some years more I considered that maybe the problem was not the people I was talking to, but me and my inexperience. With more experience I might be able to do better, so I tried again. Didn't work. Things I said just disappeared into the void or mutated into utter nonsense. When something I said made its way back to me, my general response was "I said what!? I don't even understand what that means!". It bugged me that I was apparently completely incapable of communicating this particularly important piece of information, when in all other parts of my life I seemed to be able to explain myself fine. So I thought about it some more and decided, it's not my fault. When a developer speaks to a manager (and sometimes another developer), no matter what the developer says, it comes out as babble. No matter how eloquent you are, no matter how well you have your facts together, no matter how well you know the subject matter, all they hear is "Wa wa wa wa wa" (Charlie Brown teacher noise here) because, in the end, they don't have the slightest idea what your talking about! So, they think "I didn't understand that, therefore, it didn't make any sense, therefore, this person doesn't know what they're talking about, therefore, they're incompetent and trying to snow me". I've decided, once again, "Never defend (or explain) yourself, it's just a waste of time". Maybe even to include all this process stuff.
Is this just my particular twilight zone or do other people experience it too?