We have sense organs because we cannot know everything. If we had complete knowledge about our surroundings, we would not need to look again. But our knowledge is incomplete. So we have to look.
However, we do know something at least. At any time, we have some knowledge already and, as a result, we have expectations about what we are going to encounter, and methods or plans on how to react to it.
But our knowledge is always incomplete. It has gaps, is partially vague and contains mistakes. It has a limited reach: there is a part of our perceptions that is expected, but there is also a part that is surprising since we could not foresee it on the basis of what we knew already.
When perceiving a bit of new information, we can form a new memory of such unforeseen, surprising things. We can then apply this new piece of information, so it becomes new knowledge (we may define “knowledge” as “applied information” or “applied memories”). By applying the new information, something that was surprising the last time might become expected the next time we encounter it. Through interaction with the world, our knowledge is developing.
In terms of mathematics or computer science, we may think of our knowledge as a formal theory about reality that we use to derive expectations about what is going to happen. An event we could not foresee is something that we could not derive in this formal theory. By adding new information that was surprising before, the formal theory is extended, and new things, i.e. facts that could not be derived before, now become derivable in it.
This theory about reality can also be viewed as part of a theory about our own thinking processes: if we try to describe how our own cognitive processes are working, our knowledge, i.e. our theory about the world (including ourselves) would have to be part of that description. (The deeper reason why we have to include our changing knowledge in a description of ourselves is just that this knowledge is changing and extensible. We cannot define a fixed border between a core “system of cognitive processes” and a changing knowledge base.)
If we add a bit of new information by forming a new memory, we add something to our knowledge. A “complete” description of ourselves would then have to be extended as well. A complete formal theory of ourselves, i.e. a description of our thinking processes in terms of a single formal theory or algorithm, is impossible because of this simple ability to add new information, to extend ourselves with information we take up from the environment. We may think of this as a process of self-programming.
If there is no complete theory of ourselves, there also cannot be any complete theory of our culture. We may think of our culture as the totality of all knowledge or information that we have built up. The process of surprise and extension that applies to a single human being also happens on the level of cultures or of any subsystems of cultures, like groups of people or institutions. While sciences in the narrow sense of the word describe systems that have fixed laws, human cognition and human culture cannot have fixed laws if they are extensible by new information. As a result, the humanities will always be different from science and philosophy is not going to disappear, although the world and humans “are implemented” in terms of nothing but physical processes.
The extensibility of ourselves, the ability to acquire new knowledge about and from our environment, enables us to deal with a world that surprises us. At the same time it makes it impossible to describe ourselves completely, so we become surprising ourselves.
(The picture is from https://commons.wikimedia.org/wiki/File:Castle_using_eye_for_wide_angle_lens.jpg)