I'm a website owner and I develop in Yii so in short, I think I'm working with more or less the "best" PHP has to offer (e.g. PDO, OOP...etc). My primary website (which is not built in any framework just native PHP) of 2.5 years is finally making enough money I can hire my first employee who I want to be a developer to convert it over to Yii. I've also started a new site which is just four weeks into development built with Yii but instead of building anything this week I'm going through RubyKoans because I keep wrestling with the idea that now there is no better time to convert to using Ruby on Rails...

I go through Yii and a lot of the most awesome stuff is ported from Rails (e.g. scopes). A lot of really great websites are built in rails (e.g. Twitter, GitHub, Hulu). Rails developers are "more" expensive but if you hire one are you not guaranteed a certain level of quality where as with PHP there's a lot of crummy devs out there? If I ever do make the switch, is it not better to do it now when it will be less painful? If I want to create a company that attracts talented developers, why not work in ruby so my company stands out?

At the same time PHP is fast, reliable, and when you're working with the "best" (e.g. Yii, Symfony2) I think it's a pretty nice and maintainable language. A lot of big sites are built in it too (Facebook, Digg, Craigslist, Hootsuite) plus all the porn sites which we all must admit deal with tons of traffic. Also there is way more PHP devs out there so as long as I use good interview practices will it not be easier to find some good PHP devs? Or would it be easier knowing every dev who came in for an interview already used ruby? Also a big part of me just wants to get started and not spend six months wading through ruby till I'm confident enough I want to port my existing projects over to it. Any thoughts?

  • 2
    There are good and bad devs in every language. Language is rather unimportant. You can write an app well in PHP, or poorly in Ruby. The language doesn't matter. The developer does. And you should have no problem finding a developer that knows both. – CaffGeek Apr 26 '12 at 18:48
  • Ruby is at it's core Object Oriented while PHP is procedural and then incorporated OOP so while some PHP devs can do OOP, all ruby devs by default do OOP. Plus I think you need to be of a certain level of sophistication to use ruby. So I'm not sure I agree with you but then again, I've never hired anyone before. – jcroll Apr 26 '12 at 18:52
  • 2
    Assuming that because a dev uses an OOP language means they know how to use OOP well is a common and deadly mistake. – Ben Brocka Apr 26 '12 at 18:55
  • @BenBrocka, agreed. You can write procedural spaghetti code in an OOP language just as easily. And those people will claim they know OOP, when really, they are just writing the same junk they did before. – CaffGeek Apr 26 '12 at 18:58
  • 1
    I'd be more attracted to a company that "gets it" over which language they're using. For me the most important thing is culture. I can find a job anywhere. It's hard to find a place I want to spend 40+ hours a week. – Michael Brown Apr 26 '12 at 19:35

I think you should focus on what tool you are most comfortable with to meet your goals.

I wouldn't let the hiring process affect your choice of tool. Any good developer you are going to hire should be able to figure out how to work in whatever language you use. If he can't then he isn't a good developer. Languages are tools.

Say your goal is to build something faster, with better quality. Only you will know what tool will help you accomplish this goal.

If you have a goal to start working in Ruby, then it might be a good idea to start your new project in that.

One thing you probably don't want to do is re-do an existing product in a different language "just because".

Not the answer you're looking for? Browse other questions tagged or ask your own question.