drwex: (VNV)
[personal profile] drwex
I'm feeling sort of pleased with myself for coming up with an answer to a problem at work. The challenge? How do I teach this kind of thinking to anyone, particularly my kids.

At work there was a massive fire drill this morning. It could have cost us a LOT of money; the assignment for the tech folks was "Help! How bad is it?" Determining how bad it was in the end involved processing a lot of log/text files to extract the key information. Several of us were attacking different aspects of the problem. In the end, I got to a solution before someone whose day job it is to munge these kinds of things.

I got there faster not because I'm a command-line whiz kid (I'm not, he is) but because I was able to understand that the problem was, essentially, do a set difference on those two lists. I then Googled "linux command line set diff" and sure enough there's a way to do that. When I explained my solution to the tech whiz he agreed it was a good solution, but noted he never would have conceived of the problem as "find the set difference."

I don't think I'm all that much brighter than anyone else, nor am I especially creative. But I am good at this: seeing problems, analyzing them quickly, recognizing patterns, and getting rapidly to solutions. Except I haven't the foggiest idea how I do it, how I learned to do it, or how I would go about teaching that kind of skill.

Comments, thoughts, share-your-own-story all welcome.

Date: 2012-01-06 06:40 pm (UTC)
From: [identity profile] badseed1980.livejournal.com
I think that problem solving isn't a skill in itself. Rather, I see it as an application for a number of different kinds of skill sets. Many people who are good at problem-solving have different skills and techniques that they use to solve problems. And, of course, the TYPE of problem makes things different as well. Thinking about it, one thing that might be universal is "simplify." Being able to get to the root of what a problem really IS, is vital. Simplifying your problem allows you to simplify your data, too, because it's easier to tell what's relevant and what isn't. That makes it easier to spot patterns and make connections.

Date: 2012-01-06 06:52 pm (UTC)
From: [identity profile] caulay.livejournal.com
As [livejournal.com profile] badseed1980 said, being able to simplify the problem is critical. Some people seem to be able to do this instinctively, some people learn to do it. Of course, it helps to be able to quickly determine which details are relevant and need to part of the simpler version and which are not.

Another factor is often being a generalist rather than a specialist. Specialists are really good with their normal set of tools, so they always try to use those first. A generalist, being handy with many tools but not being particularly good with any specific one tends to put their initial work into figuring out which tool will be best to solve the problem. So when the specialist is right, they'll have a solution much faster than the generalist, but most of the time the generalist will have the problem solved about the time the specialist figures out they've taken the wrong approach.

Teaching people to not just go with their first impulse, to always try to come at the problem from another angle helps a lot with this.

Date: 2012-01-06 07:05 pm (UTC)
mangosteen: (Default)
From: [personal profile] mangosteen
Having this same kind of rep at work, I've wondered about this as well. A lot of it is (like [livejournal.com profile] caulay says) is being a generalist. Having a large amount of associative links you can bring to bear on any problem is going to help a lot.

One specific technique I've used lately has a Sherlock Holmes feel to it, specifically, taking a step back from the problem and saying "Okay. Mechanically, what *must* be happening in order for this to be true?" It won't give a full picture, but it's a way to assert things about the environment in order to start narrowing the problem domain, because then you can work the decision tree backwards.



Date: 2012-01-06 07:12 pm (UTC)
From: [identity profile] taura-g.livejournal.com
K.I.S.S.

I have always found problem-solving to be an exercise in breaking the problem down into its simplest form or forms. And I think that it is something that is learned more through practice than anything else.

Puzzle solving seems to help me sharpen my skills that sense.

Date: 2012-01-06 07:59 pm (UTC)
From: [identity profile] catya.livejournal.com
this is good advice.

Date: 2012-01-06 09:04 pm (UTC)
From: [identity profile] chienne-folle.livejournal.com
I don't know you that well, so this may be off, but I get the sense that you're also less distracted by your emotions than other people might be. When solving problems, most people spend a lot of time first on "Oh, shit, there's a problem" and then on "But I don't WANT there to be a problem" and then on "But this messes up all my plans" before they actually start working on solving the problem. If you skip those emotional steps -- or even just spend less time on each one -- then you can start solving the problem that much sooner.

Hard question, no easy answer

Date: 2012-01-06 09:08 pm (UTC)
From: [identity profile] ahf.livejournal.com
As a team lead in our group, I am tasked with teaching just this kind of troubleshooting to folks. Not easy. What I am teaching is in a set arena. I am finding one key is figuring out the approach the person I am teaching uses, and then pushing them to look at it another way. It does not matter what other way, just that it makes them think outside the box they are in. I also agree with the keep it simple.

