LANG(jezik):
Global(en-us) / Local (sr-latn-ba)
– Otvoreni Kod (Open-Source) (img) je izuzetan koncept i pokret i odličan način da se softver učini dostupnijim i upotrebljivijim (pogledati OS Inicijativu). It gives everyone better availability for testing, easier debugging and bug fixes. At the same time enables suggestions and improvements with contributions using PR (PullRequest) based on GitHub collaboration.
– Ali u poslednje vrijeme taj model često ima svoje izazove i probleme zbog određenih poslovnih praksi. Neki čak kažu da je OpenSource narušen. So the following proposal is an attempt to find a fix.
* I) Prvo pitanje je da čak i veliki projekti zavise uglavnom od jednog glavnog programera ili nekolicine značajnih saradnika. Istovremeno softverski paket ili program može imati nekoliko miliona korisnika, kako fizičkih tako i pravnih lica, koji se koriste u mnogim aplikacijama. Međutim, održavanje često postaje dugotrajno sa veoma visokim očekivanjima i praktično zahteva posao sa punim radnim vremenom. – Ipak, na kraju se najviše oslanja na entuzijazam i dobru volju autora, jer nikada nema dovoljno donacija ili finansijske podrške velikih kompanija. Takođe, plaćena podrška obično ne funkcioniše i nije skalabilna, dok dobijati sredstva preko OpenCollective uvijek je teško.
– Takva dinamika onda stvara veliki pritisak i opterećenje na autora, što dovodi do sagorijevanja i napuštanja projekta ili on/ona postaje nedostupan iz bilo kog razloga (uključujući zatvorsku kaznu).
– Ovo takođe predstavlja rizik za sve korisnike jer bi izgubili podršku bez lake zamene. Jedna dobro poznata situacija je bila OpenSSL Heartbleed sigurnosna greška, a druga je log4j ranjivosti. Takođe, dugoročno pitanje za razmatranje je okvir upravljanja. Zaključno, racionalno je da kompanije plaćaju Licencu, jer je u njihovom interesu da imaju bolje osiguranje za dugoročnu podršku LTS - Long Term Support.
* II) Druga briga je da velike korporacije značajno profitiraju od većeg dela OS softvera, dok vraćaju vrlo malo ili uopšte ništa. Oni uzimaju na desetine OS softvera i inkapsuliraju ga u komercijalnu vlasničku aplikaciju, a neki od njih ostvaruju ogromne prihode. Što je kao takvo u redu, ali bi trebalo da postoji način da oni plate svoj pošten udio inženjerima koji stoje iza tih projekata.
– Kategorički imperativ (moralne implikacije) u ovom slučaju bi oni koji najviše profitiraju trebalo da vrate nešto od sve vrijednosti koju dobijaju svojim poslovanjem u industriji (Pareto princip u poslovnom modelu). Ne možemo samo da koristimo otvoreni kod, a da ignorišemo troškove, umjesto toga, svi bi trebali preuzeti odgovornost i promijeniti kulturu rada prema održivosti.
– Kritika bez efikasnog rješenja nije ni korisna ni opravdana. Jedna konstruktivna ideja koja dobija na snazi je da softver bude uglavnom besplatan, i da izvorni kod ostane otvoren. „Uglavnom besplatno“ znači nulte troškove za većinu (90%+) korisnika, kao što su oni sa godišnjim bruto prihodom ispod određene granice, npr 500 hiljada ili 1 milion dolara. U suštini, ovaj pristup odražava strategiju Dvojnog licenciranja. Prilikom postavljanja cijena izbegavajte nezgodne iznose kao što je 799, koristite zaokružene brojeve, 800 je dovoljno. Pored toga, razmislite o prihvatanju Bitkoina za plaćanja, u skladu sa principima Novac otvorenog koda (pročitajte prethodne postove na blogu). Cijene se takođe mogu prikazati u „Sats“ (Satošijima) radi dodatne fleksibilnosti.
– Razlika između kampova ‘Free-Libre(Slobodno)’ i ‘Free-Besplatno kao u pivu’ (FLOSS and FOSS filozofija) je da se prva fokusira uglavnom na slobodu, ali ne podrazumijeva da nema cijenu u svim okolnostima (nije crno-bijelo).
– Nazvao sam model cFOSS - conditionally Free and OpenSource Software** (Uslovno Besplatan i Otvorenog Koda Softver) kao srednji put između ova 2 tabora (relativno dopustljiv tip licence sa blago prinudnim finansiranjem). Imajte na umu da ovo nije poput ‘Dostupnog koda’ (Source Available) koji u suštini dozvoljava samo čitanje koda i ništa drugo, skoro besmisleno.
– Umesto toga, **Otvorenost se zadržava uz slobodu korišćenja koda, njegovog modifikovanja i distribucije kao zavisnog paketa (OS termin je važan). Ovo omogućava održivost i osigurava da projekat opstane na dugi rok. To daje dobre podsticaje i stvara samopojačavajuću pozitivnu petlju ohrabrujući korisnike da daju doprinoso unapređenjem koda. Pored toga, kompanije koje bi plaćale treba da imaju jednostavne progresivne nivoe cijena (zasnovane na broju zaposlenih programera ili neke druge metrike). Čak ni najviši nivo ne bi trebalo da bude preskup, da bi bio lako prihvatljiv trošak za takve kompanije. Na primer, nivoi mogu biti u rasponu od nekoliko stotina do nekoliko hiljada godišnje u vidu pretplate, ili alternativno da takođe imaju opciju trajne licence. Redovno finansiranje bi takođe omogućilo model nagrađivanja značajnih saradnika koji imaju puno komita koda.
– Moglo bi se tvrditi da će dugoročno, sav softver imati tendencije (konvergiranje) prema tome da postane open-source, na jedan ili drugi način, pošto cFOSS kao poslovni model ima nekoliko prednosti u poređenju sa zatvorenim kodom. To uključuje bolju distribuciju, besplatne licence koje potiču usvajanje odozdo prema gore, besplatni marketing, itd. Možemo to formulisati na način OS je pobedio.
– Cijela ideja je da postoje 2 kategorije licenci za OS projekte u zavisnosti od težine održavanja:
1) -Prva grupa bi bila potpuno besplatna (MIT, Apache, BSD itd), uglavnom za manje projekte koji ne zahtijevaju značajno vrijeme i trud. Nakon prvobitnog razvoja, kasnije bi bila potrebna samo povremena ažuriranja.
2) -Drugi tip cFOSS za veće i složenije projekte gde postaje teret za programere. I ako je potrebno, trebalo bi ih ohrabriti da pređu na ove vrste licenci, a takođe i projekti koji su od početka napravljeni na takav način zaslužuju da budu prihvaćeni od strane OpenSource zajednice. Naravno, u situacijama kada je došlo do promjene svako može da odvoji poslednju potpuno besplatnu verziju i nastavi da je održava sam, ali treba imati na umu da to nije lak poduhvat.
– Još jedan zanimljiv pristup je Otvorena Osnova OpenCore koji u suštini ima osnovni projekat potpuno besplatan, ali se neke premium funkcije plaćaju. Lično nisam ljubitelj takve strukture i radije bi zadržao projekat kao jedinstven – u skladu sa KISS principom. Međutim, ne bih imao ništa protiv da ga drugi koriste, sve dok je osnovna komponenta potpuno funkcionalna za više od polovine redovnih slučajeva upotrebe. Ipak, uvijek možete istražiti ideje o OS monetizaciji i pronaći zanimljive priče.
Neki značajni primjeri projekata sa tipom cFOSS licence ili sličnim dizajnom:
– ImageSharp, – MathParser, – QuestPdf;
– EFCore.BulkExtensions - lična vodeća biblioteka (ovaj blog post je izrastao iz sage o Bulk-u)
‘ (Besplatna licenca zajednice pokriva većinu slučajeva, samo je kompanijama sa godišnjim prihodom od milion i više dolara potrebna komercijalna)
– Konačno, preporuka za svakoga bi bila da nađu projekat koji ih zanima, a da im je takođe potreban i koristan, i da mu odvoje malo slobodnog vremena. Uvijek postoji potreba da se pomogne oko otvorenih pitanja, da se poboljša dokumentacija i primjeri, da se naprave testovi, rješavaju problemi, dodaju nove funkcionalnosti i ostali načini doprinosa. Kasnije, ako imate problem/ideju, napravite svoj projekat potpuno FOSS, a nakon nekoliko od njih jedan bi mogao postati cFOSS ili ga postaviti kao takvog od početka.
– Pravilo bi moglo biti da 1 od 3 do 5 projekata može biti dovoljno značajan da ima cFOSS, dok bi drugi bili u potpunosti FOSS (još jedan slučaj Pareta). Postoje korisne informacije o opensource : starting-a-project and getting-paid. Što se tiče kompanija, one takođe mogu da se postaraju da alati otvorenog koda budu sigurni.
Još info:
- medium/the-sustainability-of-open-source
- dev.to/the-hidden-cost-of-free-open-source
- hendrik-erz.de/open-source-has-a-sustainability-crisis
- unlockopen.com/towards-a-sustainable-solution
Spisak svih referenciranih Linkova