Update: I’ve started a ’Getting Started with Famo.us’ series where we learn the Famo.us framework together.
Famo.us has been hyped as a revolutionary new HTML5 framework in the mobile web scene. With their custom built JavaScript 3D rendering and physics engine, Famo.us founder Steve Newcomb claimed we would see native level performance from mobile applications built with the framework. Initial demos looked promising, and many developers (myself included) were excitedly waiting for the official release date of May 19th, just a couple of days ago. There was definitely a lot of hype to live up to…
When Famo.us did finally launch, comments and opinions stared flooding in – most of them overwhelmingly negative. I approached these with some scepticism – developers are notoriously critical by nature and I was expecting the die-hard ”everything sucks but native” crowd to shut it down immediately.
Take a look at what people were saying over at Hacker News. Among the response to criticism from a Famo.us employee, you will find the majority of responses shared the common theme of “this is awful, and your scrollbar doesn’t even work”.
“Does no-one do QA? Do you not have a Steve Jobs-esque character who has taste and an eye for detail and who can look at this stuff the way your users will? Because such a person would’ve looked at this and Noped the **** out of there, cancelled whatever PR you had planned, and put everyone around a table saying “we’re not there and can we fix it?“. – joaren (HN commenter)
“Scroll doesn’t work (can’t even hit spacebar or use the arrow keys), demos don’t seem to work (I can’t scroll to get to more than the first 2 anyway), and there is an unclickable scroll bar just taunting me.” – skizm (HN commenter)
With my enthusiasm for the framework taking a heavy blow before I even got to try it out, I figured I would head over, sign into my developer account that had been waiting in line for access for about a month, and give it a go myself. I would soon find out that they were right.
I tried the Famo.us demos on my desktop computer with a Chrome browser. The website was confusing and hard to navigate and the performance of the demos was very unimpressive, especially considering this was on a desktop computer which is a lot more powerful than a mobile phone. For something with a tag line of “free, open source JavaScript framework that helps you create smooth, complex UIs for any screen” this is hardly the experience they should be offering their visitors. The experience was just as bad on my iPhone (although the website was easier to navigate as it’s clearly optimized for mobile). It is immediately obvious when trying to scroll down a list that Famo.us is not ready yet. The scrolling is slow and janky – considering how hyped up their rendering and physics engine was this was a massive let down. Smooth scrolling lists like those in native apps is absolutely essential, and this is something Sencha Touch does perfectly.
Let me jump off the negativity train for a little while and say there were some things I liked as well. Despite the let down on performance, the demo applications are really cool. There’s some very heavy animations and 3D effects going on – it’s clear that Famo.us could be used to do some awesome stuff. The Famo.us University is also impressive, although there’s certainly more to be added here they are doing a great job at introducing people to the framework through a series of interactive tutorials.
Sencha Touch vs Famo.us vs PhoneGap Build
The primary focus of this blog has been Sencha Touch and PhoneGap Build, so of course many of my readers may be wondering what impact Famo.us has on the technical environment around it. Should you use Sencha Touch or Famo.us? No matter what way you put it, Famo.us isn’t ready to create the production quality mobile applications we can create with Sencha Touch and PhoneGap right now. It may not even be necessary to choose between Sencha Touch and Famo.us, in fact there is already support for a Famo.us and Angular.js hybrid. Famo.us does also have a PhoneGap Build competitor in the works, but I think it will be a long time before this will be an option worth looking into.
I was really excited for the Famo.us launch and can’t help but feel just a little let down. This is still very exciting though, we need people who are willing to innovate and push the boundaries of mobile web. The more competition there is the faster we’re going to see improvements and I can’t wait to see what the Famo.us team do from here.
I’d like to start playing around with the framework and seeing what I can do with it, and perhaps put some stuff up on the blog. Would you be interested in some more Famo.us posts in the future? Let me know in the comments, and let me know your first impressions of the framework.