What happened to Ruby? And why PHP is KING of the Web.

July 11, 2009
Posted in Editorial

In 2006 I created killerphp.com because I wanted to make it easy for web designers to learn PHP. I thought PHP was THE predominate web programming language and I felt every web designer should include PHP as one of their core coding skills:

– html
– css
– php
– javascript.

Then Ruby came along … for a short while.

What happened to Ruby and Ruby on Rails?

Once upon a time Ruby was the best thing since sliced bread … it was the language to replace all languages and everything else just sucked! Funny, that seems like ages ago.

Today though, the picture is different; Ruby’s shine has since lost its’ luster and the Rails train has practically fallen off the tracks – now there are other web frameworks in the Ruby world that have replaced Rails.

Addendum: Merb and Rails are merging … Rails hasn’t ‘gone off the tracks’. My bad.

So what the heck happened … what stopped the Ruby train ride?

What stopped Ruby from spreading beyond being a niche language is the EXACT same thing that stopped me from jumping on board back in 2006-2007: Ruby’s heart was broken.

– Yes, Ruby has a great syntax.
– Yes it is a lot of fun to program with.
– Yes it is pure object orientation, to the max!

But, there were a lot of holes in Ruby … crucial libraries and functionality that PHP’rs took for granted, the Ruby guys could only dream of … or they could patch it up with some C code. Ouch!

Beyond that, there is Ruby’s dirty little secret: crash-o-matic. Yep, Ruby based web apps used to crash a lot! Web server integration was not stable and was a pain in the ass.

Reference: Twitter Crashing

… To be fair though, I hear that aspect has improved.

What does this have to do with PHP?

As I stated years ago in a blog post about Ruby; PHP’s strengths are found in Ruby’s weaknesses. Yes some aspects of PHP are not as (shall we say) pretty as Ruby. But like good looking people who are jerks, who cares how beautiful they look if their personality sucks.

… OK, maybe you could hang with them for just a short time! But whatever you do, don’t marry them Rob!

😉

Stefan Mischook
www.killerphp.com

