More than other software applications, speed is the key to great user experience of mobile apps. Faster and more responsive applications result in better user experience as compared to those with a sluggish response. In the age of the Internet, speed and responsiveness have become even more important because of the short attention span and the need for instant gratification of the millions of users. If a Web site or application does not respond quickly the typical user is likely to go to the next choice unless there is a compelling reason for the user to stay on the site.
Business and ecommerce Web and SaaS applications also face the challenge of faster response because of the same reasons. Most Web and SaaS applications are designed for the full-screen devices working on high-speed corporate networks or DSL connections. The typical design approach of these applications is to provide as much information as possible on the same screen so that the user has most of what he needs readily available to him. This is optimal because there is plenty of real-estate on the full screen and the network speed is fast enough that large downloads are not a big problem. In fact, I believe that large screen sizes, faster CPUs and higher Internet speeds have resulted in bloated user interfaces.However, when these Web apps are run on smartphones and other mobile devices, they face four problems which make them impractical:
- The large screen design of typical Web apps simply does not fit the small displays of smartphones
- Mobile bandwidth is still low as compared to corporate networks and DSL. It takes a significantly longer time to download the bloated user interfaces of Web apps to smartphones. This is compounded by the fact that mobile CPUs are slower than those used in desktops and laptops.
- Mobile users typically have short attention spans because they are mostly out and about when using smartphones. They do not have the time necessary to digest all the information presented on large user interfaces.
- Mobile users are likely to be interrupted or lose their network connection. If they have taken the trouble of downloading a large user interface of a Web application and are working on it, they run the risk of losing all their work when interrupted, and having to download the entire user interface again when they want to continue working with it.
Chunking is an ideal solution for greatly improving the responsiveness and user-friendliness of Web and SaaS applications. It basically involves breaking up the user interface into small “chunks” of relevant data, and then presenting these chunks to the user in a logical sequence. This is the patented approach that is used by Chatty Apps to deliver rich user experience for smartphone Web apps. Chunking addresses all the problems listed above:
- The “chunks” of user interface can be small enough to fit nicely in the small screens of smartphones. In fact each chunk can be designed such that it appears like a native app for the device. No force-fitting or shrinking of the user interface is needed.
- Since the chunks are much smaller than the full screen user interface, they download much faster and increase the responsiveness of the application.
- Small chunk size means that the user is presented with a concise piece of information or a simple task which he can comprehend and perform quickly. A collection of such chunks can make an elaborate decision or convey significant of information in small bites that are easier for the mobile user to work with.
- All the data entered is saved after each chunk is completed by the user. Therefore if the user loses mobile connection he can start from where he left. In fact, Chatty Apps allows the user to restart from the same or a different device. It has a sophisticated algorithm that determines the most appropriate chunk to restart from in case the user decides to change device.
Chatty Apps is a complete platform and middleware that enables Web app developers to develop minimalist, chunked user interface for their applications that are fast and responsive to the user.