PHP is the training wheels of the server-side language world. You can pick it up and almost immediately see results on any number of popular hosting providers that provide support out of the box for it. That's why you see it so much.
Are you implying that there's not a single bad Python or Ruby programmer?You can dislike PHP all you want, but don't pretend that a website can't be written poorly using Python or Ruby. The programmer is the one who makes it after all, not the language.
>In fact, their urls don't even map to actual files to begin with.
I take it you've never looked into Cakephp.
Yes, I've used Cakephp. It's a slight improvement.
yes that makes sense. But i wonder, does that imply python or ruby are more difficult to understand than php? I believe they must be on the same level of sophistication and understandability.
And if python, (or ruby) for example, was "better" (as in gets more developer love) then shouldn't it's availability on hosting services increase? Its not like either of php or python is new and needs time to settle down. If availability on hosting providers were to increase, it would have increased long ago.
and as for file extensions, as i noted in another comment in this thread, file extension is just a part of my observation. It also includes tutorials, how-tos, questions/answers on stack overflow-like sites, etc. all of these are more for php than any other language.
yes, that's what i am wondering, why isn't php Favorited more often.
> Because not everyone is writing code for the web.
php can also be used for native stuff (IIRC). And both ruby and python are as suited for native development as php is.
"mysite.com/add_user" is waaaaay better than "mysite.com/add_user.php"
This is one of many bad things php encourages you to do... and that's why most good programmers don't like php, because it makes easy to do bad things.
Some big sites using python: youtube.com, addons.mozilla.org, dropbox.com, disqus.com, ...
Big sites using ruby: twitter.com, jango.com, ...
This is a security problem, i agree. But not a major security problem. Because if it were, sites like Facebook would have been exploited long ago. It's certainly possible to do things right way. Which brings us back to "its developer's fault and not language's".
to which what you said suits.
> most good programmers don't like php, because it makes easy to do bad things
Of course there are good PHP developers and good PHP code, but the language itself it's weak, full of flaws and promotes bad design (PHP encourages the coupling of processing with presentation).
If PHP is your favorite language this is just a sign that you don't know other languages, not at a good level at least.
PHP has routing frameworks too (Kohana, CakePHP, etc), but plenty of (most?) sites don't use them.
example http://stackoverflow.com/questions/tagged/php
http://stackoverflow.com/questions/tagged/python
http://stackoverflow.com/questions/tagged/ruby-on-rails
the difference is huge.
I'd say the difference is that PHP, due to being easier to get into - you don't need a framework, understand OOP, etc - is used both by amateurs and professionals, while Ruby and Python tend to be mostly used by the latter. Hence, you get vocal opposition in communities composed of such professionals, while others don't really care enough about the languages and the craft to participate in them.
(Note: nowhere did I criticize PHP or all PHP developers)
what kind of framework? i was seeing khan academy videos that teach python and they did not use any framework and the basic things were same as in php (conditionals, loops, function, etc), no OOP. OOP might be used for some advanced stuff but that stands true for php too.
Also a note from me too, i am not against python or ruby. They are great. I am just trying to make sense of what i observe daily.
The thing is that many people don't really want to learn to program: they do it as a way to accomplish other goal (in this case, create a website for some purpose). So they aren't likely to have the patience to learn in a structured way - often start by copy-pasting snippets and examples and learning as they need.
PHP fits right into that mindset; in fact, it was originally designed for that: as a set of tools for people who just wanted to add some small feature to their mostly static personal site. And even if it has added a lot of advanced stuff, that quick-and-dirty approach is still easy.