Re: Philosophical question

From: Bèrto ëd Sèra <berto(dot)d(dot)sera(at)gmail(dot)com>
To: Chris Angelico <rosuav(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Philosophical question
Date: 2011-12-15 08:58:40
Message-ID: CAKwGa_8C0xY+xqHHGwV7dWnK=WVz59Ur_DjGv_WW1AOdDD_gKQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi!

> To be fair, isn't that an argument against whatever the popular
> programming language is of the day? I mean, we can all remember
> Matt's Scripting Archive and Perl.....
>

If I can add a personal opinion, my main reason to avoid PHP is not related
to programmers at all. There are loads of bad ones everywhere, and I have
been (and surely will be again) one of those in some circumstances. We all
need to have "the darn thing running ASAP", sooner or later, and quick and
good rarely are the same thing. PLus, there are those who seem to take a
sadistic pleasure in writing awful code for the sake of it. And they use
absolutely each and every available language.

My main problem with PHP is that it has loads of issues upon changing
versions, there are a lot of applications based on it, and sooner or later
you bump into having one application in need for one version and another
being unable to run under it. And you obviously need them both. Gentoo will
slot versions, so that you can run a number of them, but this is not a
guarantee that you shall be able to slot minor versions, currently you can
have any combination of:
(5.2) [M]5.2.17
(5.3) 5.3.8 ~5.3.9_rc1 ~5.3.9_rc2
(5.4) ~5.4.0_rc3

This is large bouquet, but it does not mean that APC cache (for example)
will work with all those versions, we had a number of issues with this.
Sooner or later everything gets fixed, but when it's later you are in
trouble, and since all apps have an independent maintenance line, bad
programmers are but one possible issue. Lack of available resources for the
upgrade in one of your key apps is more than enough to make you use loads
of 4 letter words, even if and when all the involved coders are 1st class
wizards. Obviously, if all your strategic apps were mostly written in
language X or Y you'd still have the very same problem, based on whatever
problems language X and Y may have.

So my advice, if you need to run within a complex environment, one in which
many other apps will use PHP, is to ask yourself how quick will you be able
to upgrade your application, following whatever happens with the language,
and how able you'll be to cope with the need of running on multiple
versions, some of which may be pretty outdated. If you look at it from this
perspective, PHP is not such a low threshold language as it may seem by
syntax alone.

If you are to make experiments and cannot invest much time in subtleties
(and yet need the thing to be running), you might want to analyse other
alternatives, too. Having said this, if it's not you running the server and
you have to do with what the environment provides, then... you often do not
have much choice. Some version of PHP will surely be there, everything else
could be there, or it could not. In that case I do suggest you invest a
serious amount of time in learning how things break in between different
PHP versions, and start by building awareness on the subject. A connection
pooler is definitely what you want, if you are to use it with PG.

My 2,5 cents (crisis time, 5c is too much for my wallet).
Bèrto

--
==============================
If Pac-Man had affected us as kids, we'd all be running around in a
darkened room munching pills and listening to repetitive music.

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Guillaume Lelarge 2011-12-15 09:24:50 Re: question about \encoding option of psql
Previous Message Albe Laurenz 2011-12-15 08:27:49 Re: Correct syntax to create partial index on a boolean column