Progress isn’t always linear: sometimes you have to go backwards to go forward. Never is this more obvious than when an industry struggles with a problem. Recently, we enjoyed reading an interview with Buildkite CTO Keith Pitt and were particularly struck by his description of what he perceives as one of the biggest obstacles facing IoT:
“…developer tooling for IoT is lagging about ten years behind. There are fantastic tools for monitoring and testing web and mobile applications on the market today, but tooling for emerging areas like IoT/edge, 5G, and autonomous vehicles have yet to see the same boom.”
But is developer tooling for IoT really such a big issue? We asked our experts for their take.
“It’s obviously true that there are far more tools for testing and debugging mobile and web applications than for IoT. However, there are still standard tools and frameworks, which can be used during IoT software development and testing, there are just less of them.
But on top of that you have to test hardware features. So if, for instance, we have to measure the voltage in some certain points in a device because you know that if the voltage level reads as a certain value then the device has been soldered properly. If it’s not, then it means that something has gone wrong with the production. This is something you can’t really provide some sort of general solution for because hardware design is different for each company and for each product. Of course, you can carry out these tests manually, but this is not a scalable solution. So at the end of the day, you need to build tools, which will automate the testing process.
How time consuming is it to develop a testing tool for a piece of IoT hardware? It depends. Creating a testing tool from scratch for a relatively simple product might take a few weeks, but for a more complex device it could even take a few months. If your application is really simple and you just want to carry out general tests of course you can use a ready-made tool for testing and it will do it for you, but if you want to test your product well, then you also have to spend time preparing your “tools” to do so. All the same, I would argue this is all part and parcel of working in IoT.”
“I don’t really agree with Keith’s take — in my opinion, there are a crazy number of tools and platforms and systems to test out IoT solutions. Everyone knew that the IoT market would be huge and that there would be an enormous potential in terms of revenue for companies but nobody knew which specific IoT market would scale first. Would it be smart cities and would people need a lot of parking sensors and smart streetlights? Would it be the healthcare industry or railways or the hotel industry (who could benefit from smart locks)? Nobody had a definitive answer. Which led to a problem — companies decided that instead of specializing, they would build a horizontal platform that could serve the broadest possible amount of IoT use cases and devices. But this hasn’t been to the IoT industry’s benefit.
This works decently for a pilot phase. So for example, perhaps I work for the railway industry and I want to know what the temperature of each 10 meters of track has been in the last 15 minutes. It’s important for me to know this because if the temperature goes too high in the hot summers we have these days the copper of the railway will expand and trains will get stuck. Deutsche Bahn asks me to run a trial on this and I set up ten devices, one at the railway in Cologne, the second in Berlin, the third in Darmstadt and so on.
Now I need a platform to show Deutsche Bahn employees that my devices work and that we’re recording the temperatures every 15 minutes. I use Amazon Web Services IoT for this because it is quick, it is easy, they can log into the portal and see a very boring graph with temperature and maybe the name of the location — but that’s it.
This is fine for a pilot situation, but for a scalable situation, it is inadequate. For a commercial situation, the platform would need to show a map, maybe colors, perhaps the location coordinates, as well as a picture of the type of copper that we are using because there are different types that would need to be used. In a commercial context, we would need a dashboard that shows industry-specific information. AWS is never going to offer this because they are not aiming to become a specialized railway industry provider. So the problem we have today is a lot of horizontal generic IoT platforms but no industry specific platforms.
In my opinion, one solution would be government intervention to promote really specialized monitoring and testing tools, whether via grants or investment. This has worked in the Netherlands, where the government values water management for obvious reasons to do with climate change and flooding. Since they invest a lot of money into the sector, there are a lot of very specific and specialized water management tools and platforms for developers to use — as such, I’d argue this definitely works. Besides that, I think companies need to be bolder and have the guts to focus on one industry. In Dutch we have a saying: you have to admit your color.”
If you work in IoT, do you agree? Let us know your thoughts on inadequate developer tooling via email (firstname.lastname@example.org) or shoot us a tweet @hubraum.