Slashdot Mirror


Ask Slashdot: Choosing a Web Language That's Long-Lived, and Not Too Buzzy?

adelayde (185757) writes "In my day job, I work on a web based service with a lot of legacy code written in that older (and some may say venerable) web-scripting language, Perl. Although we use Modern Perl extensions such as Moose, the language just seems to be ossifying and we're wanting to move to a more up-to-date and used language for web applications, or even an entire framework, to do new development. We're still planning to support the legacy code for a number of years to come; that's unavoidable. This is a fairly big project and it's mission critical to the business. The thing we're afraid of is jumping onto something that is too new and too buzzy as we'd like to make a technology decision that would be good at least for the next five years, if not more, and today's rising star could quite easily be in tomorrow's dustbin. What language and/or framework would you recommend we adopt?"

2 of 536 comments (clear)

  1. Perl still works, and PHP is fine by ShaunC · · Score: 5, Informative

    Perl may be legacy to an extent, but it's a Swiss army knife that will get any job done. I don't see it going away anytime soon.

    I know it's in vogue to hate on PHP, but PHP is relatively modern, robust, and fully capable of handling enterprise tasks. It's widely adopted and there's support everywhere. Probably half of the websites and services you use every day are built on PHP, it's certainly not the worst language you could choose.

    --
    Thanks to the War on Drugs, it's easier to buy meth than it is to buy cold medicine!
  2. Fractal rant makes about six good points by tepples · · Score: 5, Informative

    Anyone cosidering PHP should read this the now infamouns "PHP is a fractal of bad design".

    Which must be balanced with the "hardly" rebuttal. For example, PHP lets a program solve the exception/warning dichotomy cleanly in about six lines of code; see the manual's page about the ErrorException class. This leaves about a half dozen legitimate complaints:

    • No way to turn off the language's loosely-typed comparisons.
    • Parse errors and undefined function errors are fatal rather than throwing an exception that the caller can catch.
    • Inconsistent naming conventions in the standard library.
    • Associativity for the ternary ?: operator is the less useful side.
    • PHP allows the server operator to change program semantics in ways that are annoying to work around, such as not allowing a shared hosting subscriber to turn off "magic quotes" or not following HTTP redirects in libcurl.
    • PHP versions change the semantics of existing programs in ways that encourage shared hosting providers to continue to offer only outdated versions of PHP, making it impossible for web application developers to take advantage of new features.