Often entrepreneurs ask me 'What technology should I build my startup on?'
There is no right or wrong answer to this question. It's a decision every company makes for itself, depending on what it's trying to build and the skills of its cofounders. Nonetheless, there are a few rules that I try to adhere to:
1. Your technology choice doesn't matter much.
For early stage startups, the main goal should be to get their application up and running as soon as possible. Then, they will be able to get customers, funding and hire great engineers. Most languages are similar to one another, and even if you discover that a particular technology choice was a wrong one, you can fix it up in the future. For example, Facebook was written in PHP, then they ran into scalability issues, rewrote parts of the application as services communicating over Thrift messaging protocol, and fixed them.
2. 'Don't chase hot technologies of the day'.
You should use technology that's right for the job, and not just because it's trendy. Often, engineers like to choose a technology just because it's trendy. Guess what - technology trends just like fashion trends come and go. For example, NodeJS is very hip right now, but it uses a single thread for computations which makes it not a top choice for CPU intensive computations.
3. Ask around.
Ask around other people about what they are doing and why. Did they use MongoDB for storing analytics information or stored in a database? Are they using SOLR or ElasticSearch for real-time search. Experience helps and many technologists will be happy to lend free advice.
4. Don't use esoteric technologies where little open-source innovation is happening.
By using esoteric technologies, you will have a harder time to recruit engineers. Technologies where lots of open-source innovation is happening (Ruby on rails, .net, java, etc.) are always a good mainstream choice. On the other hand, Pascal, maybe not so much.