How is DevicePilot different?

(from other applications which people might try to use for visualising and managing IoT devices)

DevicePilot is an application for visualising and managing IoT devices. What are the alternatives and how is DevicePilot different? Broadly, there are two categories of application that people - not unreasonably - think might be able to do the same job.

1. Business Intelligence (BI) tools e.g. Tableau, Qlik, Power BI

These interactive web tools connect to cloud databases and make it possible to set up arbitrary business questions ("how many widgets did I sell last month, by region?") and turn the results into charts. What these tools have in common with DevicePilot is that normal businesspeople can use them, they allow exploration of data (arbitrary questions) and they produce good-looking results.

Unfortunately for IoT applications BI tools are unable to answer even the most basic Operational questions about IoT devices e.g. "what was the up-time of my device estate over the last week?". This is partly because IoT data is streaming data, and lots of it, and partly because this kind of question just cannot handled by these tools (if they can handle time-series at all, they can only do very basic measurements on it, e.g. find the average temperature across all devices).

2. DIY using ELK (Kibana), Spark, Grafana, New Relic, nagios etc.

A developer seeking to build something like DevicePilot from scratch might look to these tool-chains which were largely developed for server-monitoring to mine the stream of textual logs which servers produce. These are really "tool-sets" not finished applications, and it is necessary to configure them before they are useful, and in the case of IoT it is necessary to write a lot of front-end code to translate incoming data into a form they can process, and also to pre-process the data down to a volume they can handle. There are two big problems with this: a) the amount of developer time required up-front to do that and b) the amount of developer time ongoing to handle the rising number of requests from everyone else in the company to make the tool do X, Y & Z. Time the developer should be spending developing your core product. Keeping a developer inherently "in-the-loop" is very disenfranchising for everyone else in the company - we have many tales of people driven almost to tears by having to beg developers to make even small changes on a regular basis.

Conclusion

Is it impossible to use these approaches for IoT visualisation and management? Clearly not - in software anything is possible! You can use a spreadsheet for customer support, you can use Google Docs to manage your billing. But you really shouldn't. Clearly using the right tool for the job delivers enormous benefits in productivity, business growth and the happiness of your customers and your team.

See here for some more detailed numbers comparing DevicePilot with the DIY approach.