I wrote some good enough code just this morning, or rather I adapted some previously working code to work again, at least good enough, against a moving API. I had not used that script in six or eight months. And when I broke it out again to get some work done, I found that the webservice I had written it against had changed its user interface.

So I had about 850 records to process. After a couple of hours at it, it was working again, at least well enough. I got distracted by other projects in front of me (upgrading an asterisk server and debugging new issues introduced by the upgrade). When I turned back to the console running my script against the web service, I found it had finished processing my 850 records. And the results it produced showed that it gave me useful data for over a third of those records. A quick GROUP BY query on my result table showed that the next enhancement I was about to dive into (which would easily have consumed a good bit of the day I wound up devoting to my upgrade / debug work) would at best have let me try to process only an additional 5% of the total records.

Instead of spending another four hours writing the code to 'perfect' my script, I spent 10 minutes writing the boss, showing her the results of my GROUP BY query and explaining that, given the always limited resources we work with, that the additional investment of my labor was probably not worth the trouble and expense for another 40 records.

I suspect she trusted me on that conclusion. She did not write back insisting on 'perfection'. She also had other priorities for my time and energy.

-- Hugh

if( $lal && $lol ) { $life++; }

In reply to Re: The dangers of perfection, and why you should stick with good enough by hesco
in thread The dangers of perfection, and why you should stick with good enough by redhotpenguin

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.