4 ms·
You seem to see "insightful" and "rant" as mutually exclusive. I don't agree, but that's merely a quibble; to address the meat of your response, I say that, whi
by aaronem 13y ago
You seem to see "insightful" and "rant" as mutually exclusive. I don't agree, but that's merely a quibble; to address the meat of your response, I say that, while of course you're right that no language is ideal in all cases, PHP exists in a unique local pessimum compounded of its attractiveness to novice programmers and its unmatched ability to hamper them from learning lessons they will find useful in becoming familiar with languages other than PHP -- indeed, it is far more successful at making it harder, not easier, for novices to gain a grasp of any other language, and it is precisely this trap which incurs my loathing.
Small web development projects, as you say, do not require strong typing, first-class functions, &c. But they certainly can in many cases be improved by these capabilities, and, in any case, few languages which offer them outright require their use; meanwhile, a language which either fails entirely to offer them, or worse offers a broken, awful version of such functionality to newbies who are not equipped to recognize such enormities and are thus vulnerable to the fallacy that that's how such things are and should be done everywhere, is one which can inflict enormous harm on people who frankly don't know enough yet to look out for themselves -- precisely the sort of people, in other words, which PHP so successfully attracts, through its presentation as the right tool for every web-facing job.
Perhaps you mistook my colorful phrase, "that syphilitic temptress of innocents", for mere hyperbole, and failed to recognize it as the precise, if metaphorical, description which it is. If you have so mistaken me, then I hope this comment helps to clear up the matter somewhat.
- mikegioia 13y agoHaha, ok fair enough. I agree with everything you just said. I honestly wish PHP would implement these features and break backwards compat for those same reasons.