Much of my success in life I attribute not to the fortunes or misfortunes of my birth (genetics, socioeconomics) but to my ability to learn and act on what Iâ€
I could be totally wrong. As an experiment of one all my success could be due to luck and happenstance. I have learned that all-or-nothing explanations tend to be wrong. Itâ€
In the case of learning I have found that the ability to continuously learn is much more important to living in the 20th and 21st centuries than other highly desirable abilities. A good general learner is better able to handle change, surprise, and ambiguity than the expert or the specialist. This is my personal experience of personal growth and of managing hundreds of software engineers and managers over the last 30 years.
Here is a trivial example:
- JP is an okay coder. Not brilliant but able to reliably get the job done with help from co-workers and stack overflow.
- PJ is an excellent coder. Brilliant but only really into one programming paradigm.
- JP has no strong opinions and thus their work is all over the place in terms of coding style and techniques.
- PJ has many very strong opinions on “best practices†and thus their code is clear, concise, and predictable.
- It is interesting to note that a JP story point tends to be a larger but fixed value as compared to PJ. JP takes about the same amount of time and effort to get anything done whereas PJ tends to be more variable in their output.
- A scrum master can sleep on the job with JP but really needs to pay attention to PJ as one never quite knows when or what PJ is going to deliver.
I bet youâ€
Who would you rather have on your team, JP or PJ? Who would you rather manage? Who would you rather be?
We need both JPs and PJs. Iâ€
The main difference between JP and PJ is how they learn and how they use what they learn.
In the following series of six blog posts Iâ€
In full disclosure, I have invented none of these concepts and not everyone agrees that these ideas completely model the learning experience. Iâ€
Iâ€