tomazos has asked for the wisdom of the Perl Monks concerning the following question:

I'm considering doing something monumentally stupid and writing a "Why Perl is better and more popular than Java & .NET" article here for a newsletter blogish/wikish side project I am working on. It will get a lot of coverage as IKB has a lot of subscribers but I feel a bit underqualified to do it.

Do you think this is a good idea? Has it been done well before or elsewhere? Would it be inappropriate to ask for PerlMonks off-the-record assistance in coming up with the content?

-Andrew.

Update: Look, if I am wrong about this, I want to know. It is just a hypothesis. How would we go about determining this, what the more popular language is for a start? Yes, popular isn't equal to good.

Update: Okay, okay. You've convinced me. It's a stupid idea, I am indeed underqualified in this area, and I won't do it.


Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com
  • Comment on "Why Perl is better than Java & .NET" article.

Replies are listed 'Best First'.
Re: "Why Perl is better than Java & .NET" article.
by tphyahoo (Vicar) on Jul 21, 2005 at 13:04 UTC
    dominus may hate Advocacy, but I say -- enh, bring the perl advocacy on :)

    However -- *Is* perl in fact more popular than java and .net? How do you plan to demonstrate it? I would think it's less popular than java, maybe a bit more popular than dotnet. This measuring popularity by the number of people programming in a given language. Unfortunately I can't remember where I read this, but it was some kind of chart and in an article griping about how perl needed to increase its "mindshare."

      It is my impression that Java is backed by Suns marketing machine, and the reality is that more code is actually written in Perl than Java - it just looks like Java is more popular because more people that don't actually write code have heard about it. Maybe that is why there are so many job ads for J2EE. All these managers that have heard that Java is the way to go, but there is a shortage of Java programmers - because among actual programmers, Java is not that popular except as a teaching language. Or a "yeah, its a great idea but its not there yet."

      Poor old Perl with no hype and marketing machine behind it, is made to look like some kind of lowly scripting language - where in fact the reality is that it is wildly popular. How else would you account for the sheer size and coverage of CPAN? What is Javas equivilant of CPAN? Is there one? Where do you go to get Java libraries that check credit card checksums? Or do neural network simulations? Or do all the billion things you can do with CPAN modules? How else can PerlMonks be a PageRank 8 site? Where is Java's equivilant of the perl web network?

      Or maybe I'm on crack, and don't know what I'm talking about.

      -Andrew.


      Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com
        Based on your arguments, popular may be a loaded adjective. Perhaps you should consider trying to establish that Perl is perferred by programmers that have done work with both (all three) languages you're discussing. (I know that it is for me.)

        Remember: There's always one more bug.
        the reality is that more code is actually written in Perl than Java
        Ah... But do you have anything closely resembling, you know, actual facts that this is true? Or is it mostly a WAG?
        You may be on crack, but write the piece anyway. I like the idea. :)
Re: "Why Perl is better than Java & .NET" article.
by itub (Priest) on Jul 21, 2005 at 13:04 UTC
    Just be prepared for a fight if your site has comments enabled! ;-)

    In the title you say "better", but in your node you say "more popular". Which one do you intend to use? They are two different things.

Re: "Why Perl is better than Java & .NET" article.
by Cody Pendant (Prior) on Jul 21, 2005 at 13:46 UTC
    Next you could write an article about how wood is better than plastic, fountain pens are better than ballpoints, and cotton is better than nylon. Better for what?


    ($_='kkvvttuu bbooppuuiiffss qqffssmm iibbddllffss')
    =~y~b-v~a-z~s; print
      What is your implication, that Java is better than Perl because it is newer?

      I mean "better" in the sense of which general-purpose development target should you invest your time in as a developer or project manager?

      Or if you don't like that: It's a good question. When should you use Perl rather than Java or visa versa? They are clearly competing targets, right? Which one will get your functional and non-functional requirements met with the lowest amount of developer-dollars on setup and maintenance? If it depends on the specifics of the requirements, than how, and in what way does it depend?

      It just seems to me, from the comparitively little I know about the subject, that Perl is simply much better for almost all tasks than Java, because it is more popular among developers, you have access to the source and has more technical support in terms of freely available libraries and documentation? It just seems like a more well travelled road. Enlighten me if I'm wrong.

      -Andrew.


      Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com
        It just seems to me, from the comparitively little I know about the subject, that Perl is simply much better for almost all tasks than Java, because it is more popular among developers, you have access to the source and has more technical support in terms of freely available libraries and documentation?

        The Internet already has loads of advocacy articles, most of which aren't very good... If you know "comparitively little" I suspect you're going to have trouble improving on what's already out there.

        There are some good reasons for people to use Java, along with the bad ones; if you don't know what those reasons are, and aren't willing to invest any effort into learning about them, then you're left with "I can't imagine any good reason for people to use Java" which I can assure you is due to a failure of imagination.

