Quote (flyinggoat @ Aug 14 2013 10:28pm)
simple tasks that require low load and low security, to be coded by people that have never came accross a pointer.
Which is like none of the modern web that isn't someone's shitty wordpress blog. It sounds like someone didn't bother reading that article at all. There are huge problems with the language that are hand-waved away by apologists because they don't know any better.
Quote (0n35 @ Aug 14 2013 07:42pm)
Please enlighten me why it's impractical to use PHP, then you can write to the millions of websites running PHP and I'm sure they'll rework everything so they can fit in with fucking idiot hipsters. You read one article about ror and why it's good and immediately PHP is trash millions of companies retards, multimillion dollar companies just full of damn idiots because they can't afford the upgrade I'm sure.
These millionaires with 20 years experience still saying PHP is good so they're obviously retards they should listen to the jobless spawn on d2jsp he could teach them a thing or two.
Not jobless. Very much employed in the industry and have been for 5 years now.
Please point out these "millionaires" with "20 years experience" that are also software engineers that say PHP is a good solution. There's a reason why people are moving to other languages and frameworks. You also seem to have a hate boner for RoR even though it's used fairly heavily and there are other language/frameworks that are very popular too. Groovy/Grails (which I'm using right now. It has some quirks but it's not too bad), Python/(Django/Flask) and things like Node.js.
A snippet of that site:
Quote
== is useless.
- It’s not transitive. "foo" == TRUE, and "foo" == 0… but, of course, TRUE != 0.
- == converts to numbers when possible (123 == "123foo"… although "123" != "123foo"), which means it converts to floats when possible. So large hex strings (like, say, password hashes) may occasionally compare true when they’re not. Even JavaScript doesn’t do this.
For the same reason, "6" == " 6", "4.2" == "4.20", and "133" == "0133". But note that 133 != 0133, because 0133 is octal. But "0x10" == "16" and "1e3" == "1000"!
- === compares values and type… except with objects, where === is only true if both operands are actually the same object! For objects, == compares both value (of every attribute) and type, which is what === does for every other type. What.
How does one fuck up the transitivity of equality? I've never encountered a language where something this basic was this broken. This is unacceptable. Also this:
Quote
Comparison isn’t much better.
- It’s not even consistent: NULL < -1, and NULL == 0. Sorting is thus nondeterministic; it depends on the order in which the sort algorithm happens to compare elements.
- The comparison operators try to sort arrays, two different ways: first by length, then by elements. If they have the same number of elements but different sets of keys, though, they are uncomparable.
Objects compare as greater than anything else… except other objects, which they are neither less than nor greater than.
For a more type-safe ==, we have ===. For a more type-safe <, we have… nothing. "123" < "0124", always, no matter what you do. Casting doesn’t help, either.
Quote
Function calls are apparently rather expensive.
In a simple tree-traversal script a full 70% of the execution time of the script was tied up in just function call overhead. What the fuck? Of course someone like you would just put everything into one massive function anyway and call it a day.
PHP is a broken fucking language and the only people who will use it for a new project are people who don't know any better, i.e. beginners and shitty programmers who can't be bothered to learn a better tool.
This post was edited by rockonkenshin on Aug 15 2013 06:31am