El código bajo y sin código pueden ser parte de una solución en la nube exitosa, pero necesita los mecanismos de protección adecuados para protegerse contra errores involuntarios.
por David Linthicum
Si tengo una pregunta últimamente, es sobre el uso de plataformas de código bajo y sin código como parte de una solución en la nube, generalmente para el desarrollo rápido de aplicaciones. Aquí está mi intento de poner esto en perspectiva para todos los que están construyendo soluciones en la nube o considerando plataformas de código bajo y sin código, dentro y fuera de las nubes públicas.
Primero, ¿qué diablos es?
Martin Heller tiene una de las explicaciones más lógicas de los conceptos y plataformas que soportan. No puedo mejorar su artículo, así que en sus palabras:
“En general, una plataforma de desarrollo de código bajo ofrece un diseñador de arrastrar y soltar, módulos, formularios, procesos, flujos de trabajo, modelos de datos, integraciones y uno o más lenguajes de programación que puede usar dentro del producto. La plataforma de desarrollo puede emitir una especificación que un motor puede usar para crear una aplicación o emitir una aplicación ejecutable. La aplicación puede o no interactuar con el back-end de la plataforma”.
La idea es eliminar toda la programación que puedas, pero no del todo. Esto significa que los desarrolladores pueden crear soluciones rápidamente, pero aún pueden codificar alrededor de cualquier limitación que tenga la plataforma de código bajo. Por ejemplo, construir un monitor de proceso de inventario utilizando una plataforma de código bajo o sin código significa aprovechar su interfaz (arrastrar y soltar) en lugar de la codificación tradicional.
Sin embargo, como habrás adivinado, las interfaces gráficas que te permiten programar dibujando diagramas eventualmente se toparán con algo que no pueden hacer. Es posible que tenga que desplegar alguna codificación nativa para acceder a una API compleja para obtener datos de estado dentro de la aplicación de código bajo.
En otras palabras, podemos hacer la mayor parte del camino sin código de programación. Sin embargo, es probable que se necesite algo de programación en la mayoría de los casos, ya que este es el mundo real y todo.
El desarrollo sin código es un desarrollo de código bajo sin un lenguaje de programación incorporado. Parece que sería más liberador ya que ya no debemos lidiar con errores de compilación y sintaxis. ¿Derecha? Realmente no.
Las plataformas sin código, como describe Heller, son fáciles de usar para aplicaciones simples, pero tienden a alcanzar límites que paralizan a los “desarrolladores” sin código. Al igual que el ejemplo de código bajo anterior, cuando debemos hacer algo en el sistema operativo o en los niveles nativos de la nube, no hay una manera fácil sin algún tipo de motor de programación.
Las plataformas sin código intentan resolver esto ofreciendo más módulos para acceder a la funcionalidad necesaria sin codificación, por ejemplo, un módulo personalizado para obtener la hora y la temperatura correctas para una ciudad específica cuando se le envía un código postal. La mayoría incluso proporciona SDK para crear sus propios módulos para la plataforma sin código. Sin embargo, eso requiere codificación, ¿no?
No estoy seguro de ver nada que cambie el juego aquí, pero entiendo por qué algunas empresas encontrarán útil el desarrollo de código bajo y sin código. Como alguien que no codifica con tanta frecuencia pero que aún desea tener la capacidad de crear aplicaciones pequeñas y útiles, veo la utilidad de una herramienta que requiere poca o ninguna codificación para las pocas veces que necesito programar.
Las plataformas sin código y de código bajo tienen buenos puntos, especialmente para los casos de uso en los que aquellos que no tienen habilidades de codificación quieren crear soluciones simples por sí mismos sin tener que depender de los desarrolladores. Creo que esto es algo que necesitamos hoy. Existe un movimiento creciente para democratizar el desarrollo de soluciones, dentro y fuera de las plataformas en la nube.
Lo que me asusta sobre el uso de plataformas low-code es que las empresas no establecerán la gobernanza adecuada, las restricciones de acceso a los recursos y las limitaciones de seguridad para proteger los recursos a los que estas plataformas low-code/no-code necesitarán acceder, como como bases de datos, almacenamiento, cómputo e interfaces de aplicaciones.
Sospecho que veremos configuraciones de acceso estropeadas de tal manera que los datos se eliminarán, sobrescribirán o comprometerán sin darse cuenta. No porque quienes aprovecharon estas soluciones de código bajo y sin código tuvieran malas intenciones, simplemente no sabían nada mejor.
En el pasado, podíamos confiar un poco en el conocimiento de los desarrolladores para evitar problemas si las capas de seguridad y gobernanza estaban mal configuradas. En el caso de permitir que cualquier persona acceda a estos recursos con privilegios mal configurados, todas las apuestas están canceladas. Van a encontrar una manera de estropear las cosas, pero no es su culpa, ya que les dimos la capacidad de hacerlo sin usar código.
El punto no es hacer retroceder las plataformas low-code y no-code; tienen su lugar. Solo estoy afirmando que necesitan una infraestructura a prueba de balas, datos, gobernanza de procesos y un sistema de seguridad que comprenda que las masas ahora tendrán acceso.
Asegurándose de que este es el caso, ya está todo listo. Sin embargo, veo que muchos todavía carecen de la previsión adecuada en términos de manejo de los derechos de acceso. Vas a tener que arreglar eso primero antes de ir a código bajo o sin código. Solo digo.
Fuente: https://www.infoworld.com/article/3650475/the-lowdown-on-low-code-and-no-code-in-the-cloud.html