Mentre i leader aziendali esultano, i dipartimenti IT sogghignano - ma ecco perché i programmatori professionisti dovrebbero abbracciare lo sviluppo low-code.
Lo sviluppo di app a low-code è qui e non tutti ne sono felici.
Le aziende che sono passate rapidamente a lavorare in smart working hanno visto quanto fosse veloce e conveniente digitalizzare i loro semplici processi manuali con applicazioni low-code. Ma dietro le quinte, le cose non erano tutte brillanti e dorate.
Mentre gli utenti aziendali esultavano per l'ascesa del low-code, le lamentele dei dipartimenti IT e dei loro ingegneri full-stack (che chiameremo "pro coders" per questo articolo) facevano tremare i muri.
Le preoccupazioni
- Troppo semplice. Per gli ingegneri full-stack che possono fare qualsiasi cosa con uno e zero, un'interfaccia grafica è la gabbia per uccelli che impedisce loro di librarsi nei cieli.
- Mancanza di una normale pipeline di sviluppo del software. Prendete un'applicazione e chiedete a due sviluppatori di lavorarci sopra. Quando un coder professionista fa qualcosa che va in conflitto con un altro coder professionista, ci sono processi ben definiti e provati per risolvere questi conflitti di fusione. Alcune piattaforme di app low-code non hanno un processo per risolvere questi conflitti - spesso accettano automaticamente la versione più recente.
- Non abbastanza scalabile. Gli sviluppatori esperti passano anni a sviluppare l'esperienza per creare scalabilità in un'applicazione - e ora ci viene chiesto di fidarci della scalabilità di una piattaforma low-code? "Questo funziona benissimo nella tua demo che descrive un processo in due fasi che beneficerà i dieci utenti che lo usano, ma cosa succede se diecimila utenti lo usano allo stesso tempo?" Ho partecipato a abbastanza demo di app low-code su Zoom per vedere questo tipo di domande inondare la chat.
Il problema reale
Queste sono preoccupazioni valide e problemi reali. Ma sono problemi reali solo a causa della mancanza di processo.
Lo sviluppo di app low-code non è la pallottola d'argento che segna la fine dell'ingegneria full-stack e dell'IT tradizionale, ma può essere il nuovo strumento scintillante che vuoi che tutti usino. Prima di utilizzare una piattaforma di app low-code, è necessario conoscere i suoi limiti e i migliori scenari di utilizzo. Negare l'utilità di queste piattaforme low-code perché sono troppo semplici o non possono fare tutto è ammettere apertamente di non aver letto la documentazione.
Strumenti low-code come l'App Engine di ServiceNow possono potenzialmente far girare un database con un modulo di raccolta che invia automaticamente richieste di approvazione e compiti di azione, il tutto in una frazione del tempo che ci vorrebbe per un ingegnere full-stack per fare da zero. Si potrebbero aggiungere più funzionalità a questo se fatto da zero? Assolutamente sì. Alla fine, sta a voi determinare quale soluzione dovrebbe essere utilizzata, tenendo conto del livello di sforzo, delle risorse disponibili e della tempistica.
I vantaggi del low-code per i professionisti
- Sviluppo più veloce. Ci sono blocchi di costruzione nello sviluppo tradizionale di app con cui tutti hanno a che fare. Cose come i database (liste e moduli con query SQL) e interfacce front-end (siti web, motori di segnalazione e notifiche). Se una piattaforma di app low code fa queste cose per voi nel modo che volete (o anche se fa solo il 90% di quello che volete, ma lo fa nove volte più velocemente e voi fate l'ultimo 10% manualmente), allora questi blocchi non sono più un vostro problema. Ora potete concentrarvi su progetti più interessanti, specializzati e innovativi.
- Più delega. L'ascesa del citizen development è correlata, non a caso, all'ascesa del low-code. Quando lavoravo per l'Università della California, il mio team aveva spesso un arretrato di richieste per nuove app e funzionalità che, se avessimo detto di sì a tutto, ci sarebbero voluti mesi (o anni) per farle - in cima alle operazioni di manutenzione in corso. Mentre ci dava il vantaggio di dimostrare che avevamo bisogno di più risorse, non alleviava il fatto che i clienti si lamentavano delle nostre tempistiche lente. Lo sviluppo di app low-code significava che potevamo addestrare i non sviluppatori a soddisfare le loro richieste di app e funzionalità. Più fornivamo agli altri (con la piattaforma, la formazione, i migliori casi d'uso, ecc.), più facile diventava per noi lavorare su tutto il resto.
- Onboarding più veloce. Lavorando in un'università, ho assunto studenti sviluppatori per lavorare su queste piattaforme low-code. Uno dei miei studenti sviluppatori è stato addestrato a utilizzare per primo le soluzioni di app low-code e, entro una settimana dall'inserimento della sua coorte, stavamo rilasciando al campus app create interamente da nuovi studenti sviluppatori. Le app low-code forniscono agli sviluppatori le competenze che permettono loro di partire subito e di avere una base su cui costruire. Secondo lo stesso studente sviluppatore, "queste abilità mi hanno portato a diventare uno sviluppatore junior dopo il college, e uno sviluppatore di prodotti per una società partner".