Date: 2012-01-06 09:31 pm (UTC)
dcltdw: (Default)
From: [personal profile] dcltdw
This reminds me of high school when we were learning calculus. I would often arrive at the answer faster, and that's because I usually picked the right method (substitution, or trig substitution, or this or that) first, whereas other people would cycle through them.

I guess what I'm saying is "pattern matching". But I don't know how I learned that pattern matching.

I also think there's some value in learning, "okay, I tried this angle for 10 minutes, and it's my ego that's saying "stay on target" whereas my intuition is daydreaming. Let's say this is wrong, and try another angle."

Date: 2012-01-06 09:36 pm (UTC)
dpolicar: (Default)
From: [personal profile] dpolicar
A few things I find key for problem-solving:

* Recognize that what I already tried didn't work.
This sounds ridiculous, but it's really important. Most problems that come up I solve without thinking about them much; I just pattern-match subsets of the problem against solutions I know and try those solutions. It works great for quickly solving the problems it solves, but when a problem resists being handled that way it's really easy to end up in a stupid loop where I'm trying the same solutions over and over.

Mostly I take notes about what I do and what results I get.

* Make sure my feet touch bottom.
If a problem is too complex for me to fully understand at one gulp, I either break it down into sub-problems which I solve independently or I come up with a simpler version of the problem. I've struggled with a lot of smarter-than-me people over the years whose attitude seems to be that if they make the problem complicated enough, everyone but them will drown in the complexity and they'll win by attrition, even if the problem itself doesn't get solved.

* Adopt different perspectives.
"It ain't the things ya don't know that get ya. It's the things ya do know, that just ain't so."
If I'm stuck on a problem, I start throwing out things I thought I knew, approaching it from a completely different position. "What if that were false?" "What else does this look like, and what if it were really like that thing?" etc.

* Work backwards as well as forwards.
That is, not just "What might be causing this problem?" but "What might a solution look like, and how could I get to that?" (Followed by "What else might a solution look like?")

Date: 2012-01-06 10:30 pm (UTC)
From: [identity profile] ianhess.livejournal.com
I practice this skill by playing games to understand the process and reverse engineer mechanics, rather than to simply lose myself in the game. A good example of this was teaching a fast-playing chess variant called "suicide chess" to a group of friends. It was easy to iterate over games in 5-10 minutes, and it was more interesting to me to see strategies develop with new players than win.

Date: 2012-01-06 11:31 pm (UTC)
From: [identity profile] c1.livejournal.com
Heh... I spent all of grad school asking this same question.
IMHO, a lot of it comes from actively seeking out diverse experiences that require problem solving. Your problem, for example, might be to bring your colleagues out to go rock climbing (gigantic, vertical problem set requiring kinesthetic knowledge) and to a Habit for Humanity site (spatial as well as, sequential problem solving, with a healthy dose of cat herding and a smattering of various maths).
It's not intuitive to everyone, but I think you get better at applying past experiences to a problem by accumulating experiences in domains that seem to have nothing to do with your customary problems: it makes your brain more flexible in applying those seemingly unrelated lessons to the problem at hand. When you think about it, your biggest asset in problem solving is flexibility, not necessarily domain-specific knowledge.

Date: 2012-01-07 03:18 am (UTC)
From: [identity profile] intuition-ist.livejournal.com
you can't teach smart. i'm more than halfway convinced that your problem-solving skills are (further) evidence of your smartitude. (and that's not a bad thing!)

Date: 2012-01-09 03:29 am (UTC)
From: [identity profile] gentlescholar.livejournal.com
I agree with a lot of what has been said above.
For my students, I made a d20 out of index cards with 20 tips, things to try when they are stuck.
In my area, defining the problem precisely, and defining what the answer would look like,
often solves the problem, or at least makes it MUCH simpler.
To understand something general, plugging in something specific for starters can help. An example is worth a thousand words.
In my area, "Is something equal to zero?" is often a crucial question. I call those "the dog in the nighttime" problems.
Working backwards often helps when working forward is hard.
Taking a guess, and figuring out why the guess is wrong is sort of a contrapositive approach.
Figuring out when two things are equal, how they are equal, and how they are not equal, can clarify things.
Those are the first few off the top of my head.
I agree that diversity of knowledge can be a big help.
Also facility with one area: one time I taught my astronomy professor something about eclipses because I noticed that
19 is exactly a third of 57.

I've read books that try to teach this stuff...generally, my d20 with one word on each face tends to have them beat.
It's hard to see how to teach it better.

Profile

drwex: (Default)
drwex

July 2021

S M T W T F S
    123
45678910
11121314151617
1819 2021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 5th, 2025 03:23 pm
Powered by Dreamwidth Studios