Low-code blog | eSystems

The Next Generation of Low Code Web Apps

Written by Ana Agostinho | Jun 29, 2023 6:57:22 AM

As usual, time passes by and the need to build new and modern web features and applications arises. Nowadays, Reactive Web apps are the logical step for a client that desires to use OutSystems (OS). However, OS presented a new visual programming tool which promises to speed the development, called OutSystems Developer Cloud (ODC). 

 
Due to that, some questions came up and were raised: Which way of programming should be implemented by the client? Should an existing customer want to change their apps from Traditional to Reactive or ODC? What are the advantages and disadvantages of programming in Traditional, Reactive, or ODC?

Traditional Web versus Reactive Web

As soon as Reactive begins its magic, the differences and advantages rise to the surface: faster development, short time-to-market, superior user experiences, data-rich interfaces that adapt to changes in real-time, without the need for highly skilled front-end developers or a wide range of different code frameworks. 

 

Traditional Web 

Reactive Web 

Server-side logic and jQuery 

Server-side and client-side logic 

Synchronous data 

Asynchronous data fetching 

Explicit server-side rendering 

Reactive client-side rendering 

 

Technically speaking, there are some differences to be considered: 

  • No need for Ajax Refresh in Reactive since all UI elements in Reactive update immediately. The app automatically understands which widgets need to be updated when data changes. 
  • You can catch exceptions on both the client and server side using Reactive. 
  • On the client-side reactive interfaces, there isn't Preparation (which is a dedicated server-side action in Traditional that loads initial data for the Screen). 
  • Session Variables (a server-side feature in Traditional) used to store session information to be accessed across the app are now called Client Variables in Reactive. 

What are the improved practices using Reactive?

There are a lot of features that Reactive can offer, such as: 

  • Reactive apps prioritize front-end UI/UX best practices and emphasize client-side logic, allowing for reduced reliance on custom JavaScript. Instead, aim to leverage client actions as much as possible to replace custom JS code. 
  • Enhance data fetching efficiency on the client side by strategically configuring the data retrieval process within the aggregates. By setting the Aggregate Fetch property to either "At start" or "Only on demand," we can maximize flexibility in UI pattern design and significantly improve UI responsiveness. 
  • To optimize the number of dependencies in the environment where the apps are running, we can use libraries. Additionally, we can convert an existing module or reactive module into a library. 
  • Utilize client-side validation in reactive apps to promptly provide feedback to users regarding their submitted values. Client-side validation serves as a rapid feedback mechanism; however, it is crucial to implement server-side validation to guarantee the accuracy and integrity of the data stored in the database. 

What does the future hold in terms of low code?

ODC Studio is the OutSystems Developer Cloud’s low code visual development presented back in November 2022. This new visual programming tool promises to speed development because the infrastructure of both development platforms (for building and developing apps) and the independent runtime are live in the cloud.

Why may an existing customer want OS11 (Reactive) and/or ODC?

 

Why it matters? 

Why ODC over O11? 

High scale use case 

Many customers have use cases that have high levels or scale or unpredictable workloads. 

ODC architecture can scale to higher levels and can react much faster to scaling needs both predicted and unpredicted. 

Enterprise Architecture Innovation 

Cloud native is complex and building AppDev platforms on Kubernetes is really hard and expensive. 

ODC checks the boxes for Cloud Native Architecture and allows customers to start building apps in innovation while taking advantage of cloud-native benefits. 

Next-Gen Platform 

Customer wants to start experimenting with ODC and be part of the initial feedback group. 

The rate of innovation in ODC is much higher than O11. OutSystems investment in ODC nowadays is clear and many customers want their voice to be heard in shaping its future.  

 

In conclusion, it is important to recognize that both Reactive and ODC way of programming come with their set of advantages and disadvantages. The decision between the two should be carefully considered by the client, as there is no definitive perfect choice, only a better choice based on specific project requirements.  
 

For a more comprehensive understanding of how to smoothly transition from Reactive to ODC and prepare for the future, please refer to our previously published article: From OutSystems 11 to ODC. 

 


WRITTEN BY: Ana Agostinho  | OutSystems Developer