We have been calling for the coming of Knowledge Based Economy for years. But in my view, Knowledge Based Economy hasn’t really come yet. Among many reasons, one key reason is that we need a technology breakthrough here. The current way knowledge is represented, such as books, blogs, wikis, or other knowledge management systems, are all fundamentally document-based. With document-based representation of knowledge, it is hard to achieve continuous learning and knowledge management.
In the industrialization age, we invented engine to transform energy from gas into mechanical power, thus we can build airplanes, boats, cars or other products of the industrial age. In the Knowledge Based Economy age, we also need an engine, which I call Knowledge Engine, to transform people’s daily experiences and gathered important infos into well-structured knowledge, so we can build various products in the Knowledge Based Economy age, to help us better learn or do project management.
Talking about learning, the current mainstream learning is school learning. School learning is isolated from real life. One isolation is its learning “content”. The textbook in school is too outdated and cannot meet the rich needs of real life, which is in various aspects and on various levels. With Knowledge Engine, however, everyone becomes a knowledge explorer, and knowledge can be shared more timely. We will have more varieties of knowledge to be shared and they will be shared on a much more massive scale. Sharing by book publishing, blogs and so on is still too slow for knowledge propagation. Knowledge Engine will greatly lower the threshold of knowledge sharing. Through learning in a domain, the learner can accumulate his experiences in various aspects of this domain, important infos or facts, together with rich learning materials. He can work on his collections, form a good structure of knowledge and share with others while he is making progress in his learning. Actually, this is what we do in our real life learning. When we ask someone for his learning experiences in a domain, usually the knowledge sharer will list 1,2,3,4,5… key points quickly and give a brief explanation for each. In Knowledge Engine, we want to make that summarizing work happening on the go and can be done very quickly.
The second isolation of school learning from real life is that people who teach in the school have no learning experiences and thus true knowledge of the domain that they are teaching. With Knowledge Engine, however, learners collect and form a good structure of knowledge while they are learning and doing knowledge exploration. When the accumulation of knowledge is rich, complete and mature enough, the learner can try teaching it as a subject. So this way, excellent professionals in all walks can start teaching in their spare time, and become a high quality of resource of teachers. This will change the profession of teaching. Furthermore, students’ learning states can be well reflected by the Knowledge Engine, so the teachers can offer very effective instructions to the students. The teachers can build knowledge frames very timely according to the students’ learning needs.
The school learning mostly fills students with dry knowledge. People staying in school for more than 10 or 20 years still haven’t learned how to learn. With Knowledge Engine, however, the future learning will be chiefly learning by oneself. The teachers (or the early learners) have built up knowledge with good structure and accumulated rich learning material(books, blogs, videos, examples, projects, questions, and so on) through their own learning. So the students (or the future learners) can use these as their rich learning resources. With a good overview of all the knowledge to learn and with rich learning resources, the learner can decide for himself how to learn in the fastest and best way, as Knowledge Engine also helps the learner knows clearly his current knowledge structure. The essence of learning is self-learning. In the future, learners will learn mostly by themselves or through peer learning. The teacher only gives guidance to help learners learn, besides providing a good knowledge structure and learning materials.
Because of school, people have very misled concepts of learning and knowledge. But through Knowledge Engine, people will get to know quickly what is learning and what is knowledge. Only by editing operations and through some predefined workflows, the learners can learn quickly how to learn effectively. I think this is where the power of software is.
Last but not the least, students’ knowledge is visible in their exploration of knowledge. Also when they build up open space knowledge with their teachers together, they are participating in very meaningful social works, and their contribution is visible to the public. These will be an important part of their portfolios. (Just like what happened in open source software) Future employers will use these to pick competent candidates instead of relying too much on test scores, which can not really evaluate how much the person really understand the knowledge. Furthermore, through Knowledge Engine, the learner’s capability to learn and to explore knowledge can be demonstrated. Especially if the learner is able to open a course and teach others what he has learned, it certainly reflects that he has mastered the knowledge pretty well.
So the real life learning is not very difficult. We don’t need to be locked away from real life for more than 10 or 20 years to learn. Life is the primary. Learning is only secondary. Learning is to make out life better, instead of replacing it. Otherwise, there would be no learning, just like our current schools.
I hope the work of Knowledge Engine, can help make real life learning the mainstream learning of the future, and really start the Knowledge Based Economy.
This is a conference of Python. Starting from 2002, Python has been my favorite programming language. But I only got chances to write Python scrips for years. Finally in my job, my boss allowed me to prototype in Python, but required me to translating into Java after each iteration. That was a very painful experience. Finally in the research work on Knowledge Engine, I am able to do this exploratory work with Python. When Guido was designing Python, there was a clear goal in his mind: to make everyone being able to program, to express their ideas through programming and to do exploratory works. I cannot imagine how I can do the mast work on Knowledge Engine without Python. It would be hard to imagine with Java. So this is the first huge contribution that Python makes to this project.
The second comes from the idea of Pythonic. For me, it can be simplified as Principle of Playing. The design of Python has greatly inspired me in software design and my understanding of learning. This is the second huge contribution of Python to this project.
This experimental work of Knowledge Engine has passed two stages of experimentation. The first stage is me using the software to help myself learn, to see if it can be really helpful for my own learning. It turns out an incredible tool for my daily learning, and I need to use it daily for my learning. The second stage of experiment is to have a few other people use it to see if it can help other people as well. The result of this has been quite satisfactory to me. People who have no skills of reflection earlier can learn how to reflect quickly and thus open up the space of real life learning. The result proved my hypothesis when starting this project, and made me more confident on this project. Now I want to expand the experiment to a broader group of people, but still focus on people who already are strong self-learners, and are already using various internet tools for their learning. I hope to explore and find a mature practice of learning with this Knowledge Engine. Thus we can demonstrate to the world the possibilities and the power of real life learning.
For projects similar to this internationally, I found the following: wisdomclouds. The founder of wisdomclouds shares similar or exactly the same understanding of this kind of things. He didn’t use the word Knowledge Engine. But he used this phrase “All problems, one solution”. His software is used for project management only.
Trello, Joel claims that it will be able to manage all human consciousness. This means he already sees the potential of this kind of things. Trello is also used for project management currently.
Bagtheweb, is mainly for content curation.
This is a quite new field. I hope more people can join the work.
Note: this talk is lacking more specifics on the design of Knowledge Engine. Please read the next post: PyCon Speech Extra