by amk on 6/17/10, 12:43 PM with 10 comments
Considering how much more easier it is to deploy php+mysql+apache applications, give me some good reasons why I should learn rails or django.
(One very obvious reason would be to take up jobs where the client wants me to work on rails or django. Let's ignore this point for now. Just consider that I get new projects and I am free to choose my platform/language)
by mgkimsal on 6/17/10, 1:34 PM
I would suggest learning something else, though (I chose Grails a few years ago), because at the very least it'll give you a new appreciation for your toolset. You'll understand the strengths more, you may identify some weaknesses (either inherent in your tools or how you use them) and start to think about how to use your own chosen tools better.
I split my time between PHP and Grails now, for the most part (some occasional other work) and knowing both I have a better idea of how/when to use specific approaches.
You may end up hating your PHP toolset after a while using something else, because you'll start noticing how verbose PHP makes some tasks (using a framework like symfony can sometimes reduce that). Or you may recoil at how ugly some of the Ruby or Python stuff feels to you. You won't know until you try, but I think everyone should take some time to learn a moderately different platform at some point, if only to help to understand your own platform better.
by c1sc0 on 6/17/10, 2:42 PM
by nudge on 6/17/10, 1:31 PM
Perhaps Heroku for easy deployment? I haven't used it myself but I gather it makes life easy.
The question to ask yourself is whether you find yourself doing things you feel you shouldn't have to do, whether that's repeating yourself or creating functionality that should already be built in or available as an addon. If you are happy with what you have, it doesn't matter what everybody else is doing.
It only really matters if there is something discontinuously advantageous in switching, for scaling reasons perhaps. But for now, I'd say your own existing expertise in php would more than outweigh any advantages of switching.
by imp on 6/17/10, 3:09 PM
- Deploying Django isn't hard at all. No more difficult than LAMP apps.
- Python is a better language than PHP (IMHO)
- Tons of python libraries to work with. Wanna resize thumbnails? It's easier to work with PIL than cobbling together imagemagick commands.
I've never worked with those PHP frameworks, so I can't comment specifically on them. They're probably fine to work with, but I'll always stick with Django over learning a PHP framework. The main difference is getting to use a language like Python or Ruby instead of PHP.
by keytweetlouie on 6/18/10, 2:17 AM
by fookyong on 6/17/10, 3:16 PM
If the answer is no, then arguing one over the other is just pointless fan service. Try not to let it get in the way of you actually producing and iterating.
by grok2 on 6/17/10, 4:42 PM
by steveklabnik on 6/17/10, 2:52 PM
For me, it's not about the functionality. It's about the culture, and the productivity. Also, I love Ruby.
> Considering how much more easier it is to deploy php+mysql+apache applications
This is not really true anymore. Rails is pretty easy to deploy these days, especially with things like Phusion Passenger.