Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

Perl started out as a language for hacking together reports and automating system maintenance tasks. For a while, Perl was the go-to language for web development as well, and I think this is why it gained a lot of "mainstream popularity". Fast forward 20 years or so, and there's a whole lot of languages equally well suited for web development. (Some people would say better suited. Pff...) Some of those languages are well suited for other purposes too, and sometimes you can't do without them. (If "yum" was written in Perl I would never install Python. Ever.)

So, why are people choosing those other languages? Apart from there being a lot of choice out there, here's a few of the reasons I've heard from co-workers and friends:

  • It's a hacker's language. The syntax is just strings of line noise gibberish that makes sense only to someone suffering from extensive marble loss. (This is obviously false, regular expressions actually make perfect sense. As do hashes of hashes of arrays of objects. Containing hashes.)
  • Okay so it's possible to write readable Perl, but it's still hard to maintain. We had this one program... (Everyone's heard about this nightmare project with unmaintainable code that some ex-employee pulled out of his colon before he was convinced to pursue other career options.)
  • Multithreading is a PITA. This one is hard to argue with. (Hashes are the backbone of Perl, making them work well with threads is an exercise in masochism. Compare and contrast with Java's ConcurrentHashMap. DBD::mysql, perhaps the most important module for some of us, isn't thread-safe so it must be carefully worked around if we are to try using threads.)
  • It's a moving target. Beginners can choose between learning the obsolete Perl 5 syntax or the experimental, eternally unfinished Perl 6 syntax. (I have not yet bothered with Perl 6 myself...)
  • There's no free IDE like Visual Studio or Eclipse. (I don't think I've ever heard of someone outside of the Perl community who knew that Padre existed. They only know about ActiveState.)

Fortunately, I have a team leader and a boss who really doesn't care what languages my use to solve problems in the team, as long as we get the job done well and on time.

Between the five of us, we do VBscript, PowerShell, Perl, PHP, Javascript, CMD batch scripting and BASH shell scripting. Plus some C/C++/C# and Java hacking if we have to. Back-ends we have to deal with include MySQL, PG, SQL Server and (occasionally) Oracle. Note that we don't even work with software development, it's all systems maintenance and troubleshooting.

The important thing for me is not if Perl is no.4 or no.14 on my team leader's list of preferred languages (because he stumbled across such a list on the interwebs). What matters to me is that I'm still allowed to use Perl for tasks where it makes sense to do so. Such as reporting and automating systems maintenance.

-- FloydATC

Time flies when you don't know what you're doing


In reply to Re: A Melancholy Monkday by FloydATC
in thread A Melancholy Monkday by starX

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



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (5)
As of 2024-04-24 20:45 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found