PHP is good because there is plenty of cheap (or even free) hosting everywhere and it is very easy to start programming in it. I use PHP very often for small sites, which are mostly static but require some tiny parts of dynamic content. It is great at it.
However comparing PHP with C++ is a real WTF. They are used for much different tasks.
I hate PHP with a passion, Ruby on Rails on the other hand is a godsend for Web developers.
Comparing a language with a framework is another WTF.
Anyway, while Ruby might be better than PHP in some aspects (well, Ruby is far more expressive) it has some serious problems of its own, so I would not call it a "godsend". I'm not sure if I can even find a good application domain where it really shines compared to the competitors. PHP is great for entry level, small webapps or frontends. Java/.NET languages are great for heavy load, big, scalable stuff.
Comparing a language with a framework is another WTF.
Well, PHP has the Zend and Symphony frameworks and I wouldn't touch either with a ten foot pole. Django is a nice Python framework but it's just not quite 'there' like Rails is.
I'm curious to know what you think Ruby's 'serious problems' are, because I use Ruby and Rails on a daily basis and never have any serious issues with it other than general development hitches that occur regardless of language. In fact, Ruby seems to give me the LEAST problems and it's my weapon of choice when starting pretty much *any* project.
In fact, I have much more issues with just PHP then almost all other programming languages I've EVER used, combined. When you have something as fundamental as boolean expressions that are purposely BROKEN by the language design, there's a problem. PHP is such a horribly designed mess of a language and when I discovered Rails it did feel like a gift from the heavens ;)
PHP is such a horribly designed mess of a language and when I discovered Rails it did feel like a gift from the heavens ;)
PHP is misdesigned, agreed. But this doesn't really matter for the things it should be used for. Like scripting a simple menu in a mostly-static webpage. Things for which Python and Ruby are an overkill.
I'm curious to know what you think Ruby's 'serious problems' are
1. Terrible performance. This is probable a language with the slowest interpreter ever.
2. Dynamic typing - doesn't really scale up to large systems, written by teams.
3. Still lacking Unicode support.
The first two reasons made Twitter drop Ruby from their backend. If they weren't so critical, they wouldn't decided for a complete rewrite of their base functionality, would they?
My favourite lanuage has become C# due to Mono and Gtk#. I used to avoid writing GUIs because it was such a chore, but it's so easy with Gtk#. As much as I dislike Microsoft, C# is an excellent language.