Ever wondered about the tower of Babel of programming languages? What programming languages do Twitter, Facebook, Wikipedia and Google use? I have. Am often on the lookout for articles that explain how companies like Twitter and Facebok scale and morph and add new features so quickly. Remember how we stuck around Twitter when the famous “Fail Whale” page appeared? We knew that folks at Twitter were backing at the back-end to try and solve the problem. How did they do it?
Last week I had an interesting discussion with a Silicon Valley entrepreneur on what language (s) they are using to build their product. And it was an eye-opener when he mentioned the pros and cons of the languages he is using to build their product. It was a combination of old and new programming languages. Using old programming languages with the new gives them a certain amount of flexibility that helps them make changes and scale he explained. The key is to make rapid changes is something that I have heard from other startup entrepreneurs. The dilemma then becomes what language (s) give you flexibility to make these rapid changes? When you peek into the Tower of Babel in the world of technology, you see a very intresting and gnarly picture. But these folks are not deterred by it and they solve this gnarly problem piece-by-piece.
This morning I stumbled across this wonderful and highly accessible article for a non-techies and techies from James Somers called “Toolkits of the Mind,” in MIT Tech Review. Somers explains how a programming language like Ruby was born. Yukihiro Matsumoto created Ruby based on Samuel R. Delany’s 1966 Babel-17 . Somers goes on to explain about other languages and how they are used in companies like Twitter, Facebook, Wikipedia and Google.
He explains how Twitter solved its “Fail Whale” challenge. They used a new language called Scala. And what about Facebook?
Facebook, by contrast, is a bazaar of small experiments, a smorgasbord of buttons, feeds, and gizmos trying to capture your attention. PHP is made for making—for cooking up features quickly.
The bulk of the code is written in PHP as Somers’ explains. Facebook solved the problem by using Hack.
Hack is PHP with an optional type system; that is, you can write plain old quick and dirty PHP—or, if you so choose, you can tie yourself to the mast, adding annotations to let the type system check the correctness of your code.
There is more to the Somers article than the examples I have mentioned here. He talks about the Secret Weapon of a trading company in Manhattan and the secret weapon that Google is developing.
Overall, this is an illuminating article that is worth reading if you want to keep pace with what is happeing in the world of technology and programming languages.