Discussione No-Code Platform: Come creare app senza essere un developer

Kode

Utente Emerald
10 Dicembre 2013
1,226
81
371
623
nocode_1.jpg


No-Code Platform, cosa sono?
Le No-Code Platform sono degli strumenti dedicati alla creazione di app, siti e applicazioni web senza l'utilizzo di codice tecnico. Questo ha portato ad una vera e propria alternativa al web developing da parte di utenti o aziende che non hanno le conoscenze informatiche necessarie per poter crearsi un sito web da 0 senza l'ausilio di un developer professionista.

Se sei una piccola azienda che non ha un budget necessario per poter acquistare dei servizi da web developer o da intere software house, le piattaforme no-code sono una delle più valide alternative che hai.

Usare una piattaforma no-code ti permette di risparmiare tempo e soldi. Molte di queste piattaforme riescono anche a fornire all'utente medio un set di corsi per l'utilizzo dei propri tool, cosi da poterne ottimizzare l'utilizzo con il minimo sforzo.

Altre piattaforme di questo genere hanno anche la capacità di poter integrare un workflow capace di gestire le tue applicazioni sotto un punto di vista logico, andandone a definire persistenza, gestione della logica di business, gestione della presentazione dei contenuti e tanto altro ancora.

Inoltre, è possibile integrare in maniera diretta e semplice anche API esterne come Google Maps, Paypal, Postepay e tanto altro ancora! Questo fa si che piattaforme e-commerce diventino accessibili anche a persone che non hanno conoscenze tecniche per implementarne una.

Come funzionano le piattaforme no-code?

Se esistono piattaforme che riescono a creare applicazioni web con tanta facilità, a cosa serve allora il web developing?

Quando si crea un'applicazione no-code, quello che si va a fare è, ironicamente, programmare. Mi spiego meglio, gli elementi che si aggiungono e gestiscono dentro tali piattaforme hanno alla base del codice riutilizzabile e scalabile su ogni tipo di piattaforma. Quindi ciò che si va a fare quando si annidano più componenti su una pagina web creata tramite un tool no-code è quello di aggiungere del codice ad una pagina web.
Quando andiamo a definire la logica di business a tali pagine, quello che realmente succede è l'aggiunta di funzioni o procedure pre-compilate e ad-hoc per quelle funzionalità che vengono inserite all'interno della tua applicazione in risposta al click di un bottone, l'inserimento di dati e altri modi di interagire con il sistema.

Ovviamente tutto ciò è invisibile all'utente finale che sta utilizzando il tool, egli visualizza solamente un interfaccia in cui dover immettere dei contenuti, immagini, forme e, infine, definire un workflow in seguito alla generazione di un evento per alcune delle componenti inserite.

Quindi vediamo che molto spesso non si utilizzano piattaforme no-code solamente per una caratteristica legata al front-end ma per tutti gli strati di una vera e propria applicazione.

Pro e contro
Nessun sviluppo di codice è allettante, spesso può risultare noioso, difficile e pieno di problemi. Inoltre perché mai dovrei spendere soldi per un web developer professionista che potrebbe crearmi la mia app in 1 mese quando ho degli strumenti gratuiti (o versioni a pagamento, dipende da quale no-code platform scegliete) che riescono a realizzare il mio progetto in molto meno tempo?

Vediamo ora quali sono le motivazioni, i pro e i contro nell'utilizzo delle piattaforme no-code e come esse non risultano sempre una valida alternativa al codice.
Pro:

Miglior flessibilità: Dato che le interfacce sono costruite tramite un processo di drag-and-drop si ha un posizionamento ottimale di componenti predefinite con il minimo sforzo e con tempi relativamente veloci. Anche il test su tali componenti, sulle view dei vari dispositivi è automatizzato, cosi da garantire l'affidabilità di ciò che si visualizza.

Costi ridotti: Comprare i servizi offerti da developer freelancer o da aziende specializzate nel settore è molto costoso. La soluzione no-code raggira questo problema. I costi si possono limitare a corsi di aggiornamento per l'integrazione di servizi in modo da tener sempre la propria applicazione web aggiornata anche se non si ha dimestichezza con il codice.

Produttività incrementata: Quando un azienda può costruire velocemente le proprie app, il personale IT ha molto meno lavoro su questo fronte, quindi è possibile concentrarsi su altri aspetti tecnologici aumentando di seguito la produttività del settore.

