William Vermeulen (made with Procreate)

AI Infused Development

William Vermeulen
3 min readDec 3, 2019

--

The dust has settled after the OutSystems NextStep event. There was so much to do, great keynotes, cool lab sessions and lots of fun & interesting talks. Enough food for thoughts and content to look forward to.

Just a quick summary for everyone who could not attend. It was an amazing event and apparently they needed and enormous screen to have the features nicely organised next to each other…

So one of those big features is the AI infused development, or call it the AI experience. Which basically means that during your development process you can call on the AI assistant.

The goal here is to help the pros focus more on what matters most and let beginners learn the ropes. In both cases your application development will benefit from this boost.

Another thing that makes this already the cherry on top is that it is already available if your have P11 installed. OutSystems is choosing the Agile approach by learning on the go, and have the community enjoy and contribute to this experience. So not only select few with special degrees. No, it’s for everyone who likes to build and create apps. Because we all can benefit from this.

Learning is key in the AI Experience, not only for the developer, but also for the AI itself. Using Deep Learning, patterns are being identified, analysed, compared and learned from. So every week the AI will become smarter.

HOW? Anonymised flow data

So it analyses most common used patterns. As a developer you learn them during University, training and through different projects. For an AI this happens on a massive scale, patterns will be anonymised because there is no need to know if data is around a Product or Customer.

HOW? X-Ray and code DNA

Just using data is not the only thing that enables the AI. With the so-called X-ray, the anonymised data is scanned using deep code analysis and normalisation. Dependencies are mapped (in a dependency map) and, with another component called Code DNA, it tries to learn generic patterns with Deep Learning models.

Let’s use this simple bootstrap action for illustration purposes.

  • Dependency: A check to know if there is a result set, the outcome of the check results in either a next action or ending the flow.
  • Pattern: Going iterative through a list and with the use of a local variable each item is used to create a record in the table.

The AI of OutSystems is using State-of-the-art Graph neural network algorithms, which can learn complex relationships, dependencies and patterns in non-linear data, such as OutSystems code.

Predicting the next node

The real power is in the assistant’s simplicity. Suggestions by the AI will not be more than 6. In some cases just 1 because of the confidence in the possible node. No possible other nodes for the sake of doing suggestions, just keep it simple.

So here’s a sneak peak showing you how the AI suggestions work.

Great stuff OutSystems and if I may; maybe give the “grab a coffee” node once in a while :)

There is already an OutSystems blog if you would like to learn more on this topic: Augmenting The Work of OutSystems Developers With AI-Assisted Development

--

--

William Vermeulen

OutSystems Solution Architect @ Product-League | I just like to be creative by drawing, writing or playing with lego :-) linkedin.com/in/wvermeulen/