Performance Optimization: A Need for Speed

An important distinction between FinalForms and other software is its speed.

Snappy response times are critical for an application looking to be a heavy duty host to the everyday tasks of an administrator. Why do so many administrators download data from most web applications into an Excel file? The two biggest reasons are:

  1. They cannot manipulate the data in the way they would like with whatever data collection service they are using.
  2. The length of time it takes to do simple tasks like sort and filter a table on most web applications is prohibitive to heavy in-app use.

The end game for FinalForms is to be a complete solution for athletic departments. We want ADs, Coaches, and Athletic Trainers to be able to access their data anytime, anywhere in the world, and on any device. However, even if we provide solutions for all of their daily needs, if FinalForms is not snappy with its response time, we will fail to be a successful alternative to desktop spreadsheet applications, which constantly require all data to be downloaded and stored.

With this realization in mind, hundreds of hours went into optimizations at every level of the app, most notably into the development of our proprietary ZOOM library which optimizes HTTP requests between the client (web browser) and the server.

Many developers implement common database and server optimization, as these are fairly easy, well known, and well documented. Some developers also execute request optimizations, keeping the size of their code down, making images and assets as small as possible, and arranging code in a browser friendly way. However, with ​ZOOM​, we took it a step further and targeted optimization of the client (the web browser) as well!

Our library works by not only stripping asset requests (most browsers cache assets but still query to make sure they are unchanged) but also returning most requests WITHOUT a full browser page load, something that can save serious time and computing power on a less powerful (mobile) devices. The end result is page load times that are over twice as fast! With this technology in hand, on top of careful implementation of other modern web optimizations, we are confident our application's response time cannot be beat.

Without ZOOM

 

Request without asset caching or ZOOM enabled.


With ZOOM 

With ZOOM. 

 

The most important number is 970ms vs 2200ms. You will also notice the solid part of the first bar is smaller with zoom. This represents the amount of time the browser spends interpreting and rendering the request, 15ms vs 120ms on a desktop computer. This effect will be even more noticeable on a mobile device.

In conclusion, not only are we constantly releasing new features for athletic departments that no one else has, but the ones that others do, we do faster and better.

 

 

Categories

Archive