Hi all. Rich sent me a PM asking for an additional summary vs. what I posted near the top of this thread, so this is what I sent him, and thought I should repost the essentials:

I hope I did a good job outlining the complete situation in the original blog post: http://www.sencha.com/blog/ext-js-4-1-update/ and my follow-up forum posts and comments. But to summarize again, if 4.x performance is not meeting your needs then for the short term you should stay on the 3.4x line. We're looking at extending 3.x support for at least 6 months beyond the 5.x ship based on this recommendation, since more people will be staying on 3.x for longer.

Our goal is to get the 4.x line to be faster than 3.4 at the very least for the common app cases. From looking at what people are posting on this thread and our internal testing, it looks like the consensus is that the current 4.1 preview is roughly 2x faster than 4.0 but also still about 2x slower than 3.4. We are working as aggressively as possible and will continue to release performance improvements in 4.1.x and 4.2 releases until we achieve our performance goals. Hence our recommendation. As an aside, we've integrated continuous performance benchmarking in our testing process as a result of our 4.0 performance experience.

Our initial comments that 4.x would be faster than 3.x was based on early benchmarks of our refactored layout and rendering pipeline - which we showed at SenchaCON 2010. Subsequent to SenchaCON 201, we integrated the new class system, added fairly involved theming code and also did a grid rewrite to support the new 4.x features. The combination of these, particularly for more complex layouts, reduced performance substantially from our early benchmarks, as all of our, and your, test benchmarks have shown.

I hope this summary helps those of you who are trying to make decisions about which version of Ext JS to use.

18 Nov 2011, 3:43 AM

MrSparks

@mmullany

Quote:

I hope I did a good job outlining the complete situation in the original blog post: http://www.sencha.com/blog/ext-js-4-1-update/ and my follow-up forum posts and comments. But to summarize again, if 4.x performance is not meeting your needs then for the short term you should stay on the 3.4x line. We're looking at extending 3.x support for at least 6 months beyond the 5.x ship based on this recommendation, since more people will be staying on 3.x for longer.

To be fare a lot of us signed up to 4.x because 3.4 wasn’t quick enough. So really the statement should be "if performance is not meeting our needs”, "2.3 would be the best line to either stay on or adopt".

Quote:

Our initial comments that 4.x would be faster than 3.x was based on early benchmarks of our refactored layout and rendering pipeline - which we showed at SenchaCON 2010. Subsequent to SenchaCON 201, we integrated the new class system, added fairly involved theming code and also did a grid rewrite to support the new 4.x features. The combination of these, particularly for more complex layouts, reduced performance substantially from our early benchmarks, as all of our, and your, test benchmarks have shown.

With regards to theming and it being a performance blocker. If it cannot be improved, simply remove it from 4.x and utilise the existing theming model. There was nothing fundamentally wrong with the existing one. There’s no point in bulking out the framework with “concepts” that sacrifice performance just for the sake of having them.

I’ll reserve my final judgment/decision until PR2 is released. However can I ask Sencha to start to consider reinstating support for the 2.x line. From comments made on this thread it sounds like there is a lot of room in the 2.x line to improve its performance even further still. Sencha should consider a 2.4 release which has these optimisation out of the box. I know this would be a hard pill for Sencha to swallow but as a gesture of good faith and with a view to stopping developers seeking out solutions with your competitors. (not to mention the plethora of refund requests you would get!) I think its something that should be seriously considered.

Best
MrSparks

18 Nov 2011, 4:43 AM

tvanzoelen

I don't understand why people are kicking on performance while ExtJs 4 is still unstable.

All the bug fixes on layout, recalculation sizes and still collapsing panels et cetera are making my application slow. But unfortunately these doLayouts and all these layout patches are necessary. I hoped after 3.4 that the layout problems would be over.

Second point. ExtJs 2, 3 have brought it so far that is was possible to build big web applications. You can not say that ExtJs 4 is faster in certain conditions if you not meet the level of stability of Ext 2 or 3. That would be a comparison between an apple and a pear.

18 Nov 2011, 5:17 AM

nomack84

What I don't understand is what Sencha is waiting to release a PR2. Why wait so much time?
If improvements are made, then release a PR2, to calm down all developers, showing all the advances.

18 Nov 2011, 5:23 AM

terrycursh

Quote:

Originally Posted by nomack84

What I don't understand is what Sencha is waiting to release a PR2. Why wait so much time?
If improvements are made, then release a PR2, to calm down all developers, showing all the advances.

Agreeed with my heart!

18 Nov 2011, 8:44 AM

danattfield

Quote:

Originally Posted by mmullany

I hope this summary helps those of you who are trying to make decisions about which version of Ext JS to use.

This summary would have been really useful 6 months ago. Had we known this before upgrading, I don't think we would have done.

What I find particularly disappointing is that Sencha have been running training courses (one of which I attended in May 2011) specifically targeting 'Upgrading to Ext JS 4', which although highlighted some bugs, mentioned nothing of this performance hit, or the colossal effort which the upgrade would require for a very large application such as ours. Don't get me wrong - we knew we'd have a lot of work to do when we chose to upgrade. But call me naive; when a company is running and taking payment for training courses for a product, is it wrong to expect that product to be almost, if not fully stable?

This is not to say that the course itself was not enlightening on the whole, and for the most part led us to decide that we wanted the additional functionality the Ext JS 4 would offer, and that we wanted it sooner rather than later. There are some great features and on the whole we really like it. It's just a shame we didn't know how many months we'd need to commit to upgrading, fixing the horrific lack of backwards compatibility (even with the 'compatibility' scripts), or that when we'd finished our application would be even slower than with 3.4.

Was Ext JS 4 ready for adoption back in June when we started upgrading? Definitely not. Did we make the decision to adopt it too early? Probably. Would we now like to see greater transparency, increased communication and some indication from Sencha that our concerns are being prioritised and addressed accordingly? Absolutely.

</rant>

18 Nov 2011, 12:55 PM

tjstuart

Quote:

Originally Posted by saprot

Sorry for offtop, but where to find these tweaks?

I'll post them when back at work next week. In the meantime, search the forum for _getCacheIndex as I believe there was some discussion regarding this some time ago.

29 Nov 2011, 4:08 AM

amlody

How about adding changes which improve performance to 3.4 version which is most commonly used until we get stable and fast 4.x?

Do you know any tweaks for 3.x?

1 Dec 2011, 7:57 PM

petercdobbs

ugh

This is not where I had hoped Sencha was going when I first considered it.

What's sad is, v4 runs pretty good on newer browsers (damn government users!). Thank goodness we don't have to support Netscape.

I really don't want to consider going back to Telerik. The promise of a usable extjs solution is too appetizing. :-|

2 Dec 2011, 4:28 AM

Hoopoe

Quote:

Originally Posted by petercdobbs

This is not where I had hoped Sencha was going when I first considered it.

What's sad is, v4 runs pretty good on newer browsers (damn government users!). Thank goodness we don't have to support Netscape.

I really don't want to consider going back to Telerik. The promise of a usable extjs solution is too appetizing. :-|

May I ask you, what’s wrong with Telerik? We were considering Telerik + JQuery (just because we found ExtJS 4 unusable in its current state). Might mean a lot of work for us, but looks like it may be better then depend on ExtJS.