Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: Where are the Perl::Critic policies for the Camel? (the unthinking leading the unseasoned)

by tye (Sage)
on Oct 06, 2013 at 05:15 UTC ( [id://1057116]=note: print w/replies, xml ) Need Help??


in reply to Where are the Perl::Critic policies for the Camel?

I'll just note that my experience of throwing automated linters at uninitiated programmers is very often similar to throwing wishes at classical genies. You'll end up with code that obeys the automated rules but much of it will be worse than what you had hoped to prevent.

Keep that in mind and you might be able to mitigate that.

- tye        

  • Comment on Re: Where are the Perl::Critic policies for the Camel? (the unthinking leading the unseasoned)

Replies are listed 'Best First'.
Re^2: Where are the Perl::Critic policies for the Camel? (the unthinking leading the unseasoned)
by petdance (Parson) on Oct 06, 2013 at 14:29 UTC
    Never mind automated linters, how many times have you seen this exchange?

    "You should always use strict and warnings."

    "I used to have those but they caused a lot of errors and my code wouldn't run so I took them out."

    (This has a relative: "Didn't the CPAN shell make test?" "Yeah, but it gave a lot of errors so I had to do a force install.")

    xoxo,
    Andy

      Andy Lester graciously wrote:

      Never mind automated linters, how many times have you seen this exchange?

      “You should always use strict and warnings.”

      “I used to have those but they caused a lot of errors and my code wouldn't run so I took them out.”

      How many times have I seen that particular exchange, Andy? As many times as there are grains of sand in the sea! Especially if you count including -Wall in your Makefile’s CCFLAGS.

      But I can top that. I’ve actually seen this, and not just once, either:

      Manager: “We can’t have any more coredumps from our C programs. It makes us look bad and interferes with production.”

      Programmer: signal(SIGSEGV, SIG_IGN);

      I dearly wish I were kidding; I’m not.

      I see stuff like this every day, stuff that doesn’t so much move you to righteous ranting as it does to being stricken dumb with sheer disbelief. I bet I now have keyboard-shaped wedges permanently imprinted on my forehead.

      It’s code that leads first to apoplexy and thence to syncope. The thing is, after they bring around the code-smelling salts and still dazed you awaken from your nightmare, it’s all still there: holy terrors of truly Biblical proportion.

      And by Biblical, I’m specifically thinking of the venerable Books of Job and of Lamentations and of Ecclesiastes: no Good News to be found. :)

      We’re well into sackcloth-and-ashes territory here.


      “Weeping may endure for an entire dark release, but joy cometh in the fresh light of refactoring.”

      ― Psalms 30:5, the Programmers’ edition

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1057116]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others cooling their heels in the Monastery: (9)
As of 2024-04-23 11:37 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found