Real Time Application Development
Many business intelligence deployments are of limited use, because they are often viewed after a situation of interest has occured. This is sometimes described as “Congratulations, You Failed” – telling you what went wrong after the fact.
It is much more valuable to push real time operational insights and business intelligence into the hands of your employees, through real time operational dashboards or through web and mobile applications which they can use as part of their day to activities.
In many cases, there will be the business value to rapidly develop a bespoke application to empower your users and employees. These application should be engaging and highly real time to give your people the current operational state and the guide them on their next best action.
This is particularly relevant for employees who are in the field or travelling between sites and would benefit from up to the minute analytical information.
Our Approach To Real Time Applications
Though we are technology agnostic in how we build and deploy applications, we do have a few preferences.
For our more tactical solutions where we just want to provide real time analytics to a user, we could turn towards a simple dashboarding application such as Tableau, perhaps exposed over a mobile device.
For areas where we need more interactivity, we like to develop application using Dash by Plotly to rapidly build and deploy interactive analytical applications into the hands of users.
For the best results and most complex user experiences, our preference is to use React, a development framework which makes it painless to create highly interactive and real time user interfaces in a web browser.
React works by efficiently updating and render just the right components when your data changes, making code more predictable and easier to debug and allowing you to build beautiful, incredibly interactive analytical frontends.
React Native extends this idea to mobile devices, allowing you to build these applications in React, and then translate to a native mobile experience on IOS or Android.