With 2020 fast approaching, it’s the time for coming up with the new trends. It’s good and refreshing to see all the different ideas and it gives me the inspiration to share my top five of topics I’ll be looking at in the coming year.
Integration of software and deployment
With the rise of DevOps, there is a big trend in automation. The implementation of everything as code, CI/CD, pipelines has become paramount, Gartner has even stated this is something you should be doing already.
The question is: are we done once everything deploys with a single button, or what do we need the next step? I think, with systems getting smaller and consisting of more and more components, managing these is as difficult as writing software in the past. Pipelines seem a very cumbersome way to keep track of all the intricacies of your landscape.
I think we will see more integration of development and deployment, where deployment is done on request, directly from code instead of already present on the platform. This will hold true for microservices, apps, agents, serverless functions and any other small system. Infrastructure will be dynamic as needed at one time instead of predefined. And most important, any update on your master branch will be used directly in production, making it easier to write software that can dynamically update itself, evolve.
My goal for next year is to explore the possibilities and difficulties with applying this in an environment.
UI-less frontends
As we go forward there is a trend of devices moving closer and closer to us. From the desktop to our hands, to wearables. Classic interfaces with screens and keyboards will not do in the next generation, forcing us to think different on interfaces. Two trends we’ve already been seeing which I think will combine to the next normal: the digital assistant and Augmented Reality (AR).
Now there are some considerations with using a Google Assistant or Alexa. Rather than having our best interest at heart, they provide a service which we pay with our data. And that’s fine up to a point, I’m using these services myself as well. However, to be truly independent there is a need for an open-source assistant, one that can be audited. Only then will it be able to fully focus on supporting us, like an English butler supported his landlord.
As for next year, I’ll be looking at how far we would be able to go with removing the visual interfaces when we put a digital assistant in charge, augmented with AR where needed.
Multi-agent systems
With frontend moving to digital assistants, we can’t expect them to be able to also do all tasks on the internet. Like the English butler with his house staff, I’d like to look at implementing a system where it is supported by an army of agents. These agents will use narrow AI to execute their tasks independently on the internet. This will mean:
- An agent must be able to ‘run’ on the internet. I’m looking at patching the V8 JavaScript engine to serve as a ‘vehicle’ for an agent in a system on the internet.
- To be able to find the necessary services on the internet, there will have to be a service discovery available as a catalog for each system on the internet, so agents know if it’s a relevant system to enter.
- Writing AI in JavaScript means also that libraries will have to be available to implement it.
Next year I’m looking at doing a reference implementation for agents executing typical office functions, replacing and improving existing office systems we have in place.
Authentication and authorization for AI systems
With the rise of AI in the coming year we will need different systems for IAA (Identification, Authentication, Authorization). In the classical world we would write our own business logic, leading to us knowing which other systems we would connect to. Previous generations of IAA systems (Kerberos / ldap / active directory and after that federated identity systems) required explicit trusts between these systems, and it matched.
In a world where AI replaces the business logic, there is no way to know which trusts are needed. We could keep them on a leash, but why restrict the system and go for the suboptimal solution to your problem? Rather, I think it will be necessary to delegate the trust to the IAA system itself. And we have this technology in Blockchain.
For next year I’d like to look more into the current implementations in Identity Management using blockchain technology, like Hyperledger Indy.
Studying Dutch for Portuguese
All these above are great for the coming year, but all will have to wait for a bit. Currently my girlfriend is studying Dutch, and the sooner she can pass the exam the sooner we will be able to be together. My primary focus the coming couple of weeks is to finish the app I’ve written for her, adding the last content and being ready for the exam.
And lastly…
If you enjoy, share. If you think I missed something, get in contact. And to everyone, have a great new year / decade!