Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: What language(s) is Facebook written in?
4 points by natgordon on June 30, 2010 | hide | past | favorite | 11 comments
Facebook was originally written in PHP. What technologies is it using now?

I had someone tell me that they were moving from python/django to php because 1. it's easier to find PHP devs and 2. it's good enough for facebook. Is it?



Really?!

They developed Hip Hop to transform PHP into C++, so I'd bet they are firmly dedicated to PHP, and I really doubt that Facebook has any problems finding developers.

PHP/C++, Cassandra, JavaScript, Flash, and whatever third party developers choose to use as long as they use the Facebook API.

I don't actually know, maybe someone else will give you some more insight, but I'm pretty confident about the PHP part.


It's always been written in PHP, and they released a compiler for the language that they developed in house:

http://www.insidefacebook.com/2010/02/02/facebook-open-sourc...



Don't forget about Cassandra, which they developed just for scalability issues that they were having, and is now used at Digg and other sites (I think reddit uses it for something as well now) http://www.facebook.com/note.php?note_id=24413138919


Facebook developed the Thrift API to facilitate cross-language services: http://incubator.apache.org/thrift/

I imagine they could use anything as long as it consumes Thrift. The extent to which they do that is a question.


Take a look at the EE380 video for May 5, 2010 at http://ee380.stanford.edu. Haiping Zhao from Facebook describes the HipHop Compiler for PHP: Transforming PHP into C++.


It's easier to find PHP devs.

Facebook is written in PHP. They crossed the point where switching made any sense a long time ago.

This has absolutely nothing to with what you should use.


From people on the inside.

Its written in PHP mainly. It has Java, C++, C, Haskell, Erlang, Python, Perl, OCaml and some others littered throughout the site.


Isn't the chat subsystem in Erlang?



yes it is




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: