Going Single Page Application (SPA)

The web has changed a lot in last few years. The front end has now gained more attention than ever before and people have started to ask for better UI / UX in web applications.

In the past when someone talked about JavaScript, it was usually referred to as the textbox, with other UI validations existing to block users from entering or creating wrong things on or from the UI / UX. However, in recent years there has been a great change in the way people use JavaScript or jQuery (for those who don’t know, jQuery is a compiled library of JavaScript). Now we find that its usage is not just limited to validating UI, but it has moved towards building the whole web app in its entirety.

Now one can use JavaScript to do far cooler things than to just  use it in form validation. Enhancements in JavaScript/jQuery have changed the way web applications are being developed, and have thus played a great role in starting the trend of moving from multipage to single page applications. Thanks to frameworks like Backbone, AngularJS, Ember, and many others, it is now easy to develop such applications. In addition, Bootstrap.js has unleashed a wave of creativity for SPA where innovative and artistic functional templates are designed and given away free or for under $50. Yes, once you get the Bootstrap template, there is a lot of active JavaScript programming included which allows you to do the right thing for your SPA. Companies like Squarespace have made it their business by extracting the programming out of building sexy websites.

Benefits of SPA Usage

  • Growth in people using apps like Facebook, Twitter and Pinterest.
    People are used to seeing real-time updates and fast UX in web applications like Facebook, Twitter, and Pinterest, so it makes them expect to see the same interactive, fresh and fast experience in other enterprise apps.
  • A dislike of the manual refresh.
    People nowadays don’t want to have to manually refresh the whole webpage to get new data, instead they desire getting new data automatically through periodic auto refreshing. This doesn’t affect the UX, and means that the UI needs to be updated to reflect the same in real time.
  • Following the big names.
    Most of the consumer apps available on the internet are now using parts of SPA to access a better UX and faster performance times. Big names like Pinterest, Google (including Gmail and Google Docs) currently also use  the same model.
  • Faster and more responsive.
    Once the page has loaded, there is no navigation to other pages. The user is provided with different action items on the page itself and events are handled to update the page’s UI. This results in faster response times, as it requires less roundtrip time to the backend, a quicker response, and better overall performance and experience for the end user.
  • Similar feel to desktop applications.
    This characteristic makes the user feel as if he/she is using a desktop or mobile application since the transactions are on the same page and all data is updating and executing on the same page.
  • Good choice for administrative dashboard.
    SPA will eventually be a very good choice for use as an administrative dashboard, as it provides all of the required functionalities. It also provides real-time updates and is fast while providing a very good user experience.
  • Better user experience.
    To satisfy all of these needs using the old web structure was quite difficult and thus came the motivation to move towards widespread use of SPA, a JS based application which enables us to build a real-time, fast and interactive UX.

However, even with all of these benefits, there are still some disadvantages to using SPA:

  • Managing browsing history is difficult.
  • Requires a good level of programming skills to manage and handle SPA.
  • SEO of the SPA.
  • Dependency of old browsers – they still doesn’t support all of new JavaScript and CSS code.

There are workarounds available to overcome some of these disadvantages, but still they are not perfectly operational, or seem to very complex and unconventional in approach.

[See Also: Angular JS Directives for Product Development]

As a final note, the rise of widespread SPA usage doesn’t mean that old multi web page application usage has ceased entirely. This is simply an alternative approach in hopes that things are made better and easier to use. The questions remains: “Should we migrate to SPA?” There is no concrete answer to this as it completely depends on the needs of the user. As it stands, shifting content based websites is difficult, as the SEO stands as an important parameter. However, this is definitely the start of a revolution; once the major disadvantages such as history management and SEO are finally fixed this will become the only used strategy for web apps, and this will eventually replace old multipage web applications and heavy content based sites. How long it will take to do this is hard to say; however, users can begin to make parts of websites to be based on SPA, like admin dashboards, and in this way, we can start walking in the right direction.

Everything you need to know about outsourcing technology development
Access a special Introduction Package with everything you want to know about outsourcing your technology development. How should you evaluate a partner? What components of your solution that are suitable to be handed off to a partner? These answers and more below.

Introduction Package

Chief Executive Officer, Zymr, Inc.


Leave a Reply