PHP or ROR.
najafali: I feel your pain about the Windows issue!I've been a PHP programmer through and through for the past three years and had no complaints about it. That is until of course I met RoR.After the first year or so of occasionally playing with RoR, I found that my PHP started to have a decidedly Ruby accent to it. I was making heavy use of create_function() and array_map(), and was designing interfaces that hid more and more of the inner workings of my code in abstractions.Now I still do PHP as a day job, but I absolutely hate it. Not because of the language itself but because I have to put up with other peoples complicated procedural code. I'm not implying that everything has to be OO all the time, I'm instead referring to code written by developers who have absolutely no interest in OO programming or MVC when building fairly complex content managed site.For freelance work, its RoR all the way. Because Rails imposes quite a fixed structure (fixed compared to PHPs open-endedness), I don't need to spend days trawling through someone elses code before I can get started on a site.Now, there are frameworks in PHP as well, but they focus on different things. Zend for example is a collection of libraries that you can pull together free-form into a system of your design (though there is of course a recommended directory structure). This flexibility comes at a price, i.e. that you have to initialize and configure all the working parts of the MVC stack essentially by hand.The focus of rails is unapologetically to make a site work now, and make it easy for the developer building it to make required changes for that site. This comes through in pretty much every interaction you have with the framework (unless of course, you're on windows!)The Ruby language itself is an absolute joy to program with if you cut your teeth on OO programming. You really don't know what you're missing until you learn the inner workings of the object model. If I hadn't given it a chance (i.e. spend a good few weeks hacking away on a ruby-based project) I wouldn't appreciate the benefits of it, sort of like what Paul Graham was saying in his Blub Programming article.