3 ms·
Although if you're looking to get something done, learning a new language isn't going to help in the short term, there is such thing as a better language. PHP s
by natmaster 17y ago
Although if you're looking to get something done, learning a new language isn't going to help in the short term, there is such thing as a better language. PHP sucks. As a language, it's hackish, and not really designed at all. So unless you need to integrate with existing tools, it would probably be best to stay away from a language that will attract meto developers.
For more evidence: http://www.google.com/search?q=php+sucks&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a http://www.google.com/search?q=php+sucks&ie=utf-8&oe...
- idlewords 17y agoThe reason there are a ton of "php sucks" posts is that tons of people use PHP. The reason tons of people use PHP is that sometimes it's the best tool for the job. Engaging in 'language X sucks' debate is a waste of time better spent designing an innovative product.
- aaronblohowiak 17y agoAs Bjarne has said: "There are two types of languages, those people complain about, and those that nobody uses."
- gwern 17y agoAt last! I finally understand why everyone complains about IIS's security holes, and not Apache's - it's because no one uses Apache.
- Daishiman 17y agoYeah, because VB6 is so much better than Python or C#. Strangely I have yet to see many complaints about C# or Java in relation to C++ or VB6, yet I'm sure as many if not more poeple have used VB6 and C++. Some languages allow you to shoot yourself in the foot more easily. Some have just better conventions and toolsets. VB6's object model just plain sucks in comparison to C#. C++ bugs are much harder to catch than Java's, and Java gives you a better toolset to find them (not that I'm a Java fan, I acutally dislike the language quite a bit). Bjarne's phrase is pretty cute. But let's be honest, technical merit has never been in a factor in a large majority of business decisions. If that were so people would drop the horrible abortion that's ABAP or COBOL for SAP applications, Sun would drop Telnet as a default dameon and use a better shell than sh as a default. But hey, it's the most popular commercial Unix, right?
- Daishiman 17y agoI disagree. PHP is objectively worse than Ruby, Python or Perl in practically every regard with the exception of ease of deployment. A language that loses source compatibility in point releases, has no consistent syntax or conventions, crappy toolset, half-assed object orientation and worthless functional aspects, is neither expressive nor terse... I could go on and on. I have yet to see a fraemwork built on PHP that can match Django or ROR in terms of features or ease of use, starting from the fact that the language makes development of adequate template parsers or ORMs much more difficult given the lack of metaprogramming facilities. Oh, and while having fewer features it's also slower than the other language's reference implementations. The only advantage PHP has is the preponderance of available developers and libraries (and those libraries allow to shoot yourself in the foot much more easily than the alternative languages by virtue of being just plain worse. Wake me up when there's something comparable to SQLAlquemy or Beautiful Soup on PHP). They're actually very significant advantages, but speak more about its legacy and inertia rather than any technical advantages.
- mpf62 17y ago"... with the exception of ease of deployment" Sometimes, this actually is a significant (technical) advantage. Of course, PHP is not perfect, but which language is? Sometimes, even the old VB(A/S) can be the best choice to solve a given problem. In my opinion, languages aren't the end in itself - they're just tools. I've get to know programmers that use "kiss-ass" technologies but cannot solve (business) problems. Again, an example I've mentioned before: I you have no idea what the "De Casteljau"-algorithm is about, how could you implement a adequate solution for a given problem with any technology? But if you do, there's not so much difference implementing it with Canvas/JavaScript, SVG, VML, Whatever.