I'd love to hear why Python and Ruby are going to prepare you to solve all sorts of problems but PHP isn't. The particular syntax isn't the important bit of coding - the problem solving mentality is.
I'd love to hear why Python and Ruby are going to prepare you to solve all sorts of problems but PHP isn't. The particular syntax isn't the important bit of coding - the problem solving mentality is.
Your analogy is flawed since people go to school to become brain surgeons with the expectation of a life-long specialized career. This isn't the case with most web application engineers, who usually have a more general computer science background. You'd be hard pressed to find a PhD, our version of specialization, whose dissertation focused on the types of problems PHP is generally used to solve.
Putting aside for a moment the fact that PHP is Turing-complete, are there any examples of these amazing things you can do in JRuby that you can't do in PHP? Even the JRuby wiki talks mainly about how awesome it is to be able to run Ruby on Rails via a Java interpreter.
To extend the medicine analogy, being a surgeon isn't about how awesome the particular scalpel you're using is. It's about knowing where and how to cut. The same is true with code. Someone who's a really good coder in PHP likely isn't going to have much trouble learning other languages if they so desire.
First, the cultural.
PHP's community is largely focused on web applications, and has lots of folks that do not have a background outside of PHP or web applications. The PHP culture is generally one of "I'm not interested in understanding why its broken, just give me the code to fix it." If you browse the PHP documentation, you'll notice the comments are riddled with errors, bad advice, hacks, and so on. It even bleeds into print, I'd argue "PHP: The Good Parts" is the worst software engineering book I've ever read.
The Python and Ruby communities have their problems, for sure, but you're more likely to find good advice and altogether more competent people when asking for help there. There is a focus on constant improvement, elegance, and craftmanship while maintaining pragmatism in the Ruby community that fosters more of a joy for learning and building things than I think you'll find in PHP.
On the library side, I can't speak for Python, but my point with JRuby is that you have access to not only the Ruby ecosystem but the Java ecosystem. For the purposes of arguing the breadth of applications I can simply stop at the Java ecosystem, full stop, since it's arguably the largest set of libraries available on a single platform ever built. To start, just look at the Apache projects, Hadoop, Lucene, Solr, Mahout, and more give you access to state of the art machine learning, IR, and data analysis algorithms that are beyond your wildest dreams in PHP. And this, of course, is just the surface of what is available to you.
I tried to use Quercus, but besides templating, it pretty much blows at everything else PHP related. http://www.caucho.com/resin-3.0/quercus/
Therefore this isn't a sole feature of the J-something language implementation on top of JVM.
A big one, you can use native threads.
you can also grab a java machine learning library and use it directly in jruby, you can use lucene directly in your process, you can write hadoop jobs in jruby without using the streaming api, etc, etc.
Just think of java libs that don't exist in php and that's the benefit.