I am trying to build an application that has many points in common with Twitter. So, I was wondering whether there is a language more suitable to create a site like that.
I don't want to discuss about what is the best programming language.. I only ask you what language Twitter uses (if anyone know..)
Thanks
Ruby on Rails for the frontend and scala for some of the backend: http://www.artima.com/scalazine/articles/twitter_on_scala.html
They originally used Ruby on Rails, but it's been considered to be the cause of a lot of their downtime and problems, so it's probably not the best approach. Last I heard they were transitioning a lot of their code to Scala.
Twitter: blaming Ruby for their mistakes?
Twitter Said To Be Abandoning Ruby on Rails
from HighScalability "Scaling Twitter: Making Twitter 10000 Percent Faster"
The Platform
- Ruby on Rails
- Erlang
- MySQL
- Mongrel - hybrid Ruby/C HTTP server designed to be small, fast, and secure
- Munin
- Nagios
- Google Analytics
- AWStats - real-time logfile analyzer to get advanced statistics
- Memcached
See also other HighScalability entries related to Twitter.
They may still use Ruby On Rails on the front end, and for some internal systems, but these days, there's a lot more involved. A significant part of the system is a queue - written in a language called Scala, based on the same technology as Java.
The developer of the new Scala based queue wrote about it's development on his journal.
The big mistake Twitter made with their original code, wasn't any language choice, but an architecture choice. Initially it shared more in common with a CMS, or blog. You enter a piece of text, and it's fetched back on demand. The work they have done to put a queueing system behind it has done far more towards its stability and scalability than anything they did to the front-end code. You can search for more on 'twitter scaling' to read more of what they have done in this style, and what others have thought about it as well.
Ruby on Rails as far as I know.