Pavilion sta lavorando a un plugin di integrazione per gli eventi di Discourse (DEIP), che, tra l’altro, consentirà di pubblicare eventi su Discourse da altri servizi e piattaforme. Abbiamo presentato una proposta a DAPSI (un programma NGI dell’UE), che è stata accettata per il finanziamento. Il programma è appena iniziato (ieri sera) e abbiamo iniziato a lavorare su di esso. Questo sovrapporrà alcuni dei punti da voi sollevati.
Versione modificata del riassunto esecutivo della proposta
Non esiste un modello di dati astratto per gli eventi del calendario utilizzato abitualmente dai servizi di eventi online. Specificheremo e prototipizzeremo prima un modello di dati funzionante basato sull’assimilazione di precedenti tentativi di standardizzazione e sui modelli di dati dei servizi di eventi più popolari (“Specifiche e Prototipo DEIP”). Successivamente, trasformeremo questa specifica in un prodotto sotto forma di plugin open source per Discourse che consentirà alle comunità online di trasferire facilmente i dati degli eventi del calendario tra le piattaforme di gestione eventi più diffuse (inizialmente Eventbrite, Meetup e Zoom) e Discourse, il software open source per comunità più popolare (“Prodotto DEIP”). Offriremo abbonamenti orientati al servizio alle aziende che utilizzano l’MVP per garantire la sostenibilità del plugin nel tempo.
Il Prodotto DEIP sarà un’alternativa open source commercialmente valida alla recente API Ufficiale Eventi di Facebook, che offre funzionalità simili, ma solo per il “giardino recintato” dei dati comunitari di Facebook. Facebook ha investito nelle sue funzionalità comunitarie da tempo e questo investimento sta crescendo. Il continuo focus di Facebook su questo aspetto del suo prodotto significa che le alternative open source devono migliorare continuamente le offerte equivalenti per rimanere vitali. Le Specifiche e il Prodotto DEIP saranno strumenti fondamentali in questa lotta.
Discourse è una delle poche piattaforme open source realmente vitali per le comunità online. È il progetto comunitario più popolare su GitHub e ha recentemente raccolto 20 milioni di dollari USA per far crescere ulteriormente la sua organizzazione in espansione (55 dipendenti a supporto di oltre 32.000 comunità). La piattaforma di Discourse è al 100% open source ed è profondamente radicata nelle comunità e nella cultura del software open source.
Pavilion (il richiedente) è una cooperativa di sviluppatori e product manager ed è un partner ufficiale di Discourse. Lavoriamo con Discourse da oltre 6 anni e abbiamo realizzato una parte sostanziale dei plugin di terze parti esistenti per Discourse, incluso il plugin Discourse più popolare e numerosi plugin che sono stati successivamente adottati (reso “ufficiale”) da Discourse.org.
La combinazione di Specifiche e Prodotto servirà sia come esponente della standardizzazione del modello di dati degli eventi del calendario, sia come soluzione open source efficiente per la gestione degli eventi nelle decine di migliaia di comunità online che utilizzano Discourse.
Riassunto (Problema e Soluzione)
Il problema principale affrontato dalle comunità online nella gestione degli eventi è l’integrazione dei servizi. Le comunità utilizzano un mix di piattaforme di marketing come Eventbrite, piattaforme di scoperta come meetup.com, strumenti di riunione come Zoom o soluzioni all-in-one come Facebook. La difficoltà di gestire una comunità su più servizi crea un incentivo a utilizzare soluzioni proprietarie che offrono comodità a scapito di trasparenza e portabilità.
Il DEIP sarà sia una specifica e un prototipo di modello di dati degli eventi del calendario, sia un plugin open source commercialmente valido per Discourse. In sintesi, il DEIP:
- Definisce una specifica pratica per il modello di dati degli eventi del calendario.
- Implementa la specifica in un prototipo funzionante.
- Sviluppa il prototipo in un plugin Discourse con supporto per l’importazione dai servizi di eventi più diffusi e l’esportazione utilizzando standard di calendari comuni.
- Rilascia il plugin come prodotto open source, con un servizio di abbonamento rivolto agli utenti aziendali.
Specifiche (La componente di ricerca)
I principali standard nella gestione degli eventi del calendario sono RFC 5545 (formato .ics) e RFC 4791 (CalDAV, o “feed iCal”). Il problema con questi standard è che attualmente non vengono utilizzati per modellare i dati degli eventi del calendario disponibili dalle API moderne. Gli oggetti equivalenti disponibili tramite le API Eventbrite, Meetup e Zoom non si traducono in RFC 5545, né tra loro. I tentativi degli organismi di settore di sviluppare un’API di calendariatura astratta non hanno ancora dato frutti, nonostante alcuni recenti tentativi. Inoltre, i servizi proprietari non forniscono feed CalDAV a livello di gruppo/sito/comunità (a volte forniscono feed specifici per utente). In breve, c’è una significativa carenza di standardizzazione del modello di dati degli eventi del calendario.
La componente principale della ricerca del DEIP sarà specificare un modello di dati degli eventi astratto che implementi i tentativi di standardizzazione esistenti, mantenendo al contempo un’utilità pratica rispetto ai servizi proprietari più popolari legati agli eventi (la “Specificazione DEIP”). Questa specifica verrà quindi convertita in un prototipo funzionante (inizialmente in Ruby; successivamente in altri linguaggi), consentendo la creazione, la lettura, l’aggiornamento e l’eliminazione di eventi del calendario generici (il “Prototipo DEIP”). A seconda dei risultati di questo lavoro, potremmo cercare di impacchettare il Prototipo DEIP per la distribuzione tramite diversi sistemi di pacchetti, ad esempio gemme Ruby.
Oltre a formare la base dell’MVP (vedi sotto), la specifica e il prototipo verranno pubblicati sulla pagina di atterraggio del DEIP con spiegazioni accompagnatorie del pensiero alla base. Dedicheremo anche una sezione della nostra comunità per ulteriori discussioni. Vogliamo essere parte attiva degli sforzi per avvicinare i servizi software degli eventi all’uso di modelli di dati standard per migliorare l’interoperabilità e la portabilità dei servizi.
Sviluppo (La componente di sviluppo)
Svilupperemo la Specifica e il Prototipo DEIP in un MVP Plugin Discourse che offre le seguenti funzionalità:
- API Eventi Discourse con supporto per Creazione, Lettura ed Eliminazione. Il supporto per l’aggiornamento (cioè la comunicazione bidirezionale) verrà aggiunto in una versione successiva del prodotto.
- Supporto specifico per i servizi più diffusi. Inizialmente Eventbrite, Meetup e Zoom.
- Integrazione con il Plugin Eventi Discourse per visualizzare gli eventi all’interno dei topic di Discourse e fornire un Calendario Eventi all’interno dello stesso Discourse.
- Un server CalDAV per fornire un feed unificato di tutti gli eventi in una comunità, con la possibilità di filtrare per categoria e utente.
- Integrazione con il Plugin Strumenti Legali per il supporto GDPR e il Plugin Luoghi per la mappatura delle località GeoJSON utilizzando soluzioni di mappatura open source.
Distribuzione (Rilevanza, impatto e benefici)
Pavilion supporta migliaia di comunità online attraverso il nostro lavoro di consulenza a pagamento e il lavoro open source non retribuito, molte delle quali hanno espresso un chiaro bisogno del Prodotto DEIP, tra cui ricercatori universitari, comunità di supporto alla salute, hobbisti, piccole imprese, quartieri, startup, organizzazioni non profit, aziende Fortune-500, scrittori di romanzi fantasy e appassionati di fotografia naturalistica. Per un campione di questo bisogno, vedi qui, qui, qui, qui, qui, qui e qui. La mancanza di facilità di portabilità e integrazione degli eventi è spesso un fattore chiave nella scelta tra soluzioni proprietarie chiuse come Facebook e soluzioni open source come Discourse.
I membri di Pavilion distribuiranno personalmente il Prodotto DEIP per i nostri clienti esistenti che organizzano eventi, oltre ad assistere i numerosi utenti open source del nostro lavoro, come quelli collegati sopra. Oltre al lavoro di Pavilion all’interno della comunità Discourse, il DEIP avrà:
- Un sito web prodotto autonomo, inclusa la Specifica e il Prototipo DEIP.
- Documentazione API.
- Supporto tramite i canali di supporto di Pavilion.
Il nostro obiettivo è che il Prodotto DEIP sia un’alternativa valida alla gestione degli eventi sulle piattaforme comunitarie proprietarie e che la Specifica e il Prototipo DEIP avanzino gli sforzi di standardizzazione del modello di dati degli eventi del calendario.
Modello di business (Sfruttamento commerciale)
Pavilion ha sviluppato un modello di abbonamento per i nostri plugin open source di Discourse che mantiene i nostri impegni verso l’open source e il supporto delle comunità non profit, garantendo al contempo che i nostri membri siano adeguatamente compensati per il loro lavoro. Il modello ha le seguenti caratteristiche:
- Codice al 100% open source.
- Funzionalità “aziendali” selezionate non visibili sul client dell’applicazione a meno che il responsabile della comunità non abbia acquistato un abbonamento.
- Abbonamenti gratuiti per le comunità non profit che utilizzano le funzionalità “aziendali”.
- Servizi orientati alle aziende per gli abbonati a pagamento.
La restrizione delle funzionalità in una base di codice al 100% open source può essere superata programmaticamente, tuttavia questo non è rilevante per il mercato di riferimento per gli abbonamenti a pagamento. Le aziende vogliono pagare per servizi che li avvantaggiano, e coloro che scelgono di superare le restrizioni non sono i clienti target per quell’aspetto del prodotto.
Potremmo potenzialmente ampliare l’ambito di questo progetto per includere alcune delle altre cose che avete menzionato, cioè quelle focalizzate sulle funzionalità degli eventi all’interno dello stesso Discourse; tuttavia, avremmo bisogno di finanziamenti aggiuntivi. Se volete discuterne ulteriormente, potete inviarmi un messaggio privato. In ogni caso, condividerò ulteriori dettagli sul progetto DEIP qui su meta mentre procediamo.