Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine

Re: That screwdriver looks like a hammer...

by perlfan (Curate)
on Aug 23, 2004 at 16:20 UTC ( #385139=note: print w/replies, xml ) Need Help??

in reply to That screwdriver looks like a hammer...

LOL. Great success story, however I thought it was going the other direction.

I've found that most of my stuff has not been used as I intended, but mostly because it is mostly *not used* at all - not because people are dumb, but because they are lazy and don't want to pick up a new "wrong" tool.

Nothing annoys me more than creating something that is not even evaluated - I doubt I am the only one with that experience, though.
  • Comment on Re: That screwdriver looks like a hammer...

Replies are listed 'Best First'.
Re^2: That screwdriver looks like a hammer...
by joeface (Pilgrim) on Aug 24, 2004 at 19:46 UTC

    You're not the only one with that experience.

    I work as part of a team that is responsible for scores of operational activities, including "ad-hoc" monitoring of application memory use in emergencies. We were recently tasked with doing a daily check of an application's resource usage, and restarting it when usage reached a certain threshold. Manually executing this task took our best (brightest, fastest, most accurate) people 20 minutes. Yesterday afternoon I took a couple of hours to write a Perl script that does this task in 20 seconds. Everyone in the dept knows about it. Do they use it? No.

    I'm confused about it -- this is a case where no tool existed in the first place. Now, a tool exists that gets this repetitive, annoying task out of the way 60x faster, and it's ignored. Humans are strange beasts :-)

Re^2: That screwdriver looks like a hammer...
by Theo (Priest) on Aug 24, 2004 at 23:31 UTC
    I'm on *that* wavelength. I recently built a shutter controller to ship with one of our spectrometers. I also built a small test box to determine if any given problem might be with the controller or with whatever device was driving the controller. I heard later that there was some problem which our "customer" spent half a day to discover that the controller was OK and the problem was elsewhere. The tester would have isolated the error in less than a minute, but they couldn't be bothered with finding the tester. Oh well.

    (so many nodes and so little time ... )

Tools ignored (or misused)
by Rhys (Pilgrim) on Sep 04, 2004 at 17:24 UTC
    I wrote - way back - a quick and dirty little program to find people who had attached their own hubs/switches to the network. I have just started dabbling in Perl and SNMP, so the first few scripts were quite horrible, inefficient, and (worst) similar to each other.

    Several years later, the tool is still in use, but has a built-in Web interface (that needs to be re-written to use CGI;, now that I know how), many different kinds of reports, much better SNMP handling, and a built-in arbitrary MIB query tool for the desparate debugger (usually me).

    Naturally, only one of these functions is actually used by any number of people, despite the fact that I hear them whine every day about not having this piece of info or how the ports are set on xx device. "~ has done that for years," I say. Blank stare. Sigh.

    At least there are two guys who use some of the more interesting features on a regular basis. These two understand 'intelligent laziness'. Sure, you *could* do it manually, but what's the point, especially when you need to do it accurately, and you need to do it 30 times?

    Ironically, the best thing to come out of the whole project - aside from my drastic knowledge gain in Perl, SNMP, and several other related topics - is that a lot of the app is written as modules. Originally, this was just to speed the thing up, since modules (and SelfLoader) were a great way to only load and interpret the code for the report I wanted. But later, I realized that several of the modules became what modules are meant for: I'd built a fairly functional API!

    Since then, I've used those modules (and CGI, and...) to create several other Web apps (and cron jobs), and those for some reason are much more appreciated. Go figure.

    The whole thing is due for another rewrite. I still do a lot of things manually that Net::IP, Net::IPv4, CGI, several other modules do better and faster. But it was certainly fun!

    If anybody wants to play with the app, it's called 'JScan' (named after me, originally, since at first I didn't anticipate that others would use it), and is at JScan.

      I think it would be worthwhile to change the name (before it spreads too far) -- for most people with anything close to a current understanding of software, an initial "J" in an app name tends to imply "written in java" (which, for me at least, would tend to steer me away from looking any closer at the app, unless I really had to).

      If I had seen the name first, then learned that it was written in Perl, I think I'd be disoriented for a little while...

        The original was written just before the Java craze really took hold, or I might have named it differently. Maybe not, since I'm still named 'Justin', and everyone here knows exactly what the 'J' means. :-)

        But when I post descriptions/requirements, I do make sure to mention Perl and certain required modules (esp. Net-SNMP's Perl module - easily confused with Net::SNMP, which is different!).

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://385139]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (8)
As of 2017-01-21 14:04 GMT
Find Nodes?
    Voting Booth?
    Do you watch meteor showers?

    Results (184 votes). Check out past polls.