Monthly Archives: November 2020

Poor man’s active listening: is it good or bad?

“Did you understand?” We all know that we can never trust the answer “yes” to this question, yet we fall into this trap unavoidably. Most often due to lack of time or patience.

Ideally, we should get a summary from the listener of his understanding in his own words, much like a checksum, so you are sure the message gets across. Or when we are listening, we should summarize what we just heard and aim to get an acknowledge to that. This is called active listening (or reflective listening on Wikipedia).

Yet sometimes the time is tight, we just feel lazy to execute this method, or our communication partner is not willing to prolong the conversation. In this case, I find an easy solution is to ask if it’s a good or bad thing. An example:

Continue reading Poor man’s active listening: is it good or bad?

Understanding software dynamics with Lehman’s Laws

Lehman’s Laws on software evolution demonstrate the complexity of software-intensive systems and the organization and process for developing them. I find the last law central to the whole theory: “E-type evolution processes constitute multi-level, multi-loop, multi-agent feedback systems and must be treated as such to achieve significant improvement over any reasonable base.”

We can demonstrate this with a little help from system dynamics theory. System dynamics tries to breakdown the complexity into variables and looks then at their interactions, and especially loops of interactions.

Continue reading Understanding software dynamics with Lehman’s Laws