I want to discuss a specific meta-idea - by which I mean an idea which helps in the discovery and discussion of other ideas.
The Frame of Context
My starting assertion here is the following:
All dialog - internal or external - happens within a frame of context which includes many implicit assumptions and unmentioned concepts.
It is in fact impossible to have any dialog without a frame of context because without one, you would need to transmit the full definitions of each word, concept and semantics of the language within each message. While frames are essential to discussion, they deeply affect not just the solutions but also the the level at which we solve the problems. I'll try to illustrate this idea with a couple of simple examples.
A Clever Person
My first example is more of a thought experiment.
Lets say in an imaginary primitive world, a very clever person is one of few who has mastered basic arithmetic. This person is then tasked with teaching others how to do arithmetic correctly (specially complicated things like division). How would this person operate?
This person will probably refine their methods, formalize them, invent new ones and quite possibly teach them successfully. In fact, if they're particularly clever, they might even invent mechanical machines that help with the arithmetic. If someone complains that all this is still too hard, our clever person might even beat them down with "math is hard, deal with it".
Now lets also say all of this happens in roman numerals because, as it happens, that is the only representation the people have come up with. It might not occur to our clever person to try and invent a completely different but better representation. The problem they are dealing with is improving the arithmetic methods, not the representation of numerals - for which a system already exists. Representation may not be identified as a problem to be solved - it is completely part of the frame.
A Better Connection
For my second example I want to use a great YouTube tech talk by Van Jacobson called A New Way to look at Networking.
In the video Jacobson talks about the path building concept in the old phone systems. When you dialed a phone number the system built a 'path' - a real physical connection that was committed to your call and joined the caller to receiver. Once established, the electrical signal went over this path. This had a significant set-up cost and these systems were being evolved for use in data networking. Jacobson says:
There was a bunch of work that was happening in the 60s and 70s saying... if we ever wanted to make a faster network, we're going to have to figure out how to do faster set-ups. And so pretty much the entire US research establishment was aimed at that problem.
Networking research was how to amortize the set-up cost and "maybe we should worry about the reliability and some of the other structural things", but it went as an unspoken, unquestionable assumption that telephony was the right model for data networking. It was communication, nobody did anything else!
I think this is a fantastic example of a strong frame - the words "unspoken, unquestionable assumption" give it away. Jacobson then goes on to talk about the invention of packet switching, which eliminates the need for dedicated physical connections, makes the connection 'virtual' with the data being transmitted in separate packets, each of which could take a different physical route. Packet switching was invented by Paul Baran and Donald Davies who questioned whether circuit switching was the only way to do networking. Today, of course, packet switching is the primary idea underlying data networks and in retrospect is clearly better in many ways.
Jacobson goes on to talk about another frame that we currently live in - the notion that addresses identify locations. An address may locate a server, for instance, and then you would ask the server for some content. The alternative he proposes is that addresses identify content - an idea that is called content centric networking.
Finding the Problem
To summarize the above examples - we can be so absorbed in the problem at hand that it becomes hard to realize that a frame exists and that there is an 'outside' of the frame. In fact, the problem itself is often formulated within the frame - the problem definition uses terms and concepts provided by the frame. So while the frame is definitely in use, it is still out of sight.
Alan Kay captures this idea of problem finding very well in many of his talks. Here are some excerpts from The Power of Simplicity:
You need to solve the context...in fact, finding what the real problem is, is the big deal.
Most problems are bogus because they come out of the current context and we're trying to get beyond the current context. So forget about problem solving - it's a bad heuristic - it's the last thing you do.
The core idea that appeals to me here is that in some cases the better solutions (or rather, the better problems) exist outside the frame. The problems as formulated are, in fact, not the really useful ones to be solved, and when we find the better problems, they render the original problems irrelevant. While it's not easy to identify and find the good problems, the question I intend to ask often is "are we solving the right problem?"