I'm exactly the sort of self-taught, problem-driven perl programmer that people are talking about here, and i'm acutely aware that I'm still dragging my knuckles in many ways. Looking back at work that i did two years ago is always excruciating - i started by adapting MW scripts and didn't untaint for a long time - and a lot of that stuff is still in use.

So i think it probably is true that there are a disproportionate number of bad perl programmers around. i look forward to leaving their ranks one day.

But I think this is a good thing. There's a reactionary quality to CS elitism which reminds me of old landscape painters mouldering in the Royal Academy and deploring the fact that people make something they call art without even knowing how to stretch a canvas. They're right - and most of what gets produced without discipline and education is bad, or at least tedious - just as most 'i can do it' programming is somewhere between dreary and dangerous.

But what they're really saying is 'who let this rabble in?'. There's a new medium opening here and it's populated almost entirely by people like me. not the boring old internet: programming has recently become an accessible way of interacting with other people, of communicating and even sometimes of producing art.

programming used to be an elite activity, arcane and hidden, practised only by indoctrinated adepts. Like medicine or welding, we would just place our trust in the programming and rely on it to deliver us to our intended outcome. The internet has broken all that: now everyone thinks they're a programmer because they know some html, and thinks less of programming as a result.

I can see how that must chafe on people who have the refined sensibilities and deep understanding to see how crude our scribbles are, but surely it's a good thing to make programming accessible to everyone? because from the crop of muddlers-through there will emerge a few inspired and inspiring individuals who would never otherwise be seen, because empowerment and self-expression are a priori good things, and because temple priesthoods ossify and decline without being vigorously shaken now and then.

One of my favourite things about perl is that it's approachable: the rabble can have a go. I suspect that's the real reason why proper programmers dislike it. You don't have to know what an algorithm is to write one in perl.

My other favourite thing is that it has all the qualities of a proper language; idiom, slang, allusion, humour. it can be spoken by tourists and infants well enough to make things happen, but in the hands of virginia woolf or flann o'brien it becomes something magical. In my opinion, without the openness to outsiders we'd get very poor literature.

and my favourite thing about perlmonks is that it drops a ladder into the rabble and invites all who will to climb out.


In reply to Re: Perl as Cr*p? by thpfft
in thread Perl as Cr*p? by Ovid

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.