As the human race continues its complicated relationship with technology, one thing is abundantly clear, the need for secure hyperconnectivity. Technology is being pushed to its limits to provide more convenience, personalization, or to save us time and money. It is being pushed to do more, and to do it faster and cheaper. How will technology keep up with our demands?
Any technology that we interface with today is a distributed system that involves many components that all need to collaborate and communicate. Every information system, every modern technology, is a distributed system. The way these systems communicate can be viewed in a straightforward manner: they are either making statements or asking questions. Every communication is either trying to let someone else know you did something, or you are asking a question for which you need an answer. Modern terms for these statements are streams and services. All modern distributed systems have service-oriented architecture components, and event stream processing has been rising in popularity.
So, as we continue to push technology forward, how does it need to respond? For systems to do more, they simply need more services and more events. These events and streams form flows of information that enter into the system to be analyzed for patterns, trends, and casualties. These new and expanded services give rise to new ways to interact with the technology, whether as a human or a digital system. For the system to act faster there are certainly areas of research to speed up the core backend systems, but in our modern world the majority of “faster” is just latency. How far away are you from the technology and can that technology move closer to you? This is what I term edge computing. There may be better definitions out there, but for me, edge computing is how technology continues to evolve to do things faster, and to do more. That is, getting closer to who asks the questions and being able to process more events and data without having to go to a central cloud resource.
To put this into perspective, I’ll draw an analogy to banking. Not too long ago you had to physically drive to a bank to interact with any of the bank services, like depositing a check or withdrawing cash. We did have an interim wave where ATMs were popping up all over the place to allow more access points. Now we simply pull out our phones, or tablets, or in the worse case scenario possibly our laptops, to interact with every banking service one could imagine. Waiting in a restaurant for 5–10 minutes to have the waiter bring the check and return it to us for signature may be ok, but imagine being on your mobile phone and waiting 10 minutes to check out from Amazon. Speed matters, access matters, and secure access matters even more.
As systems continue to need access to more information—to be able to process the information where it is relevant, and to move closer to where the system’s services are needed—it becomes clear that we need a new approach to connectivity. Not only do we need more things connected, we also need requesters, responders, processors, and analytics to be location transparent, mobile and secure. New technologies will emerge and give rise to a secure and hyperconnected world, not only for humans, but for all of the digital systems, services, and devices.
All of these factors create an environment ripe for massive, exponential innovation. Think for a moment about what we did with the internet and the global cellular networks, and the approximately five billion connected people. Now, imagine the possibilities when the world’s digital systems, services, and devices are always hyper-connected, location independent, secured, and can interact securely at any point in time. The experimentation phase goes into hyperdrive when secure access to diverse technologies, information and services has been democratized. When mixed with machine learning and artificial intelligence analyzing all of the events and data flows, the possibilities are endless.
Once this secure and hyper-connected future becomes reality, what is next? How do these systems make sense of additional information, and how do they evolve to interact? In this book James walks us through the basic concepts of FLOW, and what systems will need to do in order to take advantage of these new capabilities. Along the way you will begin to understand how FLOW affects and shapes modern distributed systems and ultimately our expectations of those systems and the technology they offer. We need a new approach to connecting, securing, and communicating within these modern systems, and this book is a great place to start understanding how these systems of the future will transform our world.