I’ve been
reading a large number of technical books over the time.
And one thing which often strikes me when I read these books are how often
examples and solutions are “outside the box” and I always get sort of envious
of how these authors can do that.
Is it an
experience thing( meaning a learned thing) or an innate ability?
If it is
the first then there is hope for us mere mortals because experience and learning can all come with time. When I read books I try my utmost to
look at the reasoning behind what the authors write, and thus I attempt to try
and think “out of the box” because I would like to learn how to do so more
often. And when I code I try to apply that reasoning to my own problems and see if I can do X or Y instead of Z. It is not something which comes natural to me – that is clear - and I
started thinking about why that could be. Of course some of it is a "cost-effective" issue because sometimes you only have so much time to solve a problem and then the tried way can be faster, but it is not especially fun or perhaps even a good way.
It then struck me how much of my educational
processes have been “inside the box” and almost punishing outside sort of
thinking, even all the way back to public school, which somewhat locks you in
that kind of thinking.
Of course
some subjects in an education are purely “inside the box” – how to spell (which
I never learned well) and all that, however many subjects and problems are not
automatically inside the box.
Math for
one. When learning mathematics to begin with back in school, it was “formula X”
for solving this problem. “You can only
solve a second degree equation using this method”. And well, yeah – most likely
that is needed, but that sort of thought process sticks with you. As I moved to
more advanced math it was similar, although now we also should mathematical prove
that you could (should) use the given formula to solve the problem, and I found few
things more dull then that, taking a formular and "prooving it" – well save analyzing poems and stories.
Rarely did
mathematics education ever try to encourage creativity, new thoughts and all
that. It was all focused on that exam, and getting a grade because you could
remember stuff. It was the same when you should analyze poems for various language
classes and other such texts. I hated it because it was either using the
textbook interpretation or you did it wrong, and come now – what should be open
to creativity more than interpreting pieces of “art”.
This
mentality followed me on the way to university, for the years I studied
economics there. Marketing was “standard” replies from textbooks. Organization
and business/international/micro/macro economies, optimization problems and all
such theory were similar standardish. You had a textbook which explained what to do, how to
do it and why to do it. So you should follow them and get your degree. Sure you
could go “outside” the books and draw reasoning, but the sure way, and worse the encouraged way, was to follow
the books. "It says X in book Y, so that is why...." type response.
Whenever we
tried to think outside the box we ended up in problems, okay – perhaps our suggestion
to do economical crime, empty a corporation value and move out of the country
was less then optimal, but it was a symptom of the situation and we tried to challenge the mindset. Whenever we –
myself and a couple of fellow students – tried to challenge the “established”
theories, we got smacked upside down. We took conventional theory and applied
new mindset, and sometimes failed miserable – but at least we tried to think
and not just do as we should. But in an education where it is about getting a grade to move
on, there was little room for such experimenting unfortunately.
When I then
started my programming education, it at least opened the possibility for
thinking outside the box, but I could see on my fellow students that it was
often lost due to the indoctrination through the educational system.
When we analyzed problems and drafted design papers, it was for the majority of
time “follow this method” type of work. Then at least, when coming to larger
papers, we found the freedom to think outside the box, however we still
followed the methods. What we did instead was fragment a method and take the
few tools from a method we felt we could use and combined them, with sometimes
little success and other times to great success. However it wasn’t the “usual” thing to do, and
it was clear that this challenged our advisers and teachers just as much, and
it wasn’t always well liked by them.
The same thing happened with the programming classes which is where I felt it
was the most waste. You had a problem,
you read about a pattern which could solve said problem, and you explained how
you followed the pattern. Oh gee, now that’s innovative thinking for you.
So now with
a couple of years of actual programming and problem solving work experience under
my belt, I hope that I can get this “outside the box” mentality down, because
it would make many problems easier to solve, faster, better, more efficient.
But it surely wasn’t something I felt I’ve been trained to do through the
educational process, quite the contrary. But I do feel now it is needed to
actually solve a number of problems, unless one wants to turn to others who do
the thinking for you, and I do not want that. I want to be innovative, I want
to dare be different and I want to solve problems new ways, and not just the old
and tried way. So, I hope it is
something I can pick up (soon).
Of course,
it might all be an innate ability and then I’m out of luck and will have to
rely on smarter people then me to do the thinking for me…….