Ce trebuie să știi înainte de a începe un proiect Open Source.
Cum se lucrează într-un proiect Open Source. Cum să îmbini cât mai eficient uneltele digitale de organizare și colaborare pentru a construi procese eficiente pentru proiecte Open Source.
Prezentare susținută de Claudiu Ceia - CivicTech România, pe 17 mai 2018, în cadrul Școlii Digitale pentru ONG-uri: ONG Online.
Școala Digitală pentru ONG-uri este un program anual creat de Asociația Techsoup pentru a ajuta angajați și voluntarii organizațiilor neguvernamentale din România și Republica Moldova să beneficieze de training profesionist și la îndemână online în utilizarea tehnologiei sau soluțiilor online disponibile lor. Mai multe pe https://ongonline.techsoup.ro/.
Asociația Techsoup @ Academia de Leadership și Pedagogie 2021
Ghid de colaborare Open Source pentru ONG-uri
1. Ghid de Colaborare Open
Source pentru ONG-uri
Claudiu Ceia
FULL STACK DEVELOPER
2. Claudiu Ceia
FULL STACK DEVELOPER
Ghid de Colaborare Open Source pentru ONG-uri
1
Ghid de Colaborare Open Source pentru ONG-uri
Ce înseamnă Open
Source?
1. Definiție
2. Principii
3. Cum se aplică
principiile open
source?
De ce Open
Source?
1. Argumente pro
2. Argumente
contra
3. Cum alegi
soluția potrivită?
Propriul proiect
Open source
1. Branding
2. Primii pași
3. Checklist
4. Continuitate
5. Checklist #2
3. Claudiu Ceia
FULL STACK DEVELOPER
Ce înseamnă open source?
Ghid de Colaborare Open Source pentru ONG-uri
Termenul „cu sursă deschisă” (en: open source)
descrie practica de a produce sau dezvolta
anumite produse finite, permiţând accesul
utilizatorilor să acţioneze liber asupra procesului
de producţie sau dezvoltare. - Wikipedia
2
4. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
5. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
Meritocrație
6. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
Meritocrație
Comunitate
7. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
Transparență
Meritocrație
Comunitate
8. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
Transparență
Meritocrație
Comunitate
Schimb de experiență
9. Claudiu Ceia
FULL STACK DEVELOPER
Principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Colaborare
3
Transparență
Meritocrație
Comunitate
Schimb de experiență Organizație non-profit
10. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
3
11. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
● data.gov.ro
● London Datastore
● openNASA
12. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
Colaborare deschisă
● Wikipedia
● Bitcoin
● TEDx
13. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
Colaborare deschisă
Medicină
● Open Source Malaria
● Open Source Drug
Discovery
14. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
Colaborare deschisă
Medicină
Educație
● MIT OpenCourseware
● Open edX
15. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
Colaborare deschisă
Medicină
Educație
Software
● Linux, Android
● GIMP, Inkscape
● Libre Office
● Wordpress
16. Claudiu Ceia
FULL STACK DEVELOPER
Cum se aplică principiile open source
Ghid de Colaborare Open Source pentru ONG-uri
Date deschise
4
Colaborare deschisă
Medicină
Educație
Software
Conținut deschis
● Fotografii, filme
● Alte produse creative
17. Claudiu Ceia
FULL STACK DEVELOPER
De ce să folosești open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Argumente pro
● Gratuit (în cele mai multe cazuri)
● Sprijin din partea comunității
● Accesibil / Transparent
● Testat la scara largă
● Eviți riscuri specifice alternativelor comerciale (risc de faliment, abandon, etc.)
18. Claudiu Ceia
FULL STACK DEVELOPER
De ce să folosești open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Argumente contra
● Ești singurul responsabil
● Alternativa comercială este mai avansată (GIMP vs Photoshop, Inkscape vs Illustrator)
● Mai mult timp investit, în cazul proiectelor open source
● Risc de abandon
19. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
20. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Cost
Direct
● Cumperi o soluție tip cloud, cu abonament periodic?
● Versiune “premium” cu suport inclus?
Indirect
● Timp investit
● Costuri de infrastructură
21. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
“Adopție”
Popularitate
● Wordpress, Ubuntu
Sprijin privat
● Android, Chromium
“Battle-tested”
● Folosite la scară largă (Google, Facebook, etc)
22. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Actualitate
● Care e cea mai recentă versiune?
● Cât de bine corespunde tendințelor tehnologice?
23. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Securitate
Regulă generală
● Nu există o regulă generală
Ce e de făcut?
● Folosește tool-uri, în mod regulat (Snyk, GitHub)
● Actualizări periodice
24. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Resurse necesare
Timp
● Actualizări periodice
Cunoștințe tehnice
● Ești familiarizat cu tehnologiile folosite?
● Ai putea contribui cu un patch, dacă e necesar?
25. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Cerințe
Fii pragmatic
● Consideră cu atenție funcționalitățile de care ai nevoie
26. Claudiu Ceia
FULL STACK DEVELOPER
Cum alegi soluția potrivită
Ghid de Colaborare Open Source pentru ONG-uri
4
Cerințe
Fii pragmatic
● Consideră cu atenție funcționalitățile de care ai nevoie
○ excepție dacă știi ce face formula de mai jos, în Excel
"=VLOOKUP(DATE(2013,6,25),CHOOSE({1,2},E2:E8,A2:A8),2,0)"
27. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
● More eyeballs
● Posibil ajutor din exterior
● Learn things
● Enabling others
● Cheaper in the long run?
● Suport specific open source (Algolia, Mapbox, etc)
Argumente pro
28. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
● Monetizare mai dificila
● Commitment fata de comunitate, ce presupune asta
Argumente contra
29. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Branding
● Nume scurt, ușor de memorat
● Felul în care te prezinți poate avea o amprenta serioasă
● Evită conflictele de nume
30. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Primii pași
● Concentrează-te pe dezvoltarea unei comunități cât mai primitoare
● Alege o licență tip open source, permisivă
● README.md cât mai clar, primitor
● Ghid de contribuție
● Code of conduct / Reguli sociale
31. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Checklist / Documentație
● Licență, README.md, Code of conduct, Ghid contribuție
● Nume memorabil, nu intră în conflict cu altul deja existent
● Dacă README.md nu e suficient pentru documentație, wiki sau pagină de prezentare
● Un canal deschis pentru comunicare în timp real (IRC, Slack, RocketChat, etc.)
32. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Checklist / Administrativ
● Te-ai asigurat că e okay dpdv legal (să nu ai dependințe comerciale)
● Ai un plan de comunicare și promovare
● Mereu e cineva care să raspundă pe toate canalele de comunicare
● Cel puțin două persoane implicate
33. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Checklist / Proiect software
● Asigură-te că nu ai inclus credențiale în cod
● Ai reguli clare de contribuție (style guide, format commit message, etc.)
● Oferi o experiență cât mai plăcută de onboarding
● E ușor de instalat proiectul local
34. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Continuitate
● Fii primitor cu oamenii nou-veniți
● Fii cât mai deschis la sugestii / contribuții
● Setează un loc de întâlnire (online sau offline, sau amândouă)
● E okay să cedezi control celorlalți
● Încearcă să menții discuții productive
35. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Checklist / Comunitate
● Fii cât mai responsive, chiar dacă nu poți decât să confirmi prezența
● Setează reguli pentru contribuitori (standard de calitate, așteptări, etc.)
● Recunoaște implicarea contribuitorilor pe cât posibil
● Dacă identifici actori malițioși, îndepărtează-i din proiect cât mai curând
36. Claudiu Ceia
FULL STACK DEVELOPER
Cum pornești propriul proiect open source
Ghid de Colaborare Open Source pentru ONG-uri
4
Checklist / Bune practici
● Urmează bune practici aplicabile în software în general
● Cere ajutor de la “roboți” (Snyk, Travis, Uptime Robot, etc.)
● Implică-te în comunitatea open source mai largă
● Promovează-ți proiectul pe canale specifice (Hacker News, Medium, forumuri, etc.)
Hinweis der Redaktion
Proiectele populare au mai multe beneficii: comunitate (raspunsuri la intrebari), proces QA organic, mult mai mici sansele de abandon, prea rar sunt populare pentru ca nu au alternative
Proiecte open source sprijinite de companii (engineers getting paid)
Proiectele populare au mai multe beneficii: comunitate (raspunsuri la intrebari), proces QA organic, mult mai mici sansele de abandon, prea rar sunt populare pentru ca nu au alternative
Proiecte open source sprijinite de companii (engineers getting paid)
Mitul proiectelor open source, fie secure, fie insecure
Foloseste tool-uri pentru a valida securitatea proiectului folosit (snyk, github)
Esti familiarizat cu tehnologiile folosite?
La nevoie, poti contribui chiar tu cu un patch pentru a rezolva o anumita problema cu care te confrunti?
Esti familiarizat cu tehnologiile folosite?
La nevoie, poti contribui chiar tu cu un patch pentru a rezolva o anumita problema cu care te confrunti?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?
Ce cerinte ai de la solutia cautata? (for real)
In general, nu folosim produsele digitale la maxima lor capacitate
Esti sigur ca vrei un tool in care te poti specializa ani de zile pentru a face o suma pe o coloana?