There are two major things I run into: figuring out the minimum knowledge needed to understand a certain thing, and deciding what to work on to further our knowledge and help everyone.
- My knowledge is quite specialized (I didn't have broad foundations), so sometimes it's hard to get into something. I know that I'm missing knowledge, but it takes forever to try and get from "I know how if statements and databases work" to making sense of a symbolic formula that might depend on set theory. If something could tell me "read these two pages and you've bridged the gap" (because the paper is about topic X and I already know topics Y and Z, so I only need those two to bridge my gap), that would be so much faster than googling "what's that sideways chandelier" and figuring out that it's set theory that I'm missing. There could even be circular branches between topics: someone who knows set theory can use that to understand databases more quickly than someone who does not, and vice versa. Posts explaining set theory for database users and vice versa could exist. But that's a lot of manual work to create each possible explanation, not sure that's viable, even if it has to be done only once.
- Related to the previous point, bridging knowledge gaps is currently done by asking questions. If you can ask another human a question, they can give an answer that perfectly fits your knowledge gap. That way of learning is much more efficient (for the student) than trying to give a workshop on the topic for a group of people. If we can do it as described in the previous point, we can free up a lot of resources that are now spent on having people tell the same things in slightly different form over and over again. Things need to be taught only once.
- When hiring, how can you tell if someone has the right knowledge for the job? Even a full day of testing can't tell you whether someone really understands all aspects of software engineering that are relevant for your organisation. If you can tick boxes on all the topics you understand, job matching might become much easier. Employers can request people with certain knowledge, and job seekers might get the jobs most in reach, e.g. "if you learn about these two topics, you are fit for this job" (on a technical level, at least). You'll still have to test that someone actually understands a topic (or have some trusted testing third party), but verifying a claim by asking randomly about a few topics is much easier than asking about everything.
- Our society demands ever more educated people. If you didn't have a lot of schooling, it can be hard to know what you are missing that companies are looking for. A message like "learn these three things and unlock this profession" might help a lot of people. (In the optimistic case, that is. It'll also cause people to reject candidates that are otherwise great because they're missing a topic. But at the start of a project like this, I'm just exploring the potential, not thinking about all the ways it could fail.)
- You can find who has certain knowledge within (or outside) your organisation to help with a project.
- At the leaves of the tree, you can find a topic to work on next, to further our understanding of the world. People can ask for certain issues to be solved or results to be confirmed and pay people to do that. Right now, our knowledge as a species is quite scattered and often hard to find.
I'm excited to see an attempt at starting that knowledge tree and am very curious to see which of the above points can really be done with it!