Open Source je softver koji se distribuira pod licencom koja je u skladu sa standardima otvorenog koda. Princip otvorenosti ne pokriva samo obim razvoja softvera. Na primjer, dizajneri pružaju pristup besplatnim predlošcima i fontovima. U nekim zemljama, vladine agencije prelaze na softver otvorenog koda. U Njemačkoj je grad Minhen odlučio da pređe na LiMux operativni sistem, koji je prilagođena verzija Ubuntua. U Hamburgu su zvaničnici odlučili da koriste kancelarijski paket Phoenix umjesto Microsoft Officea. Vlada Ujedinjenog Kraljevstva prešla je s korištenja PDF formata dokumenta na ODF. U Francuskoj, žandarmerija koristi Ubuntu OS i besplatni LibreOffice.
Zahtjevi za softver otvorenog koda
Evo glavnih zahtjeva koje aplikacija distribuirana pod licencom otvorenog koda mora ispuniti:
- programi se distribuiraju besplatno;
- Softver dolazi sa izvornim kodom, ako ga nema u osnovnom paketu, onda se može slobodno preuzeti ili dobiti na drugi način;
- kod se može modifikovati i delovi koda se mogu koristiti u drugim projektima, dok modifikovane aplikacije treba distribuirati pod uslovima licence otvorenog koda;
- nije dozvoljena diskriminacija bilo koje grupe ljudi, na primjer, u SAD-u postoje ograničenja za izvoz programa, ali slobodna licenca ne može uspostaviti svoje zabrane;
- Open Source licenca dozvoljava sve načine korištenja aplikacija, tako da lična moralna uvjerenja programera ne ometaju distribuciju, na primjer, stavke poput: “zabranjeno je koristiti za genetska istraživanja” su neprihvatljive;
- sva pravila vezana za Open Source licencu su ista za sve korisnike, dodatni ugovori kao što su ugovori o neotkrivanju su zabranjeni;
- licenca se ne može vezati za program, programer koji koristi samo dio koda ima prava koja je dao cijeli proizvod;
- korisnik može birati šta će koristiti, na primjer, zabranjeno je zahtijevati da softver koji se isporučuje uz Open Source mora biti otvoren.
Open Source projekti – koja je njihova posebnost
Većina aplikacija distribuiranih pod licencom otvorenog koda ima sljedeće razlike:
- programe pišu oni koji ih koriste, stoga programeri prate kod, brzo popravljaju greške i otkrivene ranjivosti;
- većina proizvoda je kompatibilna sa više operativnih sistema;
- zajednica programera otvorenog koda otvorena je za komunikaciju sa korisnicima koji mogu da daju predloge;
- Obično se besplatna ažuriranja softvera pojavljuju češće od komercijalnih, tako da se greške brže ispravljaju;
- korisnici, po želji, mogu novcem podržati aplikaciju koja im se sviđa;
- Rizik od zaraze računara ili pametnog telefona prilikom instaliranja programa otvorenog koda je minimalan, jer dolaze sa izvornim kodom.
Istorija slobodnog softvera
Richard Stallman se smatra osnivačem pokreta slobodnog softvera. Dok je radio u Laboratoriji za umjetnu inteligenciju na Massachusetts Institute of Technology, bio je uključen u razvoj slobodnog softvera. Na primjer, u pisanju EMACS uređivača teksta za PDP računare. Godine 1984. Stallman je napustio posao na MIT-u i osnovao GNU projekat. Njegovi entuzijasti skovali su termin “slobodni softver” i razvili GNU manifest.Hajde sada da pričamo o najpopularnijim od njih.
- MIT licenca je razvijena u jednoj od vodećih obrazovnih institucija u Sjedinjenim Državama – Massachusetts Institute of Technology. Gotovo se u potpunosti poklapa sa verzijom BSD licence od tri klauzule, samo dodaje jednu klauzulu koja zabranjuje korištenje imena autora u oglašavanju. Ispod njega su izašli: XFree86, Expat, PuTTY i drugi proizvodi.
- BSD licenca se prvi put pojavila ranih 1980-ih za distribuciju istoimenog operativnog sistema. Postoje sljedeće varijante ove licence:
- Originalna BSD licenca je prva originalna licenca, naziva se i četvoročlana licenca.
- Modifikovana BSD licenca je licenca sa tri klauzule, isključuje jednu klauzulu, koja zahteva oglašavanje da naznači da ova aplikacija koristi softver razvijen na Univerzitetu Kalifornije.
- Intelova licenca koja je razvijena za aplikacije zaštićene patentom. Inicijativa otvorenog koda ga ne podržava.
- GNU Opšta javna licenca je najpopularnija licenca. Pojavila se 1988. 1991. godine pojavila se poboljšana verzija GPL v2, koja do danas nije izgubila na važnosti. 2006. godine usvojena je GPL v2 licenca.
- GNU manja opšta javna licenca, ili skraćeno GNU LGPL, stvorena je da poveže biblioteke sa softverom koji se distribuira pod drugim licencama.
- Apache licenca vam omogućava da modificirate i redistribuirate softver u izvornom i binarnom obliku. Pored prava na proizvod, omogućen je i prenos patenata.
- Guile je sličan GNU GPL-u, ali dodaje klauzulu koja dozvoljava da se softver otvorenog koda kombinuje sa neslobodnim softverom, tako da se ne može smatrati strogim copyleft-om, ali je ipak kompatibilan sa GNU GPL-om.
- Zajedničku javnu licencu je razvio IBM za njihov razvoj. Omogućava vam da promijenite kod i koristite ga u komercijalnim programima. Ovu licencu je koristio Microsoft za Windows Installer XML.
- Mozilla javna licenca (MPL) je složena licenca koja ne prati strogi copyleft.
- Sun Public License je slična MPL-u, ali ima manjih promjena, kao što je Sun Microsystems umjesto Netscape-a.
Postoje i druge manje uobičajene licence kao što su Guile, Common Public License, Mozilla Public License i druge. https://youtu.be/oAW5Dh9q3PM
Primjeri projekata otvorenog koda
Razvoj Linux kernela i GNU aplikacija postao je osnova za druge aplikacije otvorenog koda. Dolazak Netscapea zainteresovao je velike IT kompanije. Od tada je razvijeno mnogo različitih proizvoda. Počnimo s Debianom, koji je od 1994. do 1995. podržao Free Software Foundation, a kasnije je osnovana neprofitna organizacija Software in the Public Interest koja je nastavila financirati projekt. U sklopu ovog projekta kreiran je ne samo operativni sistem, već i LibreOffice uredski paket, Firefox pretraživač, Evolution email klijent, K3b aplikacija za narezivanje CD-a, VCL video player, GIMP editor slika i drugi proizvodi. Neprofitna kompanija Apache Software Foundation započela je kao projekat otvorenog koda koji podržava softver. Najpopularniji proizvod ove organizacije je istoimeni web server. Sada kompanija održava veliki broj projekata distribuiranih pod Apache licencom. Sponzori ASF-a su Microsoft, Amazon i Huawei. Druga kompanija uključena u projekte otvorenog koda je Red Hat. Glavni razvoj koji je operativni sistem na Linux kernelu. Bavi se ne samo softverom, već i tehničkom podrškom i obukom stručnjaka. 2018. kupio ga je IBM. Google također razvija besplatni softver. Ona razvija i održava sledeće projekte: TensorFlow biblioteku za razvoj sistema mašinskog učenja, Go jezik, Kubernetes program dizajniran za automatizaciju implementacije softvera i druge proizvode. U nauci, Open Source se ne odnosi samo na softver, već i na objavljivanje radova, pregled i podršku obrazovnih resursa. Godine 1991. Paul Ginsparg je organizirao elektronski arhiv arXiv u Laboratoriji u Los Alamosu, u kojem se mogu pronaći radovi ne samo iz fizike, već i iz medicine, matematike i drugih nauka. CERN ima i portal sa otvorenim naučnim radovima.
Operativni sistemi otvorenog koda – operativni sistemi otvorenog koda [/ caption]
Kako se uključiti u projekat otvorenog koda
Ako želite vježbati programiranje i proširiti svoj životopis, onda je sudjelovanje u razvoju Open Source proizvoda upravo ono što vam treba. Reći ćemo vam korak po korak šta je za to potrebno. Prije svega, potrebno je da se registrujete na GitHub i odaberete projekat u kojem ćete učestvovati. Mora da vas zanima. Pa, ako će imati puno zadataka koje možete obaviti. Također treba obratiti pažnju na popularnost projekta, to se može odrediti brojem zvjezdica. Također je važno utvrditi koliko je aktivan razvoj i kada su izvršene posljednje promjene. Nakon što odaberete zanimljiv projekat, morate pronaći kustosa i uspostaviti interakciju s njim. Sljedeći korak je odabir zadatka. Za početak, preporuča se odabrati najjednostavniji zadatak. Glavna stvar je da to možete riješiti. Nakon toga prenesite projekat na sebe i instalirajte sve potrebne alate. Nakon što ste riješili problem, dajte prijedloge za promjenu koda u spremištu. Da biste to uradili, morate učitati svoj kod na GitHub i kliknuti na dugme “Pull request”. Nakon toga, morat ćete unijeti naziv vašeg zahtjeva i opis. Nakon toga, potrebno je sačekati da kustos prihvati ili odbije predložene izmjene. Ako su se nakon što ste započeli zadatak pojavile druge hitne stvari ili ste shvatili da to ne možete učiniti, tada možete odustati od zadatka. To je normalno, ali morate obavijestiti kustose o svojoj odluci. Nakon toga, morat ćete unijeti naziv vašeg zahtjeva i opis. Nakon toga, potrebno je sačekati da kustos prihvati ili odbije predložene izmjene. Ako su se nakon što ste započeli zadatak pojavile druge hitne stvari ili ste shvatili da to ne možete učiniti, tada možete odustati od zadatka. To je normalno, ali morate obavijestiti kustose o svojoj odluci. Nakon toga, morat ćete unijeti naziv vašeg zahtjeva i opis. Nakon toga, potrebno je sačekati da kustos prihvati ili odbije predložene izmjene. Ako su se nakon što ste započeli zadatak pojavile druge hitne stvari ili ste shvatili da to ne možete učiniti, tada možete odustati od zadatka. To je normalno, ali morate obavijestiti kustose o svojoj odluci.
Korištenje otvorenog koda u razvoju trgovačkih robota
Trgovački savjetnik ili
robot je program koji obavlja transakcije na berzi prema unaprijed određenom algoritmu. Mogu trgovati potpuno nezavisno i u poluautomatskom načinu rada. U drugom slučaju, oni jednostavno šalju trgovačke signale i trgovac donosi konačnu odluku. Navodimo prednosti trgovačkih robota:
- Trgovac ne mora sam pratiti cijene.
- Stručni savjetnici rade striktno po zadanom algoritmu, nemaju emocije.
- Roboti reaguju mnogo brže od ljudi.
Ali pored prednosti, automatski savjetnici imaju i nedostatke:
- u nestandardnoj situaciji, na primjer, s naglim skokom stope, savjetnik može reagirati neadekvatno, a trgovac će izgubiti novac;
- Neki profesionalni savjetnici zahtijevaju da plaćate mjesečnu naknadu za njihovo korištenje.
Zatim, razmotrite nekoliko savjetnika za trgovanje otvorenog koda. Mogu se preuzeti sa GitHub stranice, instalirati i koristiti za trgovanje. Također možete poboljšati izvorni kod i kreirati robota za sebe.
GEKKO bot
Ovo je dokazani stručni savjetnik koji se pojavio prije mnogo godina. Mnogi trgovci su počeli trgovati s ovim robotom. Trenutno je više ne podržavaju kreatori, ali je dostupna za besplatno preuzimanje sa GitHub-a. Može se koristiti na kripto berzama, može prikupljati informacije o tržištu i postavljati narudžbe. GEKKO bot ima mnogo podešavanja pomoću kojih možete testirati algoritam trgovanja, kao i prilagoditi i optimizirati sistem za sklapanje poslova. Ima skup gotovih strategija koje se mogu prilagoditi. Takođe je moguće kreirati sopstveni sistem trgovanja. Podržava 23 razmjene, uključujući: Bitfinex, EXMO, Bittrex, Bitstamp.
Zenbot
Zenbot savjetnik za trgovanje kriptovalutama koristi umjetnu inteligenciju za trgovanje. Moguće ga je prilagoditi prema Vašim željama. Kompatibilan je sa većinom operativnih sistema. Može obavljati visokofrekventne transakcije, trgovati nekoliko sredstava istovremeno. Osim toga, ovaj bot može zaraditi novac na arbitraži kriptovaluta. Ali nema grafičko korisničko sučelje. Mogućnost trgovanja na sljedećim berzama: Bittrex, Quadria, GDAX, Pollniex i Gemini.
OsEngine
OsEngine je paket aplikacija za trgovanje dionicama. To uključuje:
- Podaci – koriste se za učitavanje istorijskih podataka iz različitih izvora.
- Optimizator – koristi se za testiranje jedne strategije.
- Tester – za testiranje nekoliko algoritama trgovanja, ali bez promjene parametara. Može raditi istovremeno na nekoliko vremenskih okvira i instrumenata.
- Rudar – traži profitabilne obrasce na grafikonu. Pronađene forme se mogu koristiti u stvarnom trgovanju.
- Trader – modul za trgovanje.
OsEngine koristi više od trideset ugrađenih sistema trgovanja, među kojima postoje trendovi (na primjer, strategije Billa Williamsa ili Jesse Livermorea), kontratrend (na primjer, korištenje balastnih linija,
Bollinger ) i arbitraža. Može se koristiti na nekim međunarodnim berzama (dostupne veze LMAX, InteractivBrokers i ninja trading), na
MOEX- u (Transac,
Quik , Most Asts, Plaza 2, SmartCom) i mjenjačnicama kriptovaluta (Bitstamp, Bitfinex, Kraken, LiveCoin, ExMo, Binance, ZB , Bitmex, BitMax). Također je kompatibilan s jednom Oanda forex burzom. Postoje i drugi popularni savjetnici za trgovanje otvorenog koda, na primjer, TradingBot, za trgovanje na Moskovskoj berzi preko Atentis brokera ili jednostavnog TradingBot robota.