Sencha Touch 2 – Thoughts from the Trenches

As you may have seen, we put out the first public preview release of Sencha Touch 2 today. It only went live a few hours ago but the feedback has been inspiring so far. For the full scoop see the post on the sencha.com blog. A few thoughts on where we are with the product:

Performance

Performance on Android devices in particular is breathtaking. I never thought I’d see the day where I could pick up an Android 2.3 device and have it feel faster than an iPhone 4, and yet that’s exactly what Sencha Touch 2 brings to the table. I recorded this short video on an actual device to show real world performance:

Now try the same on Sencha Touch 1.x (or any other competing framework) and (if you’re anything like me) cringe at what we were accustomed to using before. That video’s cool, but the one that’s really driving people wild is the side by side comparison of the layout engines in 1.x and 2.x.

Getting our hands on a high speed camera and recording these devices at 120fps was a lot of fun. Slowing time down to 1/4 of normal speed shows just how much faster the new layout engine is than what we used to have:

The most amazing part here is that we actually finish laying out *before* the phone’s rotation animation has completed. Skipping through the video frame by frame there are at least 5 frames where the app is fully laid out and interactive while the phone’s rotation animation is still running. Beating the phone’s own rotation speed is the holy grail – it’s not possible to make it any faster.

Documentation

I’ll admit it, I’m fanatical about great documentation. I’m sure I drive everyone else on the team crazy but I think it’s worth it. This is only a preview release but it already contains by far the best, most complete documentation we’ve ever shipped in an initial release.

In fact, the team’s worked so hard on documenting classes that it’s probably better than the (already good) Ext JS 4 docs. Naturally, this makes it time to further improve the Ext JS documentation.

We’ve added some awesome features here – lots of videos, 11 brand new guides and illustrations. My favourite new feature is definitely the inline examples with live previews though – seeing Sencha Touch running live in a phone/tablet right there in the docs is just amazing. Little gems like the live twitter feed in the bottom-most example in the DataView docs really sell just how easy it is to configure these components.

We set a high bar for this though. We’ve gone from woeful documentation in 1.x to good documentation in 2.x, but what we’re shooting for is excellence. We’ll continue to round out our content over coming weeks, and have a few new features rolling out soon that will raise the bar once again.

Onwards

We have a few features left to implement, which is why we’re calling this preview and not beta. Probably the biggest thing now is getting routing/deep linking back into the framework, along with a nice new syntax that I think you’ll find really easy to use. We’re also missing carousel animations and a handful of other things that will be going back in over the coming weeks. We have Sencha Con 2011 in just 12 days now though so we’ll share more details there.

Finally though, I want to thank everyone who participated in the closed preview phase, and for everyone sending their support and kind words on the blog, the forums and on twitter. We really appreciate all the great feedback and I hope we can exceed your expectations with a fast, polished, gorgeous 2.0 final!

8 Responses to Sencha Touch 2 – Thoughts from the Trenches

  1. Lol, I just tweeted “Comparing @Sencha’s Android kitchen sink videos makes me think that #SenchaTouch2 performs slower on iPhone4 than Atrix?”, which is basically the same as your “I never thought I’d see the day where I could pick up an Android 2.3 device and have it feel faster than an iPhone 4”. 🙂

    So that’s a fact?
    There’s notably difference between your video and me on my iPhone 4 trying out the orientation change of the buttons page and click on a list item.
    The orientation change looks actually just as on the left side of the video (the 1.1 example).

    Any thoughts on that?

  2. Additionally:
    “we actually finish laying out *before* the phone’s rotation animation has completed.” Again, can’t see that on my iPhone 4 (with iOS 4)

    +1 for “Probably the biggest thing now is getting routing/deep linking back into the framework”.

    Also, congrats and thanks for the developer previews!!! 🙂

  3. Is Sencha Touch 2.0 going to include the same base as ExtJS 4 so we can start writing mobile/desktop views on top of the same models and controllers?

  4. Pingback: Sencha Touch 2 | FunctionSource Development

  5. Ed Spencer says:

    @Steffen iPhone 4 is actually a rather slow device in general, though it’s *twice as fast* on the same hardware with iOS 5 vs iOS 4. We’ll still optimize as much as possible for iOS 4 of course, but yes, modern Android phones are faster

    @Peter yes it’s the same base, but writing one app that runs everywhere is more challenging. We’re kicking some ideas about on how to deal with that

  6. Malky says:

    Hi Ed, please tell me that we have the filter option on the nestedlist?

    I (foolishly), saw something on lists and stores whilst reading the various documentation and assumed I could use filters, so started developing my application around that.

    The I discovered there are no filters for it? Seemed strange to me for what it is, so I was hoping this new version would help and save me loads of time and grief. Not to mention rework.

    Cheers,

    Malky

  7. Brad Schafer says:

    +1 for “Probably the biggest thing now is getting routing/deep linking back into the framework”.

  8. Ed Spencer says:

    @Brad it’s coming in PR4 🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: