IntelliSurvey is the premier online survey platform for professional market researchers and consultants. We run some of the most complex surveys that go far beyond “how would you rate your experience on a scale of 1 to 10”. Our Ext JS application is used to construct advanced surveys and analyze data real time, and long after a survey is taken.
We leverage most of Ext JS’ libraries in our applications. The infinite grid is used to display survey respondent data that can easily be in the millions of rows. The charting libraries are utilized extensively, as well as the D3 package, to help us visualize the massive amounts of data that we collect and to help maximize researchers’ time:
Ext JS animation and drag-and-drop libraries are great for achieving a level of fit and finish that helps our app shine and stand out, with minimal engineering cost:
Why We Chose Ext JS
We began using Ext JS back in the Ext JS 2 days, while our flagship application was still a Multi Page Application. There was no other grid library at the time that came even close to what Ext JS offered. As so many others, initially we leveraged the grid in select views to provide a superior user experience back when DHTML was still a hot term.
Over the years, our Ext JS efforts continued to grow and transition through versions. By Ext JS 4, a true Single Page Application paradigm was implemented and the sunset clock started ticking for our legacy Multi Page Application.
Initially we focused our efforts on developing functionality, so the look and feel off our app was the “Classic Blue Theme”, all the way up until 2017:
As we continued transitioning through versions (we’re on Ext JS 6.5.3 now), it was easy to do a one-shot “visual refresh” of our application, achieving a completely custom look and feel without affecting any functionality. Currently we extend from the vector icon Triton theme and (almost) all of our graphical assets are vector graphics that look exceptionally crisp on high-resolution screens.
While our users have traditionally been the desktop type, with our upgrade to Ext JS 6 we began to venture into mobile applications by utilizing the Ext JS Universal application architecture.
Business Value of Using Ext JS
It is hard to quantify the value of being able to take a “legacy product” that was being written for almost a decade using Ext JS 2, including hundreds of thousands of man hours invested, and then transition components into our Ext JS 6 Modern mobile offerings almost seamlessly. This was a great way to leverage our investment over the years and rather than having to build our mobile direction from scratch, we were able to reuse the code libraries that we had already built and tested.
However, the greatest value offered by the Ext JS platform is a complete, cohesive, and synergistic ecosystem that scales in breadth, depth, and across developers. We are able to build countless views with no redundancy; we can build deeply nested views; we can throw a dozen developers at an app without them getting in each other’s way. This is all assuming that the application is built according to Sencha’s best practices, of course, with sound component encapsulation, and a clean de-coupled architecture.
Our Advice to New Developers
Everything in life comes with a cost and a reward. Ext JS commercial edition comes with a price and a challenging learning curve, but the rewards are well worth it. It is easy to be hesitant in the face of these challenges, but consider that pursuing a “free” open-source stack based on mixing-and-matching various libraries built by independent and non-cohesive 3rd parties will also come at a cost. The greatest expense will be trying to scale your app in depth and across many developers. Whatever dollar amount you might save during the initial impressions will not outweigh the challenges you will face between disjointed systems with independent lifecycles and browser support. It is like buying a car that was put together from components that were built by different car companies who did not talk to one another. Sure, you can force it to work, but do you really want to?
Never underestimate the value of the test of time. Recently, Airbnb announced that they were sunsetting the promising Facebook React Native, due to “technical and organization issues”. Ext JS has been around for more than a decade; that is more than most of the newer frameworks’ entire existence combined.
As with most things in life, it is impossible to judge the true grit of a technology until it has been around long enough, and has been adopted widely enough, and has been proven to be effective and reliable. You cannot equate this to a hot newcomer backed by some huge company with lots of hype. You must always ask yourself – what is the merit of a particular technology? What does it solve that some other technology hasn’t already solved? You must always question whether a given technology is being pushed because of merit, or because of a certain positioning and developer loyalty (dependence) that a particular software giant is trying to achieve.
Ext JS was born out of merit and developer passion and only later was incorporated into a business model. Honed and perfected for years by some of the brightest minds, it is the most complete and mature web development framework. It withstood market trials and the test of time for over a decade as Sencha grew and got acquired. Most Fortune 500 companies use Ext JS. How many other web development frameworks can claim this?
IntelliSurvey is hiring talented Ext JS developers! Please see our careers page if you’re interested.