Los sistemas low-code/no-code (LC/NC), que generalmente son editores visuales tipo drag and drop (arrastrar y soltar), han crecido en los últimos años. Estos servicios benefician tanto a las personas que no saben programación como a los desarrolladores. Comúnmente se lo llama programar sin escribir código.
Desde herramientas como SitioSimple, que permite crear una página web de cero sin tocar una sola línea, hasta plugins que combinan el código y el diagramado visual, como Elementor y Divi para WordPress, este tipo de herramientas proliferan y ayudan a acelerar el trabajo de desarrollo, no sólo para sitios web, sino también en aplicaciones móviles, programas de escritorio, etc.
La programación no es solamente conocer un lenguaje. Son lógicas, procedimientos, y, fundamentalmente, solucionar problemas (normalmente convirtiéndolos en problemas más pequeños). Como plantea Chris Wanstrath, el CEO de GitHub, «la programación no va de escribir, sino de pensar». Los editores low-code (bajo o poco código) y no-code (sin código) hacen justamente esto.
¿Por qué usar una herramienta Low-Code o No-Code?
Estas herramientas permiten que personas con bajos o nulos conocimientos de programación puedan hacer desarrollos. Además ayudan a desarrolladores a completar una aplicación, sitio web, o un prototipo funcional en pocos días. Así, su ventaja principal es la velocidad.
Los prototipos brindan a los desarrolladores la posibilidad de mostrar a sus clientes un boceto sin invertir semanas programándolo. Con sólo arrastrar bloques se puede completar un prototipo funcional del proyecto. Luego, por supuesto, será necesario refinarlo, y ahí sí entrará en juego la programación.
Las plataformas low-code/no-code son una gran forma de construir rápidamente desarrollos que se necesitan «para ayer», o para proyectos temporales, en los que no se desea invertir demasiado tiempo ni dinero. Este tipo de herramientas pueden ser aprovechadas tanto por organizaciones como por individuos, para hacer pruebas de conceptos o generar aplicaciones pequeñas.
Cuando una organización necesitaba un programa o aplicación específica para sus necesidades, en general podía optar por dos opciones: construirlo de manera especializada, lo que en general lleva mucho tiempo y una gran inversión monetaria; o comprar un programa «empaquetado», que, si bien es más barato y rápido, probablemente no podría satisfacer todas las necesidades de la organización. Las aplicaciones Low Code y No Code pueden proveer una solución que se adecúe a los requisitos, se pueden implementar rápidamente y generalmente cuestan menos que sistemas desarrollados internamente o de manera tercerizada.
Programar sin escribir código, no es solo para sitios web
Si bien existen muchas herramientas Low-Code/No-Code para sitios web, existen herramientas para todo tipo de desarrollo. Este tipo de plataformas está revolucionando muchas áreas que no son tan visibles.
La automatización es el principal campo que está aprovechando la tecnología LC/NC. Desde herramientas como IFTTT o Zapier, que permiten programar tareas a partir de diversos disparadores (triggers), simplemente arrastrando y soltando, hasta chatbots como LiveChatInc, que automatizan la comunicación directa con clientes. Las herramientas LC/NC permiten armar pequeños bots que aceleran los procesos de trabajo de las organizaciones, disminuyen los tiempos de respuesta, y ayudan a tener empresas más eficientes.
El márketing también se beneficia por esta tecnología. Tal vez el ejemplo más visible sea el de herramientas de email marketing como EnvíaloSimple, en la que se pueden construir mensajes de correo electrónico masivos con editores visuales, sin tocar el HTML.
Por otro lado tenemos algunos headless CMS como Strapi que ayuda a construir estructuras de datos, APIs y aplicaciones o Directus, con el que se pueden convertir bases de datos SQL en APIs y apps. Todo con interfaces intuitivas y sencillas, que permiten gran personalización. Además, ambas plataformas son open source, y permiten integración con diversos frameworks y programas, sin quedar atados a una empresa.
Desventajas de los desarrollos Low Code y No Code
Este tipo de herramientas y plataformas también pueden traer problemas a las organizaciones. Algunas de las plataformas que permiten desarrollar aplicaciones LC/NC no proveen opciones de personalización adecuadas. Muchas veces su capacidad de integrarse con otro software es limitada. En general, las aplicaciones creadas con esta tecnología tendrán baja escalabilidad, o no podrán adaptarse a necesidades futuras.
En algunas ocasiones, la organización quedará atada al proveedor de la plataforma en la que se crearon las aplicaciones. Esto no siempre es así, ya que algunas herramientas brindan un paquete de código abierto en el que se podrá trabajar, sin depender de la plataforma. Por esto es importante ver los términos y condiciones de la herramienta a utilizar, y buscar la que mejor se adapte a las necesidades de la organización.
También existen riesgos de seguridad, ya que en ocasiones no tendremos acceso al código fuente. De este modo los datos de nuestra organización pueden llegar a quedar expuestos.
En algunos casos estas herramientas tienen problemas con la velocidad, como ocurre con Elementor. Los sitios web desarrollados con este plugin deben optimizarse para correr a velocidades aceptables y no tener problemas.
¿Me sirve usar herramientas low-code/no-code?
Las herramientas low-code/no-code democratizan la posibilidad de crear sistemas lógicos, aplicaciones y webs. Son especialmente útiles para proyectos pequeños, temporales o que se necesitan rápidamente.
Los programadores siguen siendo fundamentales: serán necesarios, como mínimo, para desarrollar las herramientas low-code/no-code. Obviamente, también trabajarán en proyectos grandes, que requieran escalabilidad o que puedan necesitar modificaciones en el futuro. Pero desde hace tiempo, estas plataformas vienen revolucionando la forma en que se producen aplicaciones y sitios web. Si nos ponemos finos, algunos CMS como WordPress o Joomla pueden considerarse low-code, y se usan desde hace décadas. En campos como la Automatización Robótica de Procesos, chatbots, herramientas de márketing, el LC/NC tiene un crecimiento enorme, y sólo puede esperarse que otros campos también las integren cada vez más.
Dependiendo de las necesidades de la organización, o de cada proyecto, las herramientas de bajo código, o sin código, pueden ser una gran opción.
A continuación, un video explicativo mostrando como hacer una API sin escribir código