Wednesday, 13 May 2015

A programming language for the future


Top programmer and entrepreneur Mark Zuckerberg started work on Facebook in late 2003 he used a programming language called PHP. PHP is a very dynamic and responsive programming language and very effective when building sites with large databases. Zukerberg and his team of programmers continued expanding the social giant site that is Facebook with PHP. However Zukerberg and his team noticed some limitations within the language. Facebook’s expansion has been remarkable for over a billion users today, with the expansion zukerberg and his team have had to run Facebooks code on more servers. This is an issue with higher server costs, and higher electrical consumption and more difficult to keep code free of bugs. Mark Zukerberg and his Facebook team are always looking for ways to advance the technology and framework of Facebook. For instance when you hit a certain size of database it is more efficient to use a statistical language like Java. However this was not plausable as compiling code can be time consuming and Facebook needs to be online and responsive 24/7. Instead of using an existing programming language Zukerberg and Facebook released their own langauge called Hack in March of 2014.
Last year, after a brainstorm from three top engineers, Facebook solved the server problem by running all its PHP code on a new software creation called HHVM, short for Hip Hop Virtual Machine. HHVM was a new foundation for the Facebook website, letting the company run its site on less servers.
Hack developer O’Sullivan gave this statement:
“It arose out of a desire to improve the efficiency of our developers,As our engineering team grew, their own jobs were becoming more complicated because PHP is a dynamically typed language. It made it harder for them to easily apprehend the consequences of some of the work they were doing.”
“You can think of Hack as a new version of PHP. It too runs on the Hip Hop Virtual Machine, but it lets coders use both dynamic typing and static typing. This is what’s called gradual typing, and until now, it has mostly been an academic exercise. Facebook, O’Sullivan says, is the first to bring gradual typing to a real, industrial strength language.”
“What this means is that Facebook was able to gradually replace its existing PHP code with Hack — move from the old dynamically typed system to a statically typed arrangement. It allows you to slide the dial yourself on the continuum between dynamic types and statics — so you can start out with dynamically typed code and then gradually add more statically typed code, benefiting from each little bit of work you do as you go along,” O’Sullivan states.
“In doing so, he explains, Facebook built much more precise code — code with fewer flaws. Hack provides a kind of safety net for developers. What’s more, engineers can more easily understand code when they revisit it. Static typing acts a lot like documentation.”
“But the big trick is that Hack provides these benefits without slowing down the developer: Unlike other statically type languages, Hack can run without compiling. You edit a file and you reload a webpage and you immediately get the feedback of: Here’s what the page looks like after I made that change. There is no delay,You get both safety and speed.”

Nils Adermann, a software engineer and the co-founder of a company called Forumatic, has used the Hack, and is completely astonished with it’s capabilities. James Miller and Simon Welsh, engineers at a company called PocketRent, who have also used Hack, agree. It really is the programming language of the future for any developer and growing business.
Hack will be particularly attractive, Adermann says, to existing PHP shops. “Ironically,” he says, “its chief advantage is how little it differs from PHP.” Like Facebook, these shops can gradually move their operations from one language to the another. But Adermann also believes that some developers will adopt the language even if they’re not already using PHP. “While PHP is the most widely used language on the web, it’s unpopular in many places because of its inconsistencies,” he says. “Hack addresses these … and thereby makes the language more attractive to users of other languages.”
But the biggest endorsement for the new language is that Facebook already uses it to run its own site, the world’s most popular social network. It’s not every day that a new language debuts with such an impressive track record. Some, however, question whether Hack should really be called a new programming language. There’s a fine line here between an update to PHP and a replacement for PHP. Where does Facebook draw that line? “That,” Sullivan says, “is a good question to discuss late at night over whiskeys.”
This is a revolutionary development in the programming world and an exciting chance for developers to learn the fundamentals and advantages of Hack. Stay tuned for a Hack tutorial where we will introduce you to it, we hope you are excited as we are.

No comments:

Post a Comment