Two months ago, we made the claim that IoT needs a new programming language. That was not a light statement. It was backed by 3 years of heads-down innovation on a fundamental technology: TQL (Thing Query Language).
Next month, we will see TQLers’ submitting IoT projects from all over the globe for the TQLOne Competition.
Imagine learning a foreign language. Before you become proficient, you are invited to join a poetry contest, against the native speakers. What would happen?
In fact, your poem would win for its creativity, albeit with a few spelling errors!!
The power of a new language is a new way of thinking – it frees the mind from conventional frames and breaks the boundaries previously considered immutable.
With or without knowing it, you are creating things you would otherwise have not thought of in the old paradigm.
This is exactly what the TQLOne Competition is about – a contest for a differentkind of IoT projects – ones that re-define what an application can do. The old paradigm of sequential, synchronous and centralized programming will give way to the new world of parallel, asynchronous and distributed programming for IoT.
So how are the TQL IoT applications different?
Through this competition, we are expecting to see IoT applications that 1. “Touch the ground”; 2. “Free the people”; and 3. “Democratize the things”.
Touch the ground – from Cloud to Fog
Two years ago, we said in order to do IoT, you need to have your “head in the cloud, feet on the ground.” The difference between cloud-only applications and fog-enabled applications is whether your application touches the “ground”, ground being where all the real (physical world) actions are happening – a factory floor, for example.
Sadly, the default thinking of many IoT systems today is still to first send everything to the cloud. This is a high cost, multi-choking points, and low reward way of doing IoT.
Take the example of one of the projects to enter the competition – Smart Helmet. The helmet is a concrete thing on the factory floor. If your IoT application can run inside the helmet, then from sensors and devices it would be able to tell the technician what tools are around, how the nearby machines are doing, what hazard may be present, and which process must be started now. The collection of many smart helmets we would call “Fog”.
Now try to do this with the cloud-only approach:
You will run into these challenges:
1. High cost: the network/data burden of sending all the sensor and device data to the cloud is too high.
2. Multiple choking points: (1) network speed will be limiting; (2) program connections – unless your cloud application is a massive parallel program making a number of connections at the same time, it will be queuing the messages and causing delay; (3) data structuring and processing load will be too high.
3. Low return: given 1. and 2. your cloud application is sure to miss the “window-of-impact”.
Fortunately for TQLers, not much effort is needed to implement a fog-enabled application architecture. They simply install multiple instances of TQL Engines, some on Raspberry Pi’s or other single board computers, some on clouds, and let then run together.
Free the people – from Think to Do
IoT is not just about collecting and analyzing data. We have been trying to rely more on our computer’s ability to “think” than their ability to “do”.
All the TQL IoT projects to enter the competition are pushing the “do” factor. For example, the Smart Shower. It is not about monitoring, analyzing and charting your shower time on different days and reminding you to save water – too cerebral and you are guaranteed to not change behavior.
The application makes you save water by altering the water temperature and flow intelligently, so you have to take shorter showers.
It sounds masochistic, but hey, we need it in California….
IoT applications have to move from “think” to “do”. The industrial and enterprise world operates with people, machines, and processes.
If we only outsource the “thinking” to software, then the “doing” part will stay with the people.
People would become the foot soldiers who run around and execute commands given by the computers.
Let’s not worry about the AI, but there is an old Chinese saying, “Those who toil with their minds rule; those who toil with their labor are ruled.” We have to use a different kind of IoT applications to free the people, not enslave them.
Democratize the things – from Master-Slave to Peer-to-Peer
New TQLers are often curious about IoT projects with multiple instances of TQL Engines running on edges and clouds. Their question is “which is the master, which is the slave?”. The answer is, “they are by nature peers talking to each other, but with different roles.”
Democratization has more than just social benefits: bottom-up, peer-to-peer technology systems are much better at handling complexity than top-down systems.
For example, in the Smart Farm application, your will have multiple computing edges running on a farm, each connected to a different set of local sensors and actuators.
If I was the program running on one particular edge, I would ask two questions:
(1) Where do I get the source of truth? Locally or only centrally?
(2) Can I make any local, autonomous decisions, or only execute decisions given by the headquarter?
In a democratized IoT world, I would say, since I know my local temperature and soil moisture, I want to make decisions regarding my local irrigation, albeit consulting the central cloud.
Then I talk to my peer who is the program managing the pipes and valves and say, do you currently have some flow capacity? I want some water. He says yes, but only for 15 minutes, because others are also waiting.
It sounds like science fiction, but in fact not at all. This is what TQLers are doing today in their IoT projects. Their programming logic is parallel and distributed by nature of the programming language. A piece of code that represents device A (ThingModel) can directly “talk to” the piece of code that represents device B, either getting some information or making B do something. It’s a flat world of things!
Coming back to our poetry contest in a second language. This post is both for TQLers and for all IoT enthusiasts – the excitement of exploring is the greatest when you discard the shackles of having to do things the “old” way or the “right” way.
IoT is your new playing field, unbounded. TQL of course, gives you the wings to explore :)
This is the TQLOne Competition and we are ready to see disruptive implementations...