We've had lots of "change your Point Of View" and "Think Outside The Box" Meditations over the years. Ovid is fond of mentioning Why I like functional programming, as a revelation. All of us have blind spots.
Well, it's one thing to read about it and another to have it smack you in the face. Specifically, on over at this node. I don't really use Unix - I'm just now teaching myself the basics of Linux. And the cronjob (and it's moral and spiritual equivalents), which seem common to the Unix culture is less common over in Win32-land. It was a blindspot for me, and now I am aware of it. So far so good.
But I couldn't sleep tonight, for various reasons. So I started thinking. The truth is that blindspots are places where you can't see - even the little bit you need to know that the blindspot is there. I started thinking on my little question. It occured to me that I should be surprised it hadn't been --'ed into oblivion. What I was asking wasn't a Perl question - it was CGI/design question, rooted in my lack of knowledge about multitasking operating systems. And I was aware of that when I wrote it. That's the kicker - I was aware of what prompted my question, but I still thought of it as a Perl problem!
That my friends, is a blindspot.
You see, my problem is that I cannot see any computer problem as a problem for Perl. Instead I see them as Perl problems. Perl has become the problem space in my mind, not the solution. That's a serious deep rut. For me this realization will probably make me a poorer programmer. Why? Because I'm a musician and actor, not a programmer. Programming is a hobby, but Perl has become too deep an aspect of my thinking. It has in many strange and subtle ways improved my composing, but now it's hard to think about music without my train of thought being diverted to Perl, because Perl is a deep part of how I think - which it shouldn't be.
You can't see blindspots because the mental equipment needed to recognize a specific blindspot is often part of what said blindspot excludes. Ask yourself over the next couple of days - is this a Perl problem? Is this a CGI problem? Is this sysadmin problem? Is this a computer problem (tricky one)? Is this a problem (trickiest!)?
Me, I'm taking a Perlmonks and Perl break. Give the rest of my brain a workout. It'll be interesting to see if improving the seemingly distant aspects of myself will improve my thinking with regards to programming. I suspect that it will.Cheers,
Light a man a fire, he's warm for a day. Catch a man on fire, and he's warm for the rest of his life. - Terry Pratchet