Problem Solving

Growing up, I was a problem solver.  If someone had a problem, I'd like to solve it.  Yet I didn't discriminate on who I helped.  Typically the underdog or perhaps a person of authority.  And I'd solve problems, get recognition and move on.  And this pattern has existed for a while.  So when I got into programming, I found that I could solve problems for a living.  People actually pay you for this.  And everyday, I'd tackle problems, I typically liked the ones that noone else could solve, because they were the most challenging.  Often, other programmers would call me over to assist.  They'd go through their routine, telling me, I do this, then I do this, and then it does this.  Can you fix it.  Then they'd watch over my shoulder and try to instruct me to follow the pattern which created the problem.  Except that's not how to solve it.  I go through every single step along the way, especially the ones that the other programmer glanced over, because more times than not, that is where the problem is hiding.  I liked these types of problems to solve because it had clear definitions, there was a program, didn't matter the language, the program wasn't working, fix it.  I found the other programmers would not get into the details.  They'd skip over them, perhaps they didn't like to think at such a low level.  It's like working out physically, some people sit on the couch, and pushing the remote control is considered a workout.  Yet some people go the gym and lift weights.  And other people do marathons and triathletes.  I've seen programmers of all caliber, some don't like to think, others think occasionally, and some have the staying power to go the distance.  I like to think that I excel at the ladder.  And that's what I like about programming is solving the problems because they're usually based in logic and processes and when you tackle such things, with perseverance, creativity, playfulness, it's just a matter of time before the solution presents itself.

No comments:

Post a Comment