Re: "Why Perl is better than Java & .NET" article.
by samtregar (Abbot) on Jul 21, 2005 at 18:15 UTC
    I don't know, will it be a good article? Do you actually know Java and .NET? Have you used them enough to form a responsible opinion? Are you ready to point out areas in which Java and .NET are clearly superior to Perl (GUI development, for example)?

    I'd rather not have an article like this than have one that's just going to make us look bad. On the other hand, a carefully written, well-researched critique of the prevailing opinion in the business world (that Java and .NET are clearly superior to Perl) could be very useful.

    -sam

      So in GUI development Java and .NET are clearly superior to Perl?

      So Perl/Tk hasn't got a scratch on AWT/Swing or what is the GUI part of .NET?

      How did you determine this?

      I know J2SE and J2EE pretty well but most of my experience has admittedly been in Perl. To a certain extent comparing Java to Perl to .NET is comparing apples, oranges and bananas. Which is always the argument fallen back to by the loser in any technology comparison.

      Fact is they are competing development targets, and Perl has little mindshare even though it seems to be more popular on some levels.

      -Andrew.


      Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com

        Both Java and .Net have large core libraries for GUI programming. Perl Tk, on the other hand, is a fragile, optional installation. Both Java and .Net have a stable (though arguably worse-is-better) threading system, where ithreads still have implementation issues and rough edges.

        I've written GUI applications in Java and I've written GUI applications in Perl Tk. There are advantages and disadvantages to both, completely unrelated to the syntax and semantics of the language. Certainly it's possible to write similar applications in both languages, or with a different toolkit such as SWT or wxWidgets.

        Still, you're guilty of bad advocacy at the least if you ignore that practical GUI programming in Perl is harder than it ought to be.

        So Perl/Tk hasn't got a scratch on AWT/Swing or what is the GUI part of .NET?

        No, it doesn't. The fact that you even have to ask is proof that you shouldn't write this article. Do the Perl community a favor and spare us the (justifiable) ill will your article would generate.

        -sam

Re: "Why Perl is better than Java & .NET" article.
by gellyfish (Monsignor) on Jul 21, 2005 at 21:28 UTC

    I thought I would stick my bit of pedantry here, .NET is not a language, it is on the one hand a system framework and on the other a runtime execution environment. Microsoft have implemented four languages that target the .NET environment, c#, VB, Java(ish) and Javascript. Mono lists an additional six languages, and I also know of Eiffel, Cobol and Clipper implementations that target the .NET Framework.

    I like C#, so in further discussion I will mean C# when we say .NET

    /J\

      Sure, .NET is not a language. It is a set of libraries and a runtime. I think most .NET programming is done in Visual C++. .NET is however an alternative development target to Perl and Java, and the reason it is considered.

      Update: Article cancelled due to lack of support.

      -Andrew.


      Andrew Tomazos  |  andrew@tomazos.com  |  www.tomazos.com

        Er, no. I would say that most .NET programming is done in C# (or possibly VB.NET - there are reasonable VB6 to VB.NET code conversion tools available.) ; Managed C++ is largely only used where there is an existing codebase that needs to be migrated to the .NET framework.

        /J\

Re: "Why Perl's feature XYZ is great" article.
by Anonymous Monk on Jul 22, 2005 at 17:55 UTC
    On a more upbeat note, instead of doing an comparison/contrast article with Perl v. Java, why not pick an interesting feature of Perl6 and write up a tutorial on how to best use it? Some ideas...
    • The Perl6 Grammar Engine: The Cure For All your Parsing Ailments
    • Macros. Done Right.
    • Hyperactive Hyperoperators
    • Junctions For The Rest Of Us
    • Autothreading, Autothreading, Autothreading.