Skip to content Skip to footer

Razones por las que decidí adoptar el Low-code

E

Por: Vera Tiago, Global Developer Advocacy Team Leader

“El low-code es una caja negra, y en algún momento me daré contra la pared. Es limitado y sólo funciona si sigues una plantilla. No es codificación en absoluto”. Estos eran algunos de mis pensamientos hace diez años, antes de decidirme a darle una oportunidad al low-code. Era muy escéptico, y decidí aprender más sobre él porque quería tener conversaciones informadas sobre el tema. He cambiado de opinión, y hoy soy un gran defensor del low-code.

Unos años más tarde, y pensando un poco más sobre este controvertido tema, me di cuenta de que muchas de estas objeciones al low-code se deben al hecho de que low-code significa muchas cosas para muchas personas. Muchas herramientas de “low-code” se dirigen a diferentes retos y requieren diferentes niveles de competencia técnica, como generadores de sitios web, creadores de formularios, conectores API, creadores de bases de datos, automatización de flujos de trabajo y mucho más.

Con herramientas como OutSystems es posible gestionar todo el ciclo de vida de desarrollo de aplicaciones, para aplicaciones empresariales en general – móviles o web. Como un orgulloso desarrollador profesional, decidí compartir las razones por las que adopté low-code, en particular, OutSystems:

1. Extensibilidad del código

Para alguien a quien siempre le ha gustado “tener el control”, al principio me costó cambiar de mentalidad para utilizar un lenguaje visual. Poder ampliarlo con mi propio código fue una de las cosas que me hizo seguir con él. OutSystems está abierto por diseño para permitir que todas las capas de las aplicaciones se amplíen con código “tradicional” personalizado: front-end, back-end, base de datos e integración.

También recuerdo haber creado una funcionalidad de carga de archivos con JavaScript sobre OutSystems sin darme cuenta de que podía simplemente arrastrar y soltar un widget y rellenar algunos parámetros para conseguir el mismo resultado. Esto me hizo darme cuenta de que pasar por ese proceso era importante para reconocer lo flexible que es OutSystems.

2. Fácil integración

Ningún producto de software existe en silos, y constantemente tenemos que integrarnos con bibliotecas de código abierto, API de terceros, almacenes de datos heredados y mucho más. Con cada integración viene un nuevo código para manejar los requisitos específicos de cada dependencia, y este código requiere mantenimiento cada vez que la dependencia cambia. OutSystems abstrae el trabajo de repetición proporcionando plantillas y conexiones listas para usar con servicios y bases de datos populares como Salesforce, SAP, Microsoft, etc. Y todos estos conectores listos para usar están diseñados para la reutilización, el mantenimiento y la facilidad de cambio.

3. Reducción del trabajo repetitivo

El desarrollo de software es una forma de expresión personal y puede ser increíblemente gratificante, sobre todo cuando se superan los obstáculos. No hay nada más emocionante que el momento “¡esto es obra mía!” El inconveniente es que el desarrollo de software es un trabajo manual y puede ser muy repetitivo. Esto agota nuestra energía y nos hace caer en una espiral de frustración. Así que, cuando empecé a explorar con OutSystems, me di cuenta de que la mayoría de las tareas de desarrollo obvias/estándar estaban siendo manejadas fuera de la caja: autenticación, autorización, validaciones de formularios, seguridad básica, manejo de errores, pantallas CRUD, etc. Y esto sucede porque, como plataforma, OutSystems es un lenguaje visual que abstrae otros lenguajes de forma similar a como Java o C# abstraen Assembler.

4. Lograr hacer las cosas

Gracias a la función de arrastrar y soltar del low-code y a su rápida capacidad de despliegue, los desarrolladores pueden crear no sólo un prototipo, sino una solución operativa en un abrir y cerrar de ojos. Al disponer de un prototipo rápido, los usuarios pueden dar su opinión de forma mucho más directa y nosotros, los desarrolladores, podemos convertir ese “prototipo” en el producto final con mayor rapidez, ajustándonos a las necesidades del usuario desde el principio. Esto cambia las reglas del juego y realmente influye en “lograr hacer las cosas”.

5. Front-End, Back-End e implantación en una sola plataforma

A menos que estés especializado en un área específica, ser desarrollador de software significa que eres un generalista y trabajas con diferentes herramientas, tecnologías y lenguajes de programación para manejar front-end, back-end y despliegue. Esto puede ser abrumador porque el mundo de las TI está en constante evolución y necesitamos aprender cosas nuevas todo el tiempo. Con OutSystems, confío en una única herramienta para construir la interfaz de usuario, las bases de datos relacionales, las estructuras de datos, la lógica y las integraciones que conectan con sistemas externos, todo ello de forma visual y con la flexibilidad de ir bajo el bosque cuando sea necesario.

6. Experiencia unificada en el desarrollo para distintas plataformas

El desarrollo de software es un mundo muy complejo y, además de lo mencionado anteriormente, los desarrolladores tienen que manejar múltiples plataformas: web, escritorio, híbrida, móvil, iOS, Android, etc. Así que, debido a la naturaleza centrada en la web de low-code y a las tecnologías móviles híbridas (la tecnología híbrida permite a los desarrolladores crear aplicaciones móviles nativas con HTML y JavaScript), low-code se encuentra en una posición única para generar aplicaciones de escritorio y móviles a partir de una única base de código.

7. Seguridad

La seguridad es una de las principales preocupaciones a la hora de crear software empresarial e implica mucho trabajo en distintos frentes. Cuando utilizaba herramientas de low-code, aprendí que cosas como el uso de bibliotecas y frameworks actualizados y seguros, el acceso seguro a bases de datos, el tratamiento de excepciones y errores, la autenticación y autorización, las técnicas de codificación y escape, la auditoría de aplicaciones y sistemas, se llevaban a cabo y se gestionaban a lo largo del proceso mediante mecanismos listos para usar.

8. Comunidad

Por último, pero no menos importante, confieso que cuando empecé, una parte de mí sentía que estaba traicionando la alianza de los desarrolladores, pero entonces, encontré la Comunidad OutSystems y fue cuando me di cuenta de que hay tantos desarrolladores profesionales como yo que dieron este paso. Aunque el número de desarrolladores que utilizan low-code crece año tras año, siguen siendo superados en número por los desarrolladores tradicionales. Por eso, las comunidades que se forman en torno a estas plataformas son naturalmente fuertes y solidarias.

Como nota final

Low-code no significa fácil, pero sí más rápido y eficaz. Todavía se necesitan profundos conocimientos técnicos para tener éxito en estas plataformas mientras se crean aplicaciones de nivel empresarial. Con el paso de los años, el low-code ha ido ganando adeptos y cada vez son más las empresas que conocen sus ventajas frente a las prácticas de codificación tradicionales. Permite mantener los elementos críticos de las soluciones de codificación tradicional, como la flexibilidad y la personalización, al tiempo que se ahorra una cantidad considerable de tiempo.