HUFFPOST CODE
03/25/2014 10:22 am ET | Updated Mar 25, 2014

Famo.us to Provide Solution for JS/HTML5 Performance

A few years ago, HTML5 rose to fame with the great promise of the ability to develop mobile apps using web technologies. These apps were said to work just as well as native apps, and many companies began using HTML5 to build cross-platform applications. Facebook attempted to leverage HTML5 for their iOS, Android, and mobile web apps, but performance was slow and choppy and they scrapped their entire build to start over in 2012. Mark Zuckerberg stated that betting on HTML5 was one of the biggest mistakes they made as a company.

Since this failure, developers have managed to build mobile applications using web technologies, but the apps perform at a much slower rate than apps that are built natively. Is it possible to deliver on the promises that HTML5 made? Since 2009, Famo.us co-founder and CEO, Steve Newcomb has pursued the answer to this question. Newcomb previously co-founded Powerset, which was acquired by Microsoft in 2008. He loves the challenge of solving industry problems, which is why he approached his HTML5 research with such interest.

“What we’ve got is a layout engine, it’s kind of designed to render text documents with links and you’ve got an animation engine that’s about as powerful as a lawnmower engine,” Newcomb said. “What you end up with is this really clunky stuff that no matter what HTML5 app company tries to do, they can’t fix it.”

Newcomb also began studying JavaScript to identify what the language can do now that it couldn’t have done three years ago. The biggest factor is, of course, speed.

“Five years ago, building a layout rendering engine and building an animation engine in JavaScript was ludicrous because JavaScript is nowhere near as fast as Compiled C,” said Newcomb. “Javascript went from maybe being 1000x slower than Compiled C to 80% as fast as Compiled C and that was sort of the ah-ha moment for us as deep platform engineers. We’re like, ‘oh, so why don’t we try to build a layout engine and an animation engine in JavaScript, and instead of using old techniques designed to render a text document with links, and old animation techniques, from the mid-eighties, why don’t we sort of reverse engineer modern gaming engines and get all that power but use it for apps?”

So, Newcomb and the Famo.us team built their own fully-integrated rendering layer engine and 3D physics engine. This was developed with co-founder Mark Lu. Lu and Newcomb received assistance from Dave Fetterman, one of Facebook’s first engineers and the founder of Facebook’s Development Platform. After four months of collaboration, Fetterman agreed to join Famo.us fulltime as VP of Engineering. Together, they developed what Newcomb calls their “Ferrari” engine and he has since worked on perfecting the development platform, or “car” around it. To prove that Famo.us can actually perform as well, if not better, than a native app, he’s been working with his colleagues and private alpha members to recreate Capptivate demos.

Demo: Facebook Paper in Famo.us from Famous Industries, Inc. on Vimeo.

“We show that you can build these things in about half the code that it takes to build them in native and you only need to be a beginner or intermediate developer to build this in the first place,” Newcomb said.

To further prove this point, Famo.us has partnered with San Francisco-based CS educator, Hack Reactor. Hack Reactor is a 12-week immersion program that teaches students how to code. During the last 3 weeks of the program, students work on their own projects and 1/3 of Hack Reactor students are now working on Famo.us-related projects, including Famo.us University.

“When I heard that Famo.us is wanting to build an educational platform for instructing developers with their technology, I immediately wanted to be part of the project and help bring intro fruition something I’m deeply passionate about,” said Farhad Ghayour, a Hack Reactor student who has been an entrepreneur and investment banker and is now pursuing a technical career. “The framework was still in beta and not accessible to the public during our time at Famo.us, so the lack of online resources and the lack of the open-source ecosystem made our development of Famo.us University much more challenging; however, the upside of working alongside the engineers who developed the framework was a major bonus, as we were given the opportunity to tap into their mindset and learn from their approach to problem solving within their framework.”

Ghayour works on Famo.us with fellow Hack Reactor student, Brian Kang. Kang graduated from UC Irvine last June and decided to learn how to program after spending the summer abroad. “By far, Famous is the framework that I was most excited to work with. The main thing that everyone brings up when talking about Famo.us is that it can allow for beautiful and complex animations to happen at 60 frames per second, but I believe the real power of Famo.us is that it allows anyone to create those animations quickly and easily.Another team in the private beta was able to create a beautiful app with complex, yet fluid animations in only 3 days. That amazes me, and I don't think it can be said for any other framework that I have used.”

Hack Reactor was founded by Anthony Phillips, Shawn Drost, and Marcus Phillips, who were college friends and roommates in San Francisco. They founded the education program as a means to give students a combination of mentorship and online resources. When it came time to decide the core curriculum, they opted for an emphasis on JavaScript.

“Like us, Famo.us made a major bet on JavaScript when it had been very controversial to do that so, and they spent an insane couple of years doing research on how to get the most productivity and performance out of web technologies like JavaScript and HTML,” said Drost. “If [Famo.us] is successful according to all of the goals, it will be a wildly transformative product and in that world, we would definitely be the place where you would find the best Famo.us developers on the planet.”

Newcomb and his team are confident that Famo.us, a framework that offers free education and free source code along with an engine that can produce high-speed results, will be a game changer. Famo.us will be in beta starting April 9th and there are currently 72,000 people on the waiting list. A Famo.us wrapper is also in the works and will be released in the near future.

CONVERSATIONS