La differenza tra framework community-driven e company-driven

Una panoramica sintetica sulle tecnologie web e chi le gestisce

Il mondo dei framework per la programmazione web è molto affollato. Ci sono tecnologie nate dal basso, rese note dal contributo volontario di migliaia di utenti e altre sviluppate dai reparti IT di aziende private. In questo articolo spieghiamo alcune differenze tra tecnologie community-driven e company-driven.

In precedenza abbiamo già parlato dei framework; se non conosci il tema forse vuoi leggere il nostro articolo Che cos’è un framework? Più specificamente per il nostro settore di riferimento si tratta di software utilizzati dai programmatori web per realizzare strumenti online accessibili via browser: le cosiddette web apps.

Framework community-driven

I framework community-driven nascono dall’iniziativa indipendente di uno o più fondatori che ne pongono le basi collaborando tra loro. Spesso le tecnologie community-driven nascono come progetti open source, con l’intento di renderle accessibili gratuitamente ad una vasta platea di professionisti.

Eventi IT internazionali come la JSConf sono opportunità per il framework di mostrare le proprie potenzialità. Altre piattaforme web frequentate dai programmatori come Twitter, Reddit e Hackernews sono molto attive e il passaparola contribuisce ad amplificare la diffusione delle tecnologie più promettenti.

Se il progetto ha successo tra i programmatori, nuovi professionisti si uniscono alla community per utilizzare il framework e dare il loro contributo.

Quando la notorietà raggiunge un livello significativo è possibile che il team di creatori organizzi conferenze dedicate per annunciare novità e raccontare gli obiettivi raggiunti. Dreamonkey, ad esempio, era tra gli speaker della prima conferenza ufficiale di Quasar (puoi leggere il nostro resoconto Quasar Conf 2020: tutte le novità).

Spesso i fondatori coordinano la community, ma i framework crescono con lo sforzo volontario di tutti gli utenti che li utilizzano per i loro progetti, siano essi legati alla professione o a iniziative personali.
Tracciata una roadmap principale, tutte le attività di revisione, bug fixing, implementazione di nuove features e altre, sono lasciate alla libera iniziativa di ciascuno mentre la collaborazione tra gli sviluppatori è molto incentivata.

Di solito la community interagisce su piattaforme come Github. In questo modo chi coordina il progetto open source può tenere aggiornata la codebase del framework con tutti i contributi migliori prodotti dagli utenti, sottoposti alla peer-review degli altri. In questo modo si riduce la possibilità di incorrere in aggiornamenti malfunzionanti e incompatibilità.

Framework company-driven

I framework company-driven (anche detti enterprise-driven o corporate-driven) sono creati e gestiti da aziende private. A differenza della controparte community-driven la manutenzione e il miglioramento sono affidati al team di sviluppo alle dipendenze di un’azienda e rispondono alle esigenze di quest’ultima.

Se alcune necessità informatiche non possono essere soddisfatte da servizi già esistenti sul mercato, o se l’azienda vuole il controllo totale del proprio stack tecnologico, il reparto IT sviluppa il proprio framework personalizzato in modo da disporre di un ambiente di programmazione proprietario ad uso aziendale esclusivo.

Un esempio famoso nel nostro settore è Angular, il framework ufficiale di Google. L’azienda americana ha progettato il framework per realizzare molte delle sue piattaforme web, dopodiché Angular è stato rilasciato gratuitamente per l’uso autonomo di altri programmatori.

Un altro framework company-driven molto noto è React, creato e gestito da Facebook per lo sviluppo del noto social network, poi messo liberamente a disposizione.

Modelli di business

Di solito i framework community-driven sono iniziative non profit e chi collabora lo fa a titolo volontario. Tuttavia, molte volte la mole di lavoro di manutenzione e aggiornamento è tale da richiedere un contributo per sostenere le persone più attive. In questo modo è possibile mantenere un buon standard qualitativo.

I contributi prendono la forma di libere donazioni occasionali o periodiche da parte di utenti ed aziende che utilizzano il framework oppure di raccolte fondi mirate a coprire le spese di necessità specifiche (es. creare una nuova feature).
Quando un progetto è particolarmente strutturato può integrare servizi secondari a pagamento, come il supporto tecnico. Questi servizi non ledono la gratuità del framework e delle sue risorse principali bensì offrono competenze complementari per aziende e freelance che desiderano velocizzare certi processi di programmazione o necessitano di consulenza.

Nel caso di framework company-driven ad uso aziendale invece non c’è un vero e proprio modello di business. La tecnologia viene utilizzata come un semplice strumento interno all’azienda per progettare altri software che costituiscono il servizio venduto ai clienti.

Tuttavia non è inusuale che un framework company-driven venga rilasciato esternamente come un vero e proprio servizio per l’uso da parte di programmatori freelance o di altre aziende. In questi casi genera introiti grazie ad un sistema di licenze prestabilito.

Lo stack di Dreamonkey

Per sviluppare i progetti dei nostri clienti utilizziamo tecnologie di entrambi i tipi. L’esperienza di questi anni ci ha insegnato che i due mondi hanno pro e contro, ma non saremmo completamente sinceri se dicessimo che per noi veicolano gli stessi potenziali e valori etici.

In Dreamonkey siamo grandi sostenitori dei progetti community-driven.
Per noi sono tecnologie più trasparenti. Guardano soprattutto alle esigenze degli sviluppatori e lasciano più libertà d’azione, che significa più personalizzazione per i loro clienti.

Il nostro stack comprende Quasar, Vue e Laravel (community-driven) e Angular (company-driven). Se vuoi qualche dettaglio in più su queste tecnologie consulta I nostri frameworks.

Framework open source di Dreamonkey

Quasar, Vue e Laravel sono i tre framework open source che utilizziamo in Dreamonkey per sviluppare web app e altri software online.

Quando è possibile coinvolgiamo i nostri clienti per far sì che ogni progetto contribuisca alla crescita tecnologica dei framework ai quali ci appoggiamo. Addirittura, per sostenere il framework con il nostro lavoro, siamo diventati Platinum Sponsor di Quasar! Se vuoi scoprire di più su come questi software possono aiutare la tua azienda contattaci.