Dinamicità: Quando si ha una codifica manuale, uno dei più grandi problemi non è la creazione di un'applicazione ma il suo aggiornamento. Molti developer hanno l'abitudine di non commentare, di scrivere codice non leggibile e soprattutto, nei casi più complessi, si affianca al codice pagine e pagine di documentazione in modo da ottenere un manuale di orientamento nel mare di codice che vuole aggiornare. Altre circostante sono le dipendenze che, se non rispettate durante l'aggiornamento, possono portare a delle incompatibilità nelle funzionalità di un'app, malfunzionamenti generali e bug di sistema.

Contro:

Chiara comprensione delle esigenze dell'applicazione: Quando un utente utilizza un servizio no-code, ciò che va a fare è gestire le funzionalità direttamente senza l'ausilio di un vero esperto. Questo perché il developer ragiona in un determinato modo che non tutti sono capaci di replicare. Le attitudini al problem solving riescono a prevedere possibili problemi logici o di design in maniera pro-attiva. Quindi potrebbe capitare che un utente medio sia capace di creare un'app, ma il risultato finale potrebbe essere migliorato se si comprendono a pieno le esigenze che si vogliono soddisfare.

Template rigido: Come abbiamo accennato prima, le componenti sono pre-configurate. Ogni elemento che andiamo a definire all'interno della nostra interfaccia è stato utilizzato da altre piattaforme, ciò potrebbe creare una staticità di design che minimizza quell'aspetto di curiosità da parte dell'utilizzatore del sistema dato che egli stesso ha visto quelle componenti in altre mille siti che ha visitato.

Mancanza di controllo e problemi di sicurezza: Le piattaforme no-code hanno come scopo principale quello di realizzare nella maniera più semplice possibili applicazioni. Tali applicazioni, però, possono gestire dati sensibili come codici bancari, indirizzi privati e simili. Questi strumenti non permettono di definire un metodo proprio di gestione di tali dati e, senza averne il controllo, anche la loro sicurezza potrebbe essere labile.

Il codice non è tuo: Se si decide di creare inizialmente una propria app tramite strumenti no-code e, successivamente, abbandonarli per tornare all'implementazione con codice puro, tale decisione sarà impossibile. Questo perché anche se molte piattaforme mettono a disposizione il sorgente online (ad esempio tramite hosting su GitLab), quello che si otterrà sono migliaia e migliaia di righe di codice in cui non si ha una documentazione affidabile a cui si può fare riferimento.

nocode_2.png

Lista delle maggiori piattaforme no-code

Opinioni finali
Sono stato freelancer per alcuni anni, ho sviluppato piattaforme web, e-commerce, infrastrutture cloud, blockchain e molto altro ancora. Non immaginerei mai che un tool pre-compilato possa sostituire il lavoro che c'è dietro a sistemi complessi e professionali. D'altra parte, l'uso di questi strumenti ha dato l'accessibilità a tutti per la creazione di siti web personali, semplici blog o varie app che, prima degli ultimi anni, erano solamente un sogno per gli utenti medi. Inoltre, il fatto che molte piattaforme no-code diano gratis i loro servizi, rende a tutti l'accessibilità al web e alla gestione dei suoi contenuti. In altre parole, consiglio i tool no-code solamente a chi vuole realizzare app o siti web semplici (dinamici o statici), mentre lasciare ai professionisti l'implementazione di piattaforme più complesse.

Raccontaci la tua!

Siamo curiosi di sapere anche la tua opinione a riguardo!
Cosa ne pensi dell'avvento delle piattaforme no-code?
Quali cambiamenti porteranno nel mondo dei freelancer?
Credi che sia una cosa positiva rendere il mondo del developing accessibile a tutti?

 
Ultima modifica:
programming-blocks-homeschoolbytes.jpg


:megaomg:

A parte gli scherzi non ho mai capito l'utilita' di questi servizi, anche il programma piu' semplice nasconde insidie che dovrebbero essere gestite via codice per come la vedo io.

In particolare a questa domanda Credi che sia una cosa positiva rendere il mondo del developing accessibile a tutti?
Rispondo no, la programmazione dovrebbe essere fatta solo da programmatori (o da aspiranti tali che comunque devono fare esperienza), altrimenti si rischiano disastri, gia' cosi' non c'e' niente di sicuro, figuriamoci se la maggior parte dei programmi fosse cosi' composta da persone che non ne capiscono a pieno il significato e le implicazioni di ogni operazione.