Science fiction writers like to talk about parallel worlds. The idea that there may some replicate planet out there with a carbon copy version of everything down here on Earth, including a copy of you and me.
Software engineers also like to talk about parallelism.
In technology circles, parallelism is also often called concurrency. It is the computing construct that allows a microprocessor to drive two (or more) separate processes at the same time.
Being able to engineer two different parts of an application’s code (or indeed two different applications) to execute at once is known as ‘threading’ — which in and of itself is a nicely descriptive term that denotes vertical distinct threads of an app’s jobs running side by side.
Parallel concurrency made easy
When you type using Microsoft Word, Google Docs, LibreOffice or other, the app is capable of converting your keystrokes into words. At the same time — and running in parallel — any misspellings are automatically highlighted in the user interface because the spellcheck system is working. That’s parallelism in action.
We can also see a huge amount of decoupling happening across the wider transepts of the IT industry. The use of ‘containers’ in cloud computing application development has allowed software engineers to create a new class of technology where discrete elements of application logic are contained (hence the term) in locations that sit apart from each other.
In a technology universe where an increasing number of web services are connected together through the use of Application Programming Interfaces (APIs), it’s little wonder that we talk about the need to ‘weave’ all these elements together into a ‘technology fabric’.
But could there be another type of parallelism we need to think about… one that stems from the way people are reacting to modern life and contemporary information systems?
We know that the generation gap will always exist. We know that many countries around the planet including the USA and the UK suffer from an urban-rural divide that drives inequality and disharmony (there’s obviously no need to mention Brexit here, but we just did). Further, we know that people are decoupling themselves from their previous corporate existences and becoming increasingly freelance in the so-called gig economy.
Social commentators have even suggested that humans are diving deeper into their own universes and decoupling themselves from one another in favor of new tribal structures. This fragmentation presents a big task for companies, both internally and in how they define their target groups.
“Our reality is increasingly defined by digital products and technologies, which gives us more freedom than ever before. Our analogue and digital lives have long since merged – not into a single world, but rather into many different ones,” says Matthias Schrader, CEO of SinnerSchrader and managing director of Accenture Interactive DACH. “These realities coexist, sometimes outside of our perception. In the best case, we can choose the one that we find most promising.”
“Parallel worlds can now be found in almost every company with an established digital strategy. Innovation departments and digital hubs are building the future with new culture and flexible rules – at the same time the previous identity and product world of the company earns money,” says Volker Martens, CEO of Factor 3. “The management of these internal parallel worlds is an essential part of successful corporate management.”
Schrader and Martens made their comments in line with their involvement with Next, a digital transformation conference held in Hamburg as part of the city’s Reeperbahn Festival.
Is orchestration the answer?
Ask a technologist how to handle increasing instances of parallelism and she, he or they would probably point to orchestration tools. A whole subset of technology vendors now exists that have devoted themselves to building orchestration platforms that can bring disparate computing resources together into harmony.
Orchestration in IT circles has become synonymous with so-called ‘cloud infrastructure automation’ tools i.e. technology that works to bring computing clouds together into (hopefully) beautiful formations. Top names in this space include Kubernetes, originally designed by Google but now open sourced for all… along with other names including Puppet, Chef, Ansible (which was acquired by Red Hat… which was acquired by IBM) and others that more often get referred to as DevOps technologies including Git and Jenkins.
“Our applications are becoming more and more distributed across multi-cloud environments. This trend requires that we leverage technologies and platforms that are designed to be flexible and capable of integrating with other tools via ‘connecting technologies’ such as Application Programming Interfaces (APIs),” said Ashish Shah, VP of product management at multi-cloud application services company Avi Networks. “IT departments are rearchitecting their monolithic applications into microservices and transforming siloed infrastructure into a consistent ‘services fabric’ that spans multiple clouds and datacenters. Orchestration and automation are no longer edge case functions in the new era of parallelism — these functions are now required and live at the very core of the IT business.”
Comments made in relation to the aforementioned Next event remind us that we tend to forget that life isn’t confined to Silicon Valley. We need to take an open look at what technology is growing fast in China, India, parts of the Middle East and selected African countries. A whole lot more orchestrated parallelism could be on the way.
Whether any of the major software orchestration platforms players have thought about human and/or business fragmentation and the need for us to be able to apply controls that bring our increasingly decoupled world together is another question.