Created by Brian O’Sullivan, Gillien Verlage and Aloc Mengrajani (Facebook engineers) spent several years developing a programming language that would be unique when compared others.
With the help of other social networking experts the engineers were able to develop a new tool for quickly creating complex sites while maintaining a clear organization of the code itself. Not many programming languages can make the same claims. The resulting language is called Hack and now almost all Facebook runs on it serving more than 1.5 billion people around the world.
Hack was introduced to the public on March 20, 2014. It was immediately offered for free so that any person in the world could use it and even help make this tool better via feedback and suggestions etc..
In our world today there’s are huge number of programming languages and new ones are constantly emerging. This does not surprise anyone and enthusiastic releases usually have little interest. But in the case of Hack the situation is somewhat different as experts are rather supportive about this project.
Once Mark Zuckerberg started working on Facebook at the end of 2003. You can learn more in the movie “Social Networking”. He used PHP which was and still is a popular tool for developing Web applications that allow you to quickly create and rearrange software products. This is the so-called dynamic programming language. Using this you can define data types “on the fly” and once you write some code you can run it immediately and see the result as compilation also occurs instantly.
Over the next ten years Zuckerberg and his colleagues continued to make the site using PHP. This completely fits into the philosophy of programming by Zuckerberg. However over time the limitations of PHP became increasingly clear. In order for Facebook to work on PHP it required more servers than with any other programming language.
For projects of such size requires language with a static typing such as Java are more appropriate and you need to create, define all types of variables. With these software tools you cannot move very quickly because you need to compile it before running the code. It’s necessary to have the same servers running the products created with them as managing them is much easier.
In this context Hack is easily perceived as an improved version of PHP. It also runs on HHVM but it allows programmers to use both dynamic and static typing. Referred to as gradual typing and until now it could be found more in scientific works. According to O’Sullivan Facebook is the first company to try to implement a gradual typification in the “real-time use of production” of programming language.
This allowed Facebook to replace the PHP code with Hack a system based on dynamic typing something more modern. According to O’Sullivan with the help of Hack the company can create more accurate code and developers can immediately understand what code is doing with its review. Even more important is Hack allows all these advantages without the loss of speed. This is achieved due to lack of compilation as in other static languages.
You edit the file then reload the page to immediately get an understanding of how the page will look after the changes. Without delay you also get both safety and speed. Many projects will be able to gradually replace their code with Hack code but in his opinion those developers that never used PHP can become interested in a new language. Despite the fact that PHP is the most widespread language in the web there are some areas it is not as popular due to the lack of consistency. These problems are solved in Hack which makes it an attractive option for users of other programming languages.