Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

comment on

( #3333=superdoc: print w/replies, xml ) Need Help??
Well, for me, my company's corporate goals don't including "encouraging language elitism".

It's hardly language elitism to expect your programmers to know the language they are programming in. Companies exist to make money. One way to make money is by doing something better/faster/cheaper than someone else. By encouraging your programmers to learn the language idioms, you increase their ability to do things better/faster/cheaper.

It's more time and money efficient to write your code so that people who aren't perl experts can still understand your code than to spend five years teaching all of them all of the ins and outs of the language

But the thing is that you don't have to spend 5 years teaching them all the ins and outs of the language. You spend a couple of minutes here and a couple of minutes there explaining the things they don't understand. This has the general effect of making everyone more productive programmers because now they can apply the concepts to their own code where otherwise they'd waste time doing things "the long way". (Note that I didn't say "more productive perl programmers". Learning new concepts can make you more productive in other languages as well. Witness the influences of regular expressions on modern programming languages or functional programming on traditionally non-functional languages)

Taking the reductio ad absurdum route with what you're saying, if several of your programmers had never used grep or map before would you discourage everyone from using grep/map? Or would you encourage those programmers to learn about grep/map? What about other common language features? Where do you draw the line of what's simple and clear and what's not?

The rest of your post I agree with even if the example is a bit of a strawman. Your last sentence though:

...if the code was written to a reasonable level
Using language idioms is at "a reasonable level" to me. It's fine if some programmers don't use them because they don't know them. But if they're reading code that does use an idiom they are unfamiliar with they should be able to figure it out and incorporate it into future code.

In reply to Re^5: seeds... by duff
in thread seeds... by SamCG

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, 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, 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.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others examining the Monastery: (9)
    As of 2021-01-25 10:56 GMT
    Find Nodes?
      Voting Booth?