View Full Version : Serious performance degrading leads me to doubt Sencha's Future

12 Jan 2012, 8:56 AM
I'm a long term Ext JS user and advocate in my company (a large bank). We started to use it since Ext JS v2. We went through some pain to upgrade from v2 to v3 when v3 came out. We noticed some performance degrading but it was tolerable. Last year when Ext JS v4 came out, we immediately tried it. But to our dismay we noticed intolerable performance degrading on IE, especially for grids. As a result, we had to revert back to v3. Besides intolerable performance, we've also noticed the API underwent major revamp, which was a pain since our system is much larger now than when we upgraded from v2 to v3.

I've been since closely monitoring v4.1 progress. Based on all the discussions and our own benchmarks, it seems that v4.1 will still be much slower than v3.4 even when it is officially released. See these

http://www.sencha.com/forum/showthread.php?153008-4.x-Framework-performance-–-Request-for-an-Official-Statement/page11 (http://www.sencha.com/forum/showthread.php?153008-4.x-Framework-performance-%E2%80%93-Request-for-an-Official-Statement/page11)

So we face two blockers: one is performance and the other is code refactoring and large amount of QA associated with code change from v3 to v4. I see that upgrading our existing code from v3 is v4 is very impractical. As a result, my decision is to have a mixed system: keep existing system with v3.4 and selectively use Ext JS v4 for new pages/features if performance is good enough.

The big downside is that we now have to master two systems, both v3.4 and v4. This is a great pain, not just for experienced developers, but especially for new developers.

As an enterprise software architect and manager, I select technologies in hope the vendors will support their products, not just in the near term but also in the future. But who the hack was/is managing Sencha's product development? I understand why Sencha decided to change their class system etc, but at the stiff price of intolerable performance degrading and such dramatic API changes? It seems that some smart guys made the decision but apparently they totally lack the understanding of how enterprise software development works, or they simply decided to ignore the pain to their customers associated with the decision. To me pissing off your customers again and again does not seem to be a good strategy for a start-up.

So I've started to doubt whether I've made the right decision to stick with Ext JS.

But on the other hand, I really like Ext JS. I think it is a great piece of software. So I offer some suggestions.

1). Since Ext JS v4.1 is not going to have the same performance as Ext JS v3.4, Sencha needs to keep support and enhance Ext JS v3.4 in the near and intermediate term. Maybe you can port some nice features back to v3. I think a lot of people are going to end up doing what I'm doing: keep the existing pages written on Ext JS v3 unchanged but selectively write new pages using v4.1.

2). You really need to figure out the performance issue ASAP for v4. So far Sencha is so slow to address the issue. Maybe you have a talent drain? All the OO design stuff is cool, in theory, but what counts at the end is what the end users experience: cool features with excellent performance. Excellent OO design is cool for developers but I choose good/mediocre OO design like v3 with good performance hands down.

3). I feel Sencha is on a wrong path to somehow FORCE people to adopt certain paradigms.I'm referring to the new MVC, dynamic class loading stuff. These are great ideas and idioms - I totally agree with the ideas. But a good library should be nimble and should support all sorts of paradigms, especially since people have legacy system to support. I understand Sencha does not really FORCE people to use MVC but its documentation makes me feel that way.

My two cents.

12 Jan 2012, 9:32 AM
It was stated in another thread that the eventual performance goal for 4.x is to be at least as fast as 3.4.

I believe this will happen, but it may take more than one point release.

13 Jan 2012, 12:10 AM
The performance is not that bad. The bugs give troubles.

13 Jan 2012, 12:37 AM
I agree - Sencha really need to land 4.1 anytime soon or they will find themselves chasing their own tail adding this, adding that and feature-creeping the 4.1 branch ad infinitum.
I hope the landing will be smooth and not a crash - we are currently in a holding-pattern on two major projects waiting for a 4.1 release (still running 3.x and one prototype project running 4.0.x but with MAJOR performance issues that are sort of fixed in 4.1b1).
Having a shared Class-structure between Touch and Desktop would be extremely nice, but guys - please land 4.1 and Touch 2.0 as separate flights before it starts to get crowded in the air and development efforts are wasted.

13 Jan 2012, 6:22 AM
It is important to remember that, besides great, ExtJS is just JavaScript, and like in many other areas (OS, Gaming, etc), there came the time when you need to evolve. For example, Google only support the last 3 versions of each browser. That completely drop IE6 support.

Maybe sometimes we need to think in convincing our users why is important to use a different browser. In the Internet this is not possible, but in a corporation, I think it is: it can be taken as a Non Functional Requirement.

I'm not defending Sencha, but sometimes we need to put our selves in they position.

Expanding Ext3.4 support it will be wise too, at least until we have a good performance, and more important, good stability.

13 Jan 2012, 9:26 AM
It looks like OP was mainly complaining about performance as it relates to IE. Personally I have not experienced performance problems but I'm using Safari so perhaps that's why.

OP went on to say that they reverted back to 3.x. That's a perfectly reasonable solution. Sencha is pushing the platform forward while taking advantage of state of the art browsers and if that means that older systems have to suffer, then so be it. If you want to better support older systems then stick with the older ExtJS.

As someone else pointed out, it may take several more dot-releases before ExtJS 4 is where everyone wants it to be, but just take a look at the overhauled layout system in 4.1b1 and you'll see that they're not ignoring it.

13 Jan 2012, 12:43 PM
check out KendoUI , its highly theme-able and built on jquery.

I am a big fan of extjs but their performance on IE and lack of communicating their plans have forced me to look out alternatives
KendoUI is what i am enjoying these days, moreover they are very clear on their road-maps and release schedule

for those who are good in extjs KendoUI will not demand a big learning curve

http://www.kendoui.com/ (http://www.kendoui.com/)

13 Jan 2012, 2:36 PM
I got most of my app migrated to 4.1. And its stable for as far as I see:). That is quite a difference compared to 4.07. Performance is still bit a slower than 3.4. But acceptable. Tab changes could be a bit quicker.

If the resizer bug is fixed.... I dare to roll it out. Performance will come. Maybe we were spoiled, and is it sometimes necessary to take a step back....there is no other framework I have seen better than ExtJs .So hopelfully Sencha gets thing back on track after this painfull migration. But good job guys!