The promise of HTML5 was to bring smooth dynamic graphics and new rich content features to all browsers and devices. But that promise has gone largely unmet, and, on mobile devices, we are still living very much in a native app world.
Now, a San Francisco-based company called Famo.us has gone all-in with JavaScript — a lightweight, dynamic, browser programming language — to push the performance of HTML websites to levels that HTML5 proponents have so far only hoped for.
[aditude-amp id="flyingcarpet" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']The company’s founders, Steve Newcomb and Mark Lu, have built a JavaScript-based development framework that lets app and site developers create beautiful 3D imagery and gaming-like visuals inside the browser.
The two men (and their VC backers) are hoping that developers will adopt their framework. Famo.us wants nothing less than to become the de facto standard development platform for the next generation of websites and apps.
AI Weekly
The must-read newsletter for AI and Big Data industry written by Khari Johnson, Kyle Wiggers, and Seth Colaner.
Included with VentureBeat Insider and VentureBeat VIP memberships.
The Framework
The dream of HTML5 was to erase the lines between the mobile OS ecosystems by creating, in essence, apps that run in the browser. The problem was that HTML5 sites still depended on the stock graphics rendering engines in the browsers. The various flavors of browsers all had different engines, and the code in those engines was inaccessible. So HTML5 became known for poor performance.
Famo.us sidesteps this problem by using its own JavaScript-based layout and animation engines, bypassing the browser’s built-in rendering engines.
The Famo.us development framework consists of three main parts: a 3D layout engine, a 3D animation engine, and a tool called “containers,” which allows developers to use Famo.us to build animated elements in just one section of a website or app. For instance, an image carousel might use the Famo.us rendering engines, while other parts of the site or app could be HTML.
The “physics” animation engine applies the rules of the natural world to web content. For instance, the engine can evenly space random screen objects on the fly as if each of the objects carried an equal “repulsion” value like the negative charge of a magnet.
Newcomb says ordering web animations can get very complicated when an app or site runs on different-sized screens. The physics animation rules in Famo.us, Newcomb says, make tasks much easier for developers.
You can see some of this animation (and hear some pretty bad rock music) in the Famo.us sizzle reel:
[aditude-amp id="medium1" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']
Born in Berkeley
Newcomb has already been around the block a few times in startup land. He founded the Powerset semantic search engine and later sold it off to Microsoft for $100 million.
Newcomb is a likable, charismatic engineer-salesman hybrid, and his enthusiasm for Famo.us’s mission is infectious. A few times during our conversation at the Famo.us offices, I felt myself trying to remain objective within the pull of Newcomb’s somewhat Jobs-like charm and charisma.
It’s not a bad thing. Remember that a huge part of Newcomb’s job now is evangelism; he has to convince developers that the Famo.us platform not only creates beautiful apps, but that the apps will perform well in the wild and make financial sense.
[aditude-amp id="medium2" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']
Newcomb met Lu three years ago in a class at Berkeley that helps nerdy coders become personable entrepreneurs. Newcomb says he didn’t know Lu very well until he saw the kid’s code and was astounded.
The two soon formed a company and set out to build what Newcomb calls a “Pinterest-meets-About.me” HTML5 app. They even took some venture capital to do it. When the limitations of HTML5 stopped them in their tracks, they had an “oh fuck” moment, but then decided to junk their app and turn their whole attention toward fixing the serious graphical limitations of the web browser.
It was Lu who came up with Famo.us’s core idea of bypassing the rendering engines in the web browsers and letting JavaScript do the rendering. Lu was 22 years old at the time (he’s 24 now).
Holed up in an old chapel above a YMCA in Berkeley, the two began to code. And code. The outlines of Famo.us began to appear.
[aditude-amp id="medium3" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']
Stand and Deliver
The summer of 2014 finds the company of two expanded to a company of 25 employees, mostly engineers. What once was a hole in the wall in Berkeley is now an open, expansive office space across the street from AT&T Park in San Francisco.
The idea of relying on JavaScript for rendering isn’t terribly novel; if it works so well, some have asked, why haven’t others tried it before? With so much riding on web graphics performance, it seems likely that others would have thought of the approach.
Newcomb says part of the answer is timing. JavaScript has only gotten fast enough to do what his company is doing with it in the past few years, he explains. JavaScript, he says, is now about 80 percent as fast as compiled C code. Fast enough.
[aditude-amp id="medium4" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']
He adds that Famo.us took the novel step of borrowing some tricks from the gaming graphics community to make web graphics more dynamic. “These are some of the same principles that are used by the rendering engines in gaming consoles like Sony Playstation and Microsoft’s Xbox.”
“The engineers that go into gaming rarely intersect with web development,” he says. “We wondered what would happen if you took a gaming engineer and asked him to fix the web.”
The amount of developer interest in Famo.us adds a counterbalance to the weight of the skeptics’ arguments. Newcomb says 90,000 people signed up for the beta, which will allow developers to build apps with complete access to the Famo.us code (the company has made its source code open-source). Of the developers who originally signed up, 85,000 downloaded the software development kit (SDK) when the beta began in May.
New Investment
For a long time Newcomb was a one-man-band, beating the drum for the JavaScript cure to HTML5 withdrawal sickness. But others have joined in, in ways that count.
[aditude-amp id="medium5" targeting='{"env":"staging","page_type":"article","post_id":1526421,"post_type":"story","post_chan":"none","tags":null,"ai":false,"category":"none","all_categories":"business,dev,entrepreneur,","session":"C"}']
New York City-based Insight Venture Partners has just led a new $20 million equity investment in Famo.us and is extending Famo.us another $5 million in debt financing. The new infusion puts the startup’s total funding to date at $31 million.
“Software developers have thousands of languages and frameworks to choose from, and they’re looking to deploy across more and more screens,” says Insight Partners’ founding general partner Jerry Murdock. “Famo.us is removing that complexity so developers and designers can focus on creating beautiful UIs rather than developing differently for each platform.”
Newcomb isn’t terribly forthcoming when it comes time to talking about what his company intends to spend the new investment money on. The first reason he gives for raising the money is to prove to the development community that Famo.us is going to be around for the long haul — like for “the next decade or two,” as he puts it.
He explains that some have worried that Famo.us might let itself be acquired, leaving developers stuck with a development platform at risk of being retired. “The last thing developers want to do is convert to the new religion and then have to throw everything away,” he says.
Newcomb says his company might add up to 40 new people with the new funding money. With those people, Newcomb and Lu would like to rebuild the top 10 widgets in the jQuery library (where developers can grab commonly-used JavaScript objects like image carousels and lightboxes) using Famo.us. They’d also like to rebuild objects in the Twitter Bootstrap (a mobile-first development platform many developers use) using Famo.us, and rebuild other commonly used mobile development templates.
The Long View
Over the long term, the company’s goal is simply to win over developers. Newcomb and Lu want to get a million developers committed to building apps and services on the Famo.us platform. That’s why the company isn’t charging developers to use of the platform now, and may never.
Instead, Famo.us hopes to charge developers for cloud services later on.
And Famo.us is still working on developing the graphics possibilities of the standard. While at the Famo.us offices, I was shown some very beautiful web graphics created using Famo.us. It was an experience a couple of levels up from what we see on the web today.
I have also spent some time with a nearly-complete mobile app built using Famo.us. The scrolling function was smooth, and various images smoothly burst to larger sizes based on where my finger was moving on the touchscreen.
The real test, of course, is seeing these new JavaScript-heavy apps working in the wild on a variety of devices and screen types. There’s no doubt that apps built with Famo.us are beautiful, but how they perform with respect to things like power consumption and memory usage may say a lot about the platform’s real role in the future of app design.
VentureBeat's mission is to be a digital town square for technical decision-makers to gain knowledge about transformative enterprise technology and transact. Learn More