Una delle cose di cui siamo orgogliosi in edX è il nostro impegno per l'open source. Una decisione importante nel codice open source è la scelta di una licenza. Per la maggior parte, abbiamo utilizzato la licenza AGPL. Per soddisfare al meglio i nostri obiettivi di open source, tuttavia, stiamo modificando alcune delle nostre licenze.
I nostri oltre 30 repository pubblici su GitHub rientrano in tre grandi categorie:
- Componenti principali della piattaforma Open edX.
- Librerie utilizzate da altri per accedere alla piattaforma tramite le nostre API.
- Strumenti che non sono specifici della piattaforma Open edX.
Ognuna di queste categorie ha le proprie considerazioni sulla licenza.
Per i componenti principali della piattaforma, continueremo a utilizzare l'AGPL. Questa licenza garantisce che tutte le modifiche alla piattaforma siano condivise, garantendo che la piattaforma sia veramente una risorsa aperta e che tutti traggano vantaggio dai miglioramenti.
La natura propagante dell'AGPL rende difficile l'adozione per alcune persone. Per i repository in cui un ampio utilizzo è più importante dei miglioramenti condivisi, utilizziamo la licenza Apache. Ciò include le nostre librerie API e gli strumenti di interesse generale, la seconda e la terza categoria di cui sopra.
La nostra prima modifica ad Apache è stata nel Repo API XBlock a settembre. Il nostro catalogo di librerie API sta crescendo e saranno tutte concesse in licenza con Apache per incoraggiare l'uso delle API.
La terza categoria è costituita da strumenti di interesse generale che non hanno nulla a che fare in particolare con edX e non funzionano come parte della piattaforma. Potrebbero interessare qualsiasi sviluppatore Python. Un esempio è copertina del differenziale, uno strumento da noi realizzato che ci permette di valutare la copertura di prova dei contributi. Strumenti come questo avranno una licenza Apache per consentirne un uso e un'adozione più ampi.
Per ricapitolare la nostra strategia di licenza:
- Il codice essenziale per la piattaforma edX sarà AGPL.
- Il codice utilizzato da altri per accedere alle nostre API sarà Apache.
- Il codice di ampio interesse e non correlato alla piattaforma sarà Apache.
Da quando abbiamo aperto per la prima volta il nostro codice nel 2013, la sua portata e adozione sono cresciute. Stiamo continuando a riformare il nostro approccio per soddisfare al meglio le esigenze della comunità. Come sempre, ci piacerebbe sentire i tuoi pensieri.
![]()