Knowledge debt

How to become a senile dotard, to fall out from the job market, and to lose your friends by knowing too much.

Sergey Vasilyev
5 min readSep 23, 2017

I was always wondering why and how and when people stop learning, accepting the new knowledge, and fitting into the ever-changing reality.

And, which is worse, am I becoming one? How can I notice that at all? How can I prevent that? Because, as you know, the stupid people do not struggle because of their stupidity; it is the people around who do.

Briefly on the technical debt

In the software development, there is a concept of the technical debt — a set of old quick decisions for the short-term benefits, but at the cost of the quality and maintainability of the source code in the long-term.

The main consequence of having the technical debt is the difficulty (up to inability) to add new features, new changes, or even bug-fixes. When someone changes the code in one place, another place breaks accidentally, causing frustrations and confusion. Not to mention that addition of the new solutions on top of the technical debt leads to other “compromise” solutions, manifesting the “technical debt interest”.

Eventually, such solutions lead to the “technical bankruptcy”. Sometimes together with the company bankruptcy, as the company becomes unable to deliver the product to the market anymore.

Luggage of knowledge

Recently, I had some thoughts on why it is so difficult to learn new things in the mature age, and especially in the old age. The skill of learning new things is critical for the software development field, of which I am part, and for my own prosperity on this field. The technologies change incredibly fast, and we have no choice other than to follow the changes.

However, the human’s brain refuses to even start learning those brave new things of the brave new world, which are the new reality (consider JavaScript). In a series of self-reflections, I’ve found that at least for me, it leads to a baggage of the past knowledge: I know too much.

Over the decades of my life and of the professional experience, I have gained enough knowledge to form the strong mental models. When I learn new things, I fit those new things into those mental models, and adjust the mental models when needed.

This fitting & adjusting of the new knowledge requires some effort, some willpower. This is why people easily believe in things that perfectly fit their mental models, and struggle with whatever does not. This is also a reason for the denial of the reality, those “5 stages of acceptance”, so on. “No pain — no gain”, you know.

The more knowledge luggage I have from the past, the more robust those mental models are, and more effort is needed to fit the new data. Because the adjusted mental models still have to fit all data, old & new — you cannot intentionally forget things that you know from the past.

Sometimes, I am too lazy to make such an effort. Especially when the gain is not clear or not expected to be high, so is not worth the pain. But even if the gain is clear & high, laziness can be an obstruction for multiple reasons.

Knowledge debt

This inability to alter the mental models looks very similar to the inability to alter the technical systems with a lot of technical debt: the difficulty (up to inability) to add new data. Which is, basically, a “knowledge debt”.

Note that the knowledge debt acquiring happens for the same reason and in the same way as for the technical debt: as a trade-off in favour of the short-term comfort at the cost of the long-term prosperity.

With that in mind, you can easily predict other symptoms of the knowledge debt. E.g., addition of the new data breaks some other unexpected & unrelated mental models, causing a frustration and confusion. Or, similarly, the pure existence of the robust mental models causes that only the fitting data are accepted, making the knowledge debt even bigger — the “knowledge debt interest”. I believe, you saw that a lot.

The knowledge debt interest, however, is more dangerous, when this denial happens slowly, very slowly, during the years. People with this level of knowledge debt slowly fall off the job market, living in their own shrinking bubble of the old solutions, old technologies, old methodologies (e.g. programming in Perl). Their friends start to think that they have become the senile dotards (which also explains Perl), and leave.

Eventually, to their surprise, they come to the point of the “knowledge bankruptcy”: when their knowledge is not needed anymore, and they are not needed anymore. And they have to start from scratch, investing 3–5–7 years (5–10%) of their lifetime to learning the new things, gaining new friends, finding new jobs. Which can be painful.

Knowledge debt prevention

How to prevent the knowledge debt? The answer is “you can’t”. The knowledge debt, so as the technical debt, is necessary: it helps to achieve some short-terms results where it is actually needed. And it is totally fine to have some amount of the technical/knowledge debt.

However, as with any debt, it is crucial to pay it out on time, and to properly handle the debt & interest to not get to the bankruptcy.

Lets look on few ideas how the knowledge debt can be handled, similar to how this is done with the technical debt (and financial debt, I believe):

  • Track the knowledge debt. Do not deny it, do not hide it. Notice when you take some new pieces of knowledge, or you make some decisions, especially if they were suspicious and questionable. Write them down to your notes (or to your diary).
  • Self-review your knowledge debt from time to time. Ask yourself a question on each such belief: Do I still believe in that? Were there any conflicts with the reality? What new data have I denied because they do not fit into this mental model?
  • Peer-review your whole knowledge. Regularly, always. Even if it does not look like a knowledge debt. Never hard-wire the new data into your brain until discussed with others. Raise the various topics from your knowledge at the beer-parties. Visit the job interviews, conferences, meetups. Talk to people.
  • Refactor regularly. This is the most difficult part: drop the unneeded data out, forget it, re-adjust the mental models. Meditation can help here (not the classical one, with no thoughts, only the flow; but the intensively thought-full one).

What else?

--

--

Sergey Vasilyev

🐍 Pythonista. 🗿 Author of #Kopf. 🧡 Sr Backend Engineer @ Zalando. 👽 Chronic imposter. 🤷‍♂️ He/him. ♻️ But everything changes. Always.