61 Responses

  1. Erik Runyon Author July 11, 2009 at 8:11 pm

    Which web frameworks in the Ruby world have replaced Rails? Sinatra (http://www.sinatrarb.com) does not compete with Rails functionality, and Merb is being rolled into Rails 3 (http://yehudakatz.com/2008/12/23/rails-and-merb-merge).

    Thanks.

  2. Miguel Author July 11, 2009 at 8:13 pm

    ruby and ror are getting stronger each day!

  3. lucevers Author July 12, 2009 at 2:02 am

    hmm!

    Were are u living? Look at the link below.

    http://blog.internetnews.com/skerner/2009/06/report-ruby-use-on-the-rise.html

    Students this days are learning object oriented designs, languages like Ruby,Python .. are growing. PHP try to do his best to simulate object oriented designs but never gets the power of Ruby./Rails. Rails3 will be merged with Merb. !

  4. curly brace Author July 12, 2009 at 2:17 am

    Great syntax? Come one a < b is inheritance ? how can that not be confusing ?

  5. John Doe Author July 12, 2009 at 2:42 am

    What a shitty post! No facts, just a sad little php script kiddie who wants some attraction for his site.

  6. Matt Author July 12, 2009 at 3:02 am

    “Beyond that, there is Ruby’s dirty little secret: crash-o-matic. Yep, Ruby based web apps used to crash a lot! Web server integration was not stable and was a pain in the ass.”

    Examples? Cite statistics or case studies, even user stories, *anything*. Otherwise you’re just making baseless statements.

    “crucial libraries and functionality that PHP’rs can take for granted”

    Which libraries? What functionality? Why do Ruby users have to patch with C instead of _just writing Ruby_?

    “But like good looking people who are jerks, who cares how beautiful they look if their personality sucks.”

    And like bloggers who register domain names like “killerphp”, who cares if they act like an authority on a subject if they’re actually just morons?

    Let’s be clear before I really go off, I don’t even *like* Ruby. My problem is not with your attack on the language, it’s with your utterly vacuous attempt at technical journalism. I’m offended that you even made it on the developer zone, let alone in my RSS reader.

    Your article is based around claims with absolutely no data to back them up, you don’t even attempt anecdotal evidence (at least that would be easy to find if you’re capable of searching google).

    In the only article you cite (your own) you mention that for some people “OOP is overkill”. Your statement _isn’t even logical_. Ruby can be written without creating “objects”, it is not Java. Do you even know what OOP means?

    You also say ‘… I don’t see the majority of PHP users wanting to jump that deep into the world of programmatic abstraction – for most, there is simply no point.’

    Abstraction? If you want abstraction look at the mess that is PHP’s type system.

    This might be the single most vapid, sloppy, brain-dead piece of “writing” relating to programming I’ve ever seen on the internet. You’re a testament to the freedom of the world wide web, where any moron can write with authority.

  7. Nilay Anand Author July 12, 2009 at 3:49 am

    Exact evaluation!!

  8. Adam Author July 12, 2009 at 4:23 am

    – You can deploy Ruby applications just like PHP applications now using http://www.modrails.com/. And they don’t crash. http://heroku.com/ also has a fantastic deployment platform.
    – Rails is still the most popular Ruby framework. Just because other frameworks exist doesn’t mean Rails is no longer used.
    – Libraries are installed via rubygems, which is much easier than PECL. You also don’t need to write C, not sure where you got that from. http://yehudakatz.com/2009/07/11/python-decorators-in-ruby/
    – I’m not sure where you get the concept that Ruby is going no where. You generally hear less about Ruby because the community has nothing to prove anymore. It works for large and small businesses.
    – Ruby will always have something greater than PHP, its community. There are thoughtful discussions and consensus. I have yet to understand what and where the PHP community is.

    You’re using this post to try to show how cool you are for not choosing the Ruby way and it comes off as ignorant. Please do a little research and try to use Ruby for your next application. You might even enjoy it.

  9. Randell Benavidez Author July 12, 2009 at 6:02 am

    Specific instances of Ruby’s weaknesses would be a nice addition to this post. =)

    What are those libraries and functionalities that PHPers can take for granted? What are those Ruby-based web apps that crashed a lot? In what way is the web server integration not stable?

  10. John Author July 12, 2009 at 6:37 am

    Nothing’s happened to Rails. It’s just that the hype machine has died down. After all Rails was released 5 years ago. Why do you think “something’s happened” to Rails? You don’t back your post up with any meaningful info that shows Rails adoption has dropped off.

    If anything, Rails seems to be getting better with age. The Ruby 1.9 release will help Rails performance. Phusion Passenger (Mod_Rails) has made deployment much easier and made Rails much more stable. The upcoming Rails 3 release will also make Rails faster as it takes some ideas from the Merb integration. I recently read that JRuby adoption and job posts are up which means Rails running on the JVM is picking up steam.

    So, there you go…..

  11. marcus Author July 12, 2009 at 6:50 am

    I think it’s a very VHS/Betamax question. Structurally – languages like Ruby seem “nicer”, and better constructed in that you don’t need to use special character sequences to navigate an object hierarchy. PHP seems more dirty – but far more practical. Plus it’s a perfect fit for web site construction.
    I think we’ll see a real rise in Python usage in the coming years though.. especially with the advent of Google OS.

  12. Drakanor Author July 12, 2009 at 7:03 am

    PHP is not successful because it’s good, but because it’s simple. It’s actually one of the worst scripting languages. IMO if you want to get it real as a web developer you better use a Java based technology. This is obvious for several years now.

  13. Aron Pilhofer Author July 12, 2009 at 7:48 am

    >>Ruby’s shine has since lost its’ luster and the Rails train has practically fallen off the tracks

    How so? Examples? This is news to me.

    >>now there are other web frameworks in the Ruby world that have replaced Rails.

    I guess you’re talking about Merb, which I also guess you don’t know is merging with Rails for version 3. Or maybe you’re talking about Sinatra, which is a great little micro framework. Hardly a replacement for Rails; it’s complimentary, actually, and can be run on TOP of Rails to provide a lightweight component where one is needed.

    Other than that I can’t fathom what you might be talking about.

  14. JohnDel Author July 12, 2009 at 8:02 am

    Interesting opinion. I’d like to read the weaknesses of ruby and the crucial libraries and functionality that hasn’t. I am a php developer 3 years now, but this year I started working with rails also.

  15. Stefan Mischook Author July 12, 2009 at 8:57 am

    The main point of the article was to note:

    – The reason Ruby does not share the same level of popularity as Javascript and PHP is because of the ‘holes’ in Ruby. The two major ones in the past was:

    1. Lack of functionality that had to be addressed with C.
    2. Web server integration.

    That said, I am sure things have matured and I am sure Ruby will continue to mature ESPECIALLY when it sits on the JVM.

  16. Stefan Mischook Author July 12, 2009 at 9:01 am

    “PHP try to do his best to simulate object oriented designs but never gets the power of Ruby./Rails. ”

    Hmm … I don’t know about that, the Zend Framework is coming along nicely:

    http://framework.zend.com/

  17. Stefan Mischook Author July 12, 2009 at 9:40 am

    “Examples? Cite statistics or case studies, even user stories, *anything*. Otherwise you’re just making baseless statements.”

    One word: Twitter.

    And the almighty reference:

    http://www.techcrunch.com/2008/05/01/twitter-said-to-be-abandoning-ruby-on-rails/

    Stefan

  18. Stefan Mischook Author July 12, 2009 at 10:00 am

    About Ruby being a ‘niche’ language: that was a poor choice of words. Ruby is a mainstream language, although PHP is still several times more popular.

    Stefan

  19. Paulo Coutinho Author July 12, 2009 at 10:11 am

    (RoR, ruby) is a mount of shit.
    I have 2 websites build with it and it so slow, i have to migrate all to PHP.
    Stop use this shit, it dont have future, the creator is non-professional man that want do marketing speaking bad from other languages like PHP, Java, …

    PHP is ready for enterprise, you have many frameworks and libs.

    Zend Framework have near all that RoR have copied.

  20. John McCollum Author July 12, 2009 at 11:43 am

    @Stefan And here’s Evan Williams’ response on that techcrunch article, on the same day.

    http://twitter.com/ev/statuses/801530348

    Also, this article is over a year old, and there’s been no change. That story is dead.

  21. Giorgio Sironi Author July 12, 2009 at 11:55 am

    37signals people are very good at marketing and usability but technically speaking Rails is not something that surprises me: ActiveRecord is something that should be abandoned in the future.

  22. ruby freak Author July 12, 2009 at 12:33 pm

    have you seen powerset? http://powerset.com/

    It’s a testament of what ruby can do in creating powerful webapps.

    Twitter is not abandoning rails, you should have googled first if you don’t wan’t to look stupid -> http://rorblog.techcfl.com/2008/05/02/twitter-is-not-abandoning-rails/

    next time, do some research first before posting something like this. otherwise people might get the impression that there are a lot of stupid php developers on the web.

  23. Stefan Mischook Author July 12, 2009 at 1:17 pm

    This piece was not meant to be a technical discussion of Ruby, Rails or PHP. It was only a comment as to why Ruby has not made more headway (than you would have thought) given the big press it was getting a couple of years ago.

    … Outside the Ruby camp, news about Ruby is quiet. PHP is still far more dominant a platform/language today and for the foreseeable future.

    My comments regarding Ruby’s stability and ‘holes’ are based on past experience:

    “…But, there WERE a lot of holes in Ruby … crucial libraries and functionality that PHP’rs can take for granted”

    “… Ruby based web apps USED to crash a lot! ”

    As for today, I cannot say. But if I can find the time, I will look into it.

    In the end though, I am a supporter of PHP because of many reasons that are related to code AND not related to code. These are things I’ve discussed elsewhere.

    BUT.. if Ruby, Scala or some other programming language should come about and challenge PHP’s advantages, I will be ready to jump on board.

    Stefan

  24. tony petruzzi Author July 12, 2009 at 2:08 pm

    the plain fact about Ruby not overthrowing PHP as the leading web programming language is because PHP integrates and runs perfectly on IIS while Ruby doesn’t.

    as much as the Ruby community doesn’t want to admit it, Microsoft is used everywhere in businesses and government. if they want to become the defacto language, they need to concentrate on getting Ruby and Rails to run on IIS as easily as it is to run PHP.

  25. Rafael Author July 12, 2009 at 3:12 pm

    @Paulo: no comment 😀
    Try to build faster sites then.

    We built some apps,… never want to go back to PHP.
    I like diversity

  26. andhapp Author July 12, 2009 at 4:04 pm

    Good effort to voice your opinion…but one citation of “twitter crashing” is not sufficient…you should perhaps back your claims with more concrete examples…

  27. Adam Author July 12, 2009 at 6:30 pm

    “The main point of the article was to note:

    – The reason Ruby does not share the same level of popularity as Javascript and PHP is because of the ‘holes’ in Ruby. The two major ones in the past was:

    1. Lack of functionality that had to be addressed with C.
    2. Web server integration.

    Why write an article discussing old and completely false statements? I suggest writing a new article using facts, research, and up to date information. Or you can just remove this article and write an apology to all the people who came to this site and wasted their time.

  28. Stefan Mischook Author July 12, 2009 at 6:41 pm

    “… old and completely false statements?”

    How were my statements false? Ruby was hard to integrate with web servers, Ruby had a lot of holes in it. That is simply the history of it in 2006-2007.

    I was not clear (I guess) with the title of the piece; I just wanted to point out that given the huge push Ruby had (largely from the Java community – a group I was part of) it still has not come close to cracking PHP’s dominance.

    Then, the next thing to look at was why? The why of course had much to do with the aforementioned problems Ruby had.

    It was a mussing on my blog and it spoke to PHP’s continued strength in the market. After all, this is killerphp.com and not killerruby.com

    Maybe I should have titled the article:

    ‘Why Ruby did not take PHP’s top position.’

    Thanks for your comments though.

    Stefan

  29. Fadil Author July 12, 2009 at 6:43 pm

    Mark my words, Grails is good and will be the best Web framework out there in the months to come!!

  30. ruby freak Author July 12, 2009 at 9:47 pm

    “… Outside the Ruby camp, news about Ruby is quiet. PHP is still far more dominant a platform/language today and for the foreseeable future.”

    really? maybe you haven’t heard of the news because your monitoring php related news. As you’ve said this is a PHP website ahem killer php website?

    “… Ruby based web apps USED to crash a lot! ”

    I think every technology coming out of alpha will experience problems with the initial version of there frameworks or technology. Don’t you think PHP don’t had this problems when it was still relatively new? If you’re a programmer you should know this.

    “It was a mussing on my blog and it spoke to PHP’s continued strength in the market. After all, this is killerphp.com and not killerruby.com”

    The only problem I have with your post is that you have the nerve to spread misinformation based on erroneous report (like twitter is abandoning rails) and what you heard a long time ago about ruby. If you want to rant, make sure you do a research thoroughly before doing so.

  31. Stefan Mischook Author July 12, 2009 at 10:01 pm

    @Ruby Freak,

    I don’t think I was spreading misinformation .. I said that this stuff happened in the past and that was one of the main reasons why Ruby has not penetrated further than it has.

    I had not said that PHP was perfect … all new technologies have their issues. I know, I was there when Java, Javascript and PHP first came about:

    – Java AWT was terrible as was EJB 1 and 2
    – Javascript had a terrible object model to work with.
    – OOP sucked hard in PHP4.

    … And I can mention many other things. But that was not the point.

    Stefan

  32. Pingback: » Programmers should learn to be language agnostic. » Blog Archive KILLERPHP.COM

  33. Rob Author July 13, 2009 at 5:18 am

    I love all the Ruby Fan Boys getting all gizzed up about this article!

    When you have a simple form that comes from a web designer made in HTML, and your job is to take the data that is in the form and put into a database.

    I just want to CRUD the form into a db table.

    I don’t want a framework like Ruby on Rails, with Rails I would have to:

    * first run a skeleton script
    * separate out the html, css, js into separate scaffold directories
    * create the controller
    * create the model
    * make an object to handle the incoming data
    * integrate in the RoR into apache so that it has a decent URL
    * and the list goes on …

    Ruby is Hype, It costs more time for simple things, it doesn’t integrate well with web teams, it doesn’t fit any traditional way of working with files, css, js, html.

    The only thing that I have seen ruby do is remake phpMyAdmin quickly. Oh boy you can make a database manager 15 minutes.

    You still have to style it
    You still have to create a users table, make a login form, validate something that user is proper, etc…
    You still have to customize it to not be poopy
    You still have validate that an email address is valid
    You still have make sure file uploads are handled correctly
    You have customize you sql query for some special thing
    You have to do everything before Ruby came along

    Oh ya and you have start being gay to use Ruby…

    To make matters worse now you have teach and learn designers and content people how to work around a gay butt directory scaffolding.

    Not too mention the time it takes you to finally get things setup so that you can actually start working and getting things done you could have gotten it completed in PHP.

    Ruby on Rails is a lose lose situation.

    You gain more time, more efficiency simply by not being gay and doing the following:

    * Use a content system that allows module programming
    * Organize your work and don’t just start typing like an idiot
    * Put code that you retype more than once into functions
    * Use a real text editor that allows for snippets
    * STOP EFFING COMPLAINING ABOUT SYNTAX BE A MAN FFS!

  34. Aron Pilhofer Author July 13, 2009 at 8:29 am

    Well, I think Ron summed up the general maturity level of this discussion nicely. Anyone else have anything else to add? Awesome post Stefan. Keep up the great work!

  35. Stefan Mischook Author July 13, 2009 at 8:39 am

    @Aron,

    I do what I can.

    🙂

    Stefan

  36. David Author July 13, 2009 at 9:34 am

    Just use cakePHP …. It floats my boat!!!!!!

  37. Alex Author July 13, 2009 at 9:38 am

    Sorry, your article and the comments of all the PHP fanboys don’t really help to improve the reputation of the PHP community. It is no surprise that for most businesses PHP is pretty much equivalent to “incompetent”, which is sad, because you can do a good job with PHP, no doubt about that.

    All you say is… “I don’t actually know anything about Ruby or Ruby on Rails but I’ve heard it sucks! Bwahaha!”. There is something called open-mindedness towards other languages and technologies that can really help to improve yourself. Unfortunately, most PHP programmers think that writing something into a database is mad skillz.

  38. Joel Author July 13, 2009 at 9:46 am

    I think it is legitimate to say, hey, I don’t really know that much about programming and I don’t care and I just need to do some little tasks so I use PHP because it is so dead simple. That is really ok.

    But please stop to pretend you are professional programmers and then talk about things you will never ever really understand. Is there a chance? I don’t think so.

    Thank you.

  39. Nate Klaiber Author July 13, 2009 at 10:24 am

    Have you been in touch with technology for the past few years? Twitter scaling? Ruby crashing? Rails being replaced by other frameworks?

    It’s hard to even take you seriously when that’s your defense. It only shows how little you know of the Ruby side, but are very comfortable with your PHP side.

    “But, there were a lot of holes in Ruby … crucial libraries and functionality that PHP’rs can take for granted, the Ruby guys can only dream of..”

    Can you point out specific examples? You lost credibility with your other statements, then you make a blanket statement without any examples.

    FYI: I have done both. I spent 8 years working with PHP before moving to Ruby.

    @Rob – you don’t realize how much of a tool your comment made you sound like. Typical PHP programmers that don’t understand what it is they are afraid of. Do some research first. Or, continue to make a procedural mess. In the meantime, I guess I’ll let people pay me to fix your crap when it doesn’t work or scale.

  40. Stefan Mischook Author July 13, 2009 at 10:28 am
  41. Les Author July 13, 2009 at 10:59 am

    > ruby and ror are getting stronger each day

    You what?

    Ruby on Rails bummed along quite well (and it still does so) until it hit a certain level of 1) complexity and b) certain level of users, and once those limits are reached, it gives up, it dies.

    All the hype in those early days have shown that to be a true platform to develop for todays web, you need more than mere hype, and I laughed at the time at those who said that RoR would be the next PHP… and you know what?

    I’m still laughing, because there is just something magical about PHP, something that bit more special about PHP that no other development platform has.

    There is just no comparisons, never have been and never will be, and PHP will still be going strong after RoR has long been forgotten about. So, I say to all those who (still?) believe in RoR, stop what your doing, sleep on it and face facts.

    Develop with PHP, learn your skill and prosper, as if you continue with RoR you will miss out on countless opportunities.

    Ahem to that.

  42. Les Author July 13, 2009 at 11:09 am

    > Do some research first.

    We did, but ask yourself why some of the largest incorporations on the face of the planet use, and continue to integrate PHP into your IT infrastructure today, and yet they leave out Ruby on Rails?

    Why has there been such a God damn demand for PHP6 over the last 4 or so years, and now finally we are going to get it, and businesses all over the world are ready to get behind it?

    Do you want me to continue?

    > Or, continue to make a procedural mess.

    Those days are long gone friend, you have a few decent, well thought out and well developed frameworks to develop with, and it’s only those who fail to have an IT budget that will continue to persue to develop at that level.

    By all means, professional PHP developers (like me) use object oriented methods, unit testing, file versioning, etc day in and day out. Sure there are many PHP developers who use procedural methods, but I don’t class them as being professionals… who would?

    So put that in your -beep- pipe and smoke it.

  43. Nate Klaiber Author July 13, 2009 at 12:16 pm

    @Les
    1. You mean the frameworks that ride the coat-tails of Rails? Those frameworks?
    2. Just because large corporations use something, doesn’t make it right – that’s a fallacy. Large corporations use Lotus notes, too.
    3. What businesses are ‘getting behind it’ and in what ways? Simply spewing that out gives no credibility. I could say the same for Rails….So yes, please continue. Your opinion does not equate to fact.
    4. Have you ever used Ruby? Take Rails out of the equation… You are so bias, that it makes you look completely stupid as a PHP programmer. Your statements are no better than the author’s when you stake claims to ‘the state of Ruby and Rails’. I could easily say the same thing about other languages I know nothing about….

    Your mentality and logic is so full of holes. No, things are not considered fact because you spew them out in a comment form. Do your research, back up your statements with facts, and understand both sides. You clearly don’t do any of those.

  44. Stefan Mischook Author July 13, 2009 at 12:21 pm

    @Nate,

    IBM is backing PHP and is working with Zend. Another name that comes to mind is Adobe where they are coupling Flex with the Zend Framework and thus PHP.

    So yes, some pretty important names are in the PHP camp.

    Stefan

  45. Scott Radcliff Author July 13, 2009 at 4:02 pm

    Personally, I see it the other way around. I steered clear of Ruby/RoR for the reasons you mentioned. I saw it as just a “hobby” language, but now myself as with many others are starting to turn to Ruby and are seeing a huge benefit in using it. Many of the reputable hosting companies offer Rails hosting, and if needed you can jump on the cloud and pay as your app grows. As web apps start to replace traditional websites, I think we will see a spike in RoR, Django, and the like.

    Of course PHP isn’t going anywhere and will hold it’s place among web languages for years to come. Remember when Perl was the thing? History repeats itself.

  46. Stefan Mischook Author July 13, 2009 at 4:05 pm

    @Scott,

    I appreciate the sensible comment.

    Stefan

  47. Gernot Author July 14, 2009 at 3:03 am

    First I have to admit that I don’t know PHP. I’ve seen lots of code examples and I didn’t like what I saw at all but since I know nothing about it I won’t make a fool of myself and comment on it 😉
    I’m in professional software development for more than 20 years and have seen and worked with lots of languages and frameworks. And I can say that Ruby is by far the most powerful language I’ve ever used. I learned a lot about writing good, maintainable code just by using it and learning its advanced concepts like blocks, metprogramming and the like.
    Rails on the other side is an example of a very well engineered objekt oriented web app framework. You can learn a lot from it by just studying its mechanics and concepts. Therefore, it’s not surprising that the concepts of ruby and rails are copied into other frameworks and languages: Java and C# now have language extensions like anonymous functions, lambda expressions and the like. MS even ported rails to their asp framework. They call it ASP.NET MVC, but actually it’s a copy of rails, unfortuately based on the functionalty of rails 1.0 🙂 Then there is JRuby and Iron Ruby is coming soon for the MS platform.
    I think it is safe to say that ruby and rails are current technology leaders and the others are copying from it – which is a good thing. Here is a comment on ruby and rails in the enterprise from a person I respect (Martin Fowler): http://martinfowler.com/articles/rubyAtThoughtWorks.html

  48. Radoslav Stankov Author July 14, 2009 at 10:57 am

    Very funny article 🙂
    I’m working with PHP for 7 years now, and now moving towards Ruby(on Rails). In my opinion Rails years ahead of every php framework around.
    Ruby popularity is increasing and PHP5.3 come little to late for me.

  49. Jake Author July 14, 2009 at 6:58 pm

    I used to develop in Perl and then one day found PHP and it was just easier to get a database backed web application up and running so I was pretty excited when I started using PHP. Years later I found Rails and it was so much easier to use than PHP and was pretty excited when I started using Rails–and I still am. I started using Ruby and Rails about 3 years ago. It was a little complicated deploy an app in those days, but that is no longer a problem. I have been using Ruby and Rails nearly every day for three years and have not had any of the problems that you say Ruby and Ruby on Rails have.

    As far as your comment: “crucial libraries and functionality that PHP’rs took for granted, the Ruby guys could only dream of.” I don’t know what functionality you think is missing. But even if there is something missing we now have JRuby and JRuby on Rails which has access to all of the Java libraries, so I would say that PHP is missing quite a lot compared to JRuby.

    PHP is still very common because it became mainstream before Ruby did, but it didn’t become so widespread overnight, and neither will Ruby. People and companies are resistant to change and infrastructures have already been built up around languages like PHP. That is why companies still use COBOL. But languages like Python and Ruby have not stopped growing in popularity and will continue to grow because Ruby with frameworks like Rails and Sinatra are just easier to work with than PHP. I speak from years of experience using both languages. There is much less hype now around Rails because it is not as necessary because people know what it is now and I see people tacitly adopting it constantly.

  50. Stefan Mischook Author July 15, 2009 at 12:07 am

    @Jake,

    I appreciate your comments.

    One point about the article that keeps getting missed is that I was talking about the past … I was just considering why Ruby had not taken a larger position in the market by now. And for me, one of the big reasons is the early issues related to Ruby that I mention.

    Like Ruby, PHP has also evolved a lot from it’s earlier days with frameworks like Zend, and CakePHP along with changes to the core language that we see in PHP 5.3. These changes, have made PHP much more powerful IMHO.

    Stefan

  51. Todd Author July 15, 2009 at 10:28 am

    Yeah, Ruby is crappy! It’s just like a screwdriver. Remember when contractors used to carry those around in their tool belts, thinking they were so cool? Everyone knows a hammer is a far superior tool! I’m mean come on, when you hit yourself with a hammer, sure – it hurts, but there’s rarely any blood! Slip with a screwdriver and hit your thumb and “crash-o-matic” – you’re scrambling for a bandaid.

    Ok, so maybe the hammer/screwdriver analogy is a bit too far fetched. Instead, let’s just say that Ruby is like testing. For awhile there, everyone was saying how great TDD was, but now people have realized that it’s time to get to work and quite fooling around with all those pesky tests. Pure logic (and we are all programmers, right) dictates that writing code = more lines of code = more time spent on the same functionality. In fact, I’ll bet the only developers who still write tests think that if you drop a heavy hammer and a light screwdriver from a roof at the same time, they would hit the ground at the same time when it’s obvious that the heavier object would drop faster.

    To be honest, you could also replace “PHP” with “Windows” and “Ruby” with “Linux”. Linux used to seem so cool, but everyone has gone back to windows. Everyone know Linux isn’t really stable and certainly isn’t ready for the desktop. Yeah, free sounds cool, but come on, we all know you get what you pay for.

    If you’re not able to pick up on it yet, I’m being completely facetious (and if you’re not familiar with that work, it means I’m kidding!!!!). Maybe the people around you have gone back to PHP (or not using tests, or developing on winblows), but that doesn’t mean the rest of the world is following your lead. While I’m sure you’re a wonderful programmer and we can all learn a lot from you, your opinion is being presented as fact – but it is indeed just an opinion. It does not reflect my experience at all – in fact, most shops I come into contact (ours included) use PHP because of legacy reasons – most have either expanded to using other languages, or have abandoned PHP altogether.

    One more point – as much as you think that PHP is “king” of the web, Java is far more popular, has far more libraries, and can do things that PHP “guys could only dream of “. Does that make Java better than PHP? By your standards, it does.

  52. Stefan Mischook Author July 15, 2009 at 10:53 am

    It is reasonable to assume that with certain things, Ruby is superior to PHP. And I am sure with other things, Python is superior to Ruby … and it goes on.

    The above blog post aside, my belief in PHP goes way beyond the core language; I constantly blend business considerations along with nerd considerations.

    … I think that perspective is lost on most programmers.

    For example, I think PHP is much easier for web designers to learn than Ruby or Python and I think that the PHP community has a few key products out there that are supremely useful to web designers who want to take their skills/solutions to the next level. I am talking about:

    – wordpress
    – drupal

    etc ..

    So I look at PHP as being a stepping stone, a compromise for those who want to implement some dynamic capabilities into their sites BUT who may not want to become application developers. That said, with MVC frameworks like Zend, CakePHP etc … PHP also gives users the ability to write sophisticated applications.

    I hope that makes sense.

    Stefan

  53. Yves Vogl Author July 16, 2009 at 4:49 am

    Sorry Sir, but you are slandering like a blabbermouth.

    There isn’t any „crash-o-matic” caused by Ruby or Rails themselves. You’re quoting Twitter crashes – ridiculous, really. It’s so obvious that I don’t want to comment on this any more – but I can tell you for sure that you should not blame neither Rails nor Ruby solely for this.

    „But, there were a lot of holes in Ruby”

    To go with your polemics: You mean holes on sense of security holes of PHP? 😉

    „Crucial libraries and functionality that PHP’rs took for granted, the Ruby guys could only dream of”

    Ah, missing features. Bloated core & friends.
    Please just compare the functionality and quality(!) provided by RubyGems and Rails plugins to your beloved PHP PEAR… I just don’t need to say anymore, do I?

    „Or they could patch it up with some C code. Ouch!”

    Ouch. For ignoring PECL and that facts, that 1.) writing C code is sometimes annoying but not indictable and 2.) the PHP guys do more than the Ruby guys 😉

    Last but not least… even if Rails is the killer app of Ruby – you shouldn’t compare them with PHP in a single sentence.
    Compare Typo3, Drupal, Symfony (ha-ha) with some Rails applications instead and have a separate look at PHP and Ruby. And last but not least – go to GitHub and browse some Rails related code (including the various plugins). You’ll see that high quality coding with evolved patterns (finite state machines, nested sets) is made so easy due to a great community and the availablity of great plugins. As easy as PHP enables someones „webdesigner nephews“” to blow up the web with their PHP crap.

  54. Yaroukh Author August 29, 2009 at 10:24 am

    PHP wil l (unfortunately) never die. Because it attracts the kind of people who are unable to understand anything even slightly more demanding than “echo $_REQUEST[‘message’]”…
    This kind of people will drive PHP, write the terrible PHP-documentation and their laughable “frameworks” for ever.

  55. asj Author October 7, 2009 at 9:36 pm

    I’m a Java programmer and I say good riddance 😉

    I’ve always known the thing had nothing behind it, and all the hype and predictions about it becoming the #1 platform and dethroning Java would come to nothing.

    Now Scala, on the other hand, now THAT’S a rocking language (on the JVM of course) 🙂

  56. Alan Johnson Author May 22, 2010 at 6:10 am

    Found this post while trying to find out what happened to ror, it seems no one is asking for ror contracting skills anymore, it’s like it has been swept aside and totally forgotton.

    Google trends show there never was much interest in it either, not even a spike. Not a momentary blip of interest:-

    http://bit.ly/a1HcII

  57. Eric Author June 2, 2010 at 11:06 pm

    Stefan is absolutely right. PHP continues to dominate on the Web. But the curious thing isn’t Ruby or Rails, but how PHP continues to keep mind share. Zend Framework was pulled out of the trash heap a couple of years ago — seemingly because Zend woke up and saw the threat — but the documentation continues to be unreadable. The design changes to the framework verge on being willy-nilly and keeping up with the ad hoc version changes have made me a nervous wreck, since I’m responsible for the stability of our deployments. It clearly was not built upon a core architectural idea (well, in its original incarnation it kind of was, as a library, not a framework). The stuff grafted onto it is very much in keeping with the bolted on ‘enhancements’ that have characterized PHP itself through the years.

    I think symfony is a pretty solid piece of work, but its baroque character and heavy design must be turning away droves of PHPers into the arms of Code Igniter and CakePHP. Code Igniter has its place, but it won’t be building enterprise applications at IBM. There is nothing in this world that demonstrates better the appeal of Rails than coding the same app in CakePHP. There are other frameworks that are probably much better than these, but this lot are the ones with the “I’m just as good as Rails” buzz.

    The naivete in the comments to this article is no credit to PHP. These people obviously aren’t responsible for teams of developers, issues of scalability, or bearing the cost of maintaining legacy PHP code. We are flooded with the resumes of these self-taught lone wolves for whom PHP probably is an appropriate solution.

    Although we are a predominantly PHP shop, I am baffled by the seriousness being (apparently) given to PHP in larger organizations. There are precious few strong programmers among the droves of PHP riff-raff. I know because I read their resumes just about every day. I don’t know where these supposed large PHP-based organizations are finding their talent. It can’t be former Java programmers with degrees in Comp Sci.

    I have no doubt that companies younger than ours have done a better job of avoiding the sins of PHP in building scalable systems and can point to their successes in defense of it. But for us, it generally causes a lot of grief, and not a day goes by that I don’t wish that we had made other choices, sooner.

  58. Dhiren Author September 8, 2010 at 12:09 pm

    Hi guys, I’m amateur in programming, I want to become a web developer. As I’m new to this field I just want to know which language should I use ruby or php?

  59. Stefan Mischook Author September 8, 2010 at 12:20 pm

    You’re kidding right?

    This is killerPHP after all!

    Ruby has many strong points as does PHP .. I’ve spoken and written about the pro’s and con’s of each language on this site.

    Stefan

  60. frederick Author January 16, 2011 at 8:21 pm

    I have done 6 years of PHP development (mostly large web applications), but after I’d completed the first project in Python in 2006 I decided I’d never waste a second of my time for PHP again. I can tell you, I never looked back. I also picked up Ruby recently, and I find I like it a lot.

    For me writing code must be fun, and PHP (or languages like Java or C++) are just so painful compared to Python, Ruby and Objective C. With the latter, you get stuff done quickly, you can write tests more easily, and you can write elegant and robust code.

  61. breno Author May 31, 2011 at 11:05 pm

    what a laughable article…exactly what would be expected from lame “I can do this!” php programmers…

    firstly, its a bit obvious GOOGLE trafic for ‘php’ is enormous compared to ruby

    * php has been around for much more
    * php is the default web language, anyone wanting to have a take on php, doing one search for every single thing they’re trying to do
    * rails was launched in 2004, with a considerable maturity on 2.3.5
    * rails users are more savvy, we know where our content is

    now let’s try some relevancy, instead of google, jobtrends
    absolute: http://www.indeed.com/jobtrends?q=ruby+on+rails%2C+php&l=
    the grap is WAY smaller, also, notice PHP doesnt have a consistent grow, and notice the big fall in jan 11….beautiful!

    better yet, look at ‘relative’ http://www.indeed.com/jobtrends?q=ruby+on+rails%2C+php&l=&relative=1

    just look at it! lol!!! really, look at it, I don’t even need to say anything else, you should delete this post, man

To Top