I am creating a crowdfunding platform with a thousands of pages connected with a database. I am outsourcing it to web devs. Option 1: Use Ruby on Rails, with contractors from India (freelancer websites) Option 2: Use node.js or Django with contractors who are friends of friends Option 3: Build it on Wordpress or PHP and find people to do it Price quotations received is about the same. Which language is good for scalability (lots of pages), has a big community (for support) and will be good to build a startup (building a team in the future)? Any thoughts?
I think some of the above answers are really helpful. Just to throw in my 2c:
- watch out for wordpress, yes. If you need a nice CMS for a website, it's a fantastic platform. It can be extended a bit, but if you are going to build a big, custom system using wordpress as a framework, you will likely outgrow it quickly and it will be painful
- as for the other platforms, I think that you can look at this in 2 ways:
1) It's great advice to consider gravitating towards the platform/framework that your chosen developers are expert in. But then, you also need a framework that 'fits' so you need to balance this with your business objectives. So, I'd refine the advice to say, 'make sure your team is expert with the stack that you have chosen, and that you've chosen a stack based on your business objectives and not just because your team is good at it'
2) please consider carefully your true objectives, and their priority. something like 'good for scalability' can mean so many different things. a php site can support millions of users, but a Ruby site can probably support those users with less tweaking. meanwhile, a node/mongo site can probably handle massive concurrent load pretty well. each has drawbacks and strengths, so you need to consider how much scalability you really need. if you can quantify this it will help so much in choosing a stack.
It's also great to consider the culture/developer availability, etc. Node developers are harder to find these days, and php developers are everywhere, for example. A MS stack can be great if you are integrating with certain type of systems, and a ruby stack can be great for rapid development.
I would recommend you really try to figure out your true needs, both short term and long term, and create a document that describes them. From there, choosing a stack/language should be much easier!
Here's a video on that exact subject: http://www.youtube.com/watch?v=ct8AI0YqFlw