On 2017-03-31 20:31, Zenaan Harkness wrote:
Yet people make their livings working with PHP, deploying PHP, trying to secure PHP. Don’t they deserve the help that we received, the help of good practises and security-first development? These people who can’t improve their work because we won’t work with them and drive them away from our communities with mockery and spite.
I have written in PHP. Large PHP projects get out of control, develop a great deal of almost duplicated code. And then you want to change something, and you have to find every piece of almost duplicated code, and make the same change everywhere, and you don't, or cannot. Someone wants a new feature, similar to the existing features, and the easy way to do it is not to properly factorize the existing code, but to copy and paste a huge pile of code that provides an existing feature, and make a few minor changes in this huge pile of code, so that it provides the new feature rather than the existing feature. This is very bad. Further it is true that PHP is a language for stupid people. - well not stupid people, for there are no stupid engineers, but engineers that are substantially less smart than other engineers, like the guys they bring over from India to work for slave wages. Indians tend to be not so bright, and people who work for slave wages tend to be not so bright, so when your company goes looking for cheap code monkeys, it gets what it deserves. There is a well known old programming joke "You can write Fortran in any language". I suppose that today, now that no one writes in Fortran, the joke is not funny any more. What it means is that you can always write C in C++. Most languages, especially Lisp and C++ provide support for very clever ways of programming, clever ways of dealing with the kind of almost-the-same-but-slightly-different feature that in PHP leads to massive code duplication. PHP does not provide the kind of tools that a clever programmer makes heavy use of. Which is part of the reason you find that in a big PHP the same change has to be made in a hundred different places, in a hundred pieces of almost-but-not-quite identical code. PHP tends to be written by stupid people, because clever people notice the lack of certain features, tools, idioms more than stupid people, and tend to be the people that make heavy use of those features, tools, and idioms.