Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme

Программирование

Open Source je programska oprema, ki se distribuira pod licenco, ki je skladna z odprtokodnimi standardi. Načelo odprtosti ne zajema le obsega razvoja programske opreme. Na primer, oblikovalci omogočajo dostop do brezplačnih predlog in pisav. V nekaterih državah vladne agencije prehajajo na odprtokodno programsko opremo. V Nemčiji se je mesto München odločilo za prehod na operacijski sistem LiMux, ki je prilagojena različica Ubuntuja. V Hamburgu so se uradniki odločili za uporabo pisarniškega paketa Phoenix namesto Microsoft Officea. Vlada Združenega kraljestva je prešla z uporabe formata dokumenta PDF na ODF. V Franciji žandarmerija uporablja operacijski sistem Ubuntu in brezplačen LibreOffice.
Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme

Zahteve za odprtokodno programsko opremo

Tukaj so glavne zahteve, ki jih mora izpolnjevati aplikacija, distribuirana pod odprtokodno licenco:

  • programi se distribuirajo brezplačno;
  • Programska oprema je opremljena z izvorno kodo, če je ni v osnovnem paketu, jo je mogoče prosto prenesti ali pridobiti na drug način;
  • kodo je mogoče spreminjati in dele kode uporabiti v drugih projektih, spremenjene aplikacije pa je treba distribuirati pod pogoji odprtokodne licence;
  • diskriminacija katere koli skupine ljudi ni dovoljena, na primer v ZDA obstajajo omejitve glede izvoza programov, vendar brezplačna licenca ne more vzpostaviti lastnih prepovedi;
  • odprtokodna licenca dovoljuje vse načine uporabe aplikacij, tako da razvijalčeva osebna moralna prepričanja ne motijo ​​distribucije, na primer postavke, kot so: “prepovedano je uporabljati za genetske raziskave” so nesprejemljive;
  • vsa pravila v zvezi z odprtokodno licenco so enaka za vse uporabnike, dodatni dogovori, kot so pogodbe o nerazkritju podatkov, so prepovedani;
  • licence ni mogoče vezati na program, razvijalec, ki uporabi samo del kode, ima pravice, ki jih je dal polni izdelek;
  • uporabnik lahko sam izbere, kaj bo uporabljal, na primer, prepovedano je zahtevati, da je programska oprema, ki je priložena Open Source, nujno odprta.

Odprtokodni projekti – kaj je njihova posebnost

Večina aplikacij, distribuiranih pod odprtokodno licenco, ima naslednje razlike:

  • programe pišejo tisti, ki jih uporabljajo, zato razvijalci spremljajo kodo, hitro odpravijo napake in odkrite ranljivosti;
  • večina izdelkov je združljivih z več operacijskimi sistemi;
  • skupnost odprtokodnih razvijalcev je odprta za komunikacijo z uporabniki, ki lahko dajejo predloge;
  • Ponavadi brezplačne posodobitve programske opreme izhajajo pogosteje kot komercialne, zato se napake hitreje odpravijo;
  • uporabniki lahko po želji podprejo aplikacijo, ki jim je všeč, z denarjem;
  • tveganje za okužbo računalnika ali pametnega telefona pri namestitvi odprtokodnega programa je minimalno, saj je priložena izvorna koda.

Zgodovina brezplačne programske opreme

Richard Stallman velja za ustanovitelja gibanja za brezplačno programje. Med delom v Laboratoriju za umetno inteligenco na Tehnološkem inštitutu Massachusetts se je ukvarjal z razvojem brezplačne programske opreme. Na primer pri pisanju urejevalnika besedil EMACS za računalnike PDP. Leta 1984 je Stallman pustil službo na MIT in ustanovil projekt GNU. Njegovi navdušenci so skovali izraz “prosta programska oprema” in razvili manifest GNU.

Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme
Richard Stallman [/ caption] Leta 1985 je Stallman ustanovil Free Software Foundation (FSF), ki je bila uporabljena za razvoj brezplačne programske opreme s prostovoljnimi donacijami. Leta 1989 je bila uvedena prva splošna javna licenca (GPL), ki je zaščitila uporabnike tako, da jim je dala pravico do kopiranja, spreminjanja in distribucije aplikacij. Kasneje je prišla licenca MIT in BSD, razvit na Univerzi v Kaliforniji. Do leta 1991 je bil razvit neodvisen operacijski sistem, ki pa ni imel jedra. Istega leta je Linus Torvalds predstavil jedro Linuxa, ki je bilo leta 1992 licencirano pod GPL. Sredi 90. let prejšnjega stoletja so se velika podjetja začela zanimati za odprtokodni trg. Prvi je bil Netscape. Brskalnik, ki ga je takrat izdala, je veljal za enega najbolj priljubljenih. Leta 1998 je odprla svoj vir. Po prenehanju obstoja podjetja je na osnovi kode Navigator nastal brskalnik Mozilla Firefox. Zdaj Open Source Initiative, ki je bila ustanovljena leta 1998, razvija in promovira odprtokodno programsko opremo. Kaj pomeni odprta koda: https://youtu.be/8G3Dz_GyPI0

Odprtokodne licence

Obstaja več različnih odprtokodnih licenc. Za lažje razumevanje podajamo naslednjo sliko, ki prikazuje, v čem se med seboj razlikujejo. [caption id="attachment_12320" align="aligncenter" width="697"]
Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme Odprtokodne licence

Zdaj pa se pogovorimo o najbolj priljubljenih med njimi.

  1. Licenca MIT je bila razvita na eni vodilnih izobraževalnih ustanov v ZDA – Massachusetts Institute of Technology. Skoraj popolnoma sovpada s tričlensko različico licence BSD, dodaja le eno klavzulo, ki prepoveduje uporabo imena avtorja v oglaševanju. Pod njim so izšli: XFree86, Expat, PuTTY in drugi izdelki.
  2. Licenca BSD se je prvič pojavila v zgodnjih osemdesetih za distribucijo istoimenskega operacijskega sistema. Obstajajo naslednje različice te licence:
    • Izvirna licenca BSD je prva izvirna licenca, imenujemo jo tudi štiristavčna.
    • Spremenjena licenca BSD je licenca s tremi členi, izključuje eno klavzulo, ki zahteva oglaševanje, ki označuje, da ta aplikacija uporablja programsko opremo, razvito na Univerzi v Kaliforniji.
    • Intelova licenca , ki je bila razvita za patentno zaščitene aplikacije. Open Source Initiative ga ne podpira.
      Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme
      Licence, uporabljene v Git Hubu
  3. GNU General Public License je najbolj priljubljena licenca. Pojavila se je leta 1988. Leta 1991 se je pojavila izboljšana različica GPL v2, ki do danes ni izgubila pomembnosti. Leta 2006 je bila sprejeta licenca GPL v2.
  4. GNU Lesser General Public License ali na kratko GNU LGPL je bila ustvarjena za povezovanje knjižnic s programsko opremo, ki se distribuira pod drugimi licencami.
  5. Licenca Apache vam omogoča spreminjanje in redistribucijo programske opreme v izvorni in dvojiški obliki. Poleg pravic do izdelka je zagotovljen tudi prenos patentov.
  6. Guile je podoben GNU GPL, vendar doda klavzulo, ki dovoljuje kombiniranje odprtokodne programske opreme z neprosto programsko opremo, tako da je ni mogoče šteti za strogo avtorsko levo, vendar je kljub temu združljiva z GNU GPL.
  7. Skupno javno licenco je razvil IBM za njihov razvoj. Omogoča spreminjanje kode in njeno uporabo v komercialnih programih. To licenco je uporabil Microsoft za Windows Installer XML.
  8. Mozilla Public License (MPL) je zapletena licenca, ki ne upošteva strogega avtorskega prava.
  9. Sun Public License je podobna MPL, vendar so manjše spremembe, kot je Sun Microsystems namesto Netscape.

Obstajajo tudi druge manj običajne licence, kot so Guile, Common Public License, Mozilla Public License in druge. https://youtu.be/oAW5Dh9q3PM

Primeri odprtokodnih projektov

Razvoj jedra Linuxa in aplikacij GNU je postal osnova za druge odprtokodne aplikacije. Prihod Netscapea je zanimal velika IT podjetja. Od takrat je bilo razvitih veliko različnih izdelkov. Začnimo z Debianom, ki je od leta 1994 do 1995 podpiral Free Software Foundation, kasneje pa je bila ustanovljena neprofitna organizacija Software in the Public Interest, ki je še naprej financirala projekt. V okviru tega projekta ni nastal samo operacijski sistem, ampak tudi pisarniški paket LibreOffice, brskalnik Firefox, e-poštni odjemalec Evolution, aplikacija za zapisovanje CD-jev K3b, video predvajalnik VCL, urejevalnik slik GIMP in drugi izdelki. Neprofitno podjetje Apache Software Foundation je začelo kot odprtokodni projekt, ki je podpiral programsko opremo. Najbolj priljubljen izdelek te organizacije je istoimenski spletni strežnik. Zdaj podjetje vzdržuje veliko število projektov, distribuiranih pod licenco Apache. Sponzorji ASF so Microsoft, Amazon in Huawei. Drugo podjetje, ki sodeluje pri odprtokodnih projektih, je Red Hat. Glavni razvoj tega je operacijski sistem na jedru Linuxa. Ukvarja se ne le s programsko opremo, temveč tudi s tehnično podporo in usposabljanjem strokovnjakov. Leta 2018 ga je prevzel IBM. Google razvija tudi brezplačno programsko opremo. Razvija in vzdržuje naslednje projekte: knjižnico TensorFlow za razvoj sistemov za strojno učenje, jezik Go, program Kubernetes za avtomatizirano uvajanje programske opreme in druge izdelke. V znanosti se odprtokodnost ne nanaša samo na programsko opremo, ampak tudi na objavo del, pregledovanje in podpiranje izobraževalnih virov. Paul Ginsparg je leta 1991 v laboratoriju v Los Alamosu organiziral elektronski arhiv arXiv, v katerem je mogoče najti dela ne samo s področja fizike, temveč tudi iz medicine, matematike in drugih ved. CERN ima tudi portal z odprtimi znanstvenimi članki.
Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme Open Source operacijski sistemi – odprtokodni operacijski sistemi [/ caption]

Kako se vključiti v odprtokodni projekt

Če želite vaditi programiranje in razširiti svoj življenjepis, potem je sodelovanje pri razvoju odprtokodnega izdelka točno to, kar potrebujete. Povedali vam bomo korak za korakom, kaj je za to potrebno. Najprej se morate registrirati na GitHub in izbrati projekt, v katerem boste sodelovali. Zagotovo vas zanima. No, če bo imelo veliko nalog, ki jih lahko opravite. Prav tako morate biti pozorni na priljubljenost projekta, ki jo lahko določite s številom zvezdic. Prav tako je pomembno ugotoviti, kako aktiven je razvoj in kdaj so bile narejene zadnje spremembe. Ko izberete zanimiv projekt, morate najti kustosa in z njim vzpostaviti interakcijo. Naslednji korak je izbira naloge. Za začetek je priporočljivo izbrati najpreprostejšo nalogo. Glavna stvar je, da jo lahko rešite. Po tem prenesite projekt k sebi in namestite vsa potrebna orodja. Ko rešite težavo, dajte predloge za spremembo kode v repozitoriju. Če želite to narediti, morate svojo kodo naložiti na GitHub in klikniti gumb »Pull request«. Po tem boste morali vnesti ime vaše zahteve in opis. Po tem morate počakati, da kustos sprejme ali zavrne predlagane spremembe. Če so se po tem, ko ste začeli z nalogo, pojavile druge nujne stvari ali ste ugotovili, da tega ne morete opraviti, potem lahko nalogo opustite. To je normalno, vendar morate o svoji odločitvi obvestiti kustose. Po tem boste morali vnesti ime vaše zahteve in opis. Po tem morate počakati, da kustos sprejme ali zavrne predlagane spremembe. Če so se po tem, ko ste začeli z nalogo, pojavile druge nujne stvari ali ste ugotovili, da tega ne morete opraviti, potem lahko nalogo opustite. To je normalno, vendar morate o svoji odločitvi obvestiti kustose. Po tem boste morali vnesti ime vaše zahteve in opis. Po tem morate počakati, da kustos sprejme ali zavrne predlagane spremembe. Če so se po tem, ko ste začeli z nalogo, pojavile druge nujne stvari ali ste ugotovili, da tega ne morete opraviti, potem lahko nalogo opustite. To je normalno, vendar morate o svoji odločitvi obvestiti kustose.
Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme

Uporaba odprte kode pri razvoju trgovalnih robotov

Trgovalni svetovalec ali
robot je program, ki izvaja transakcije na borzi po vnaprej določenem algoritmu. Trgujejo lahko popolnoma samostojno in v polavtomatskem načinu. V drugem primeru preprosto pošljejo trgovalne signale in trgovec sprejme končno odločitev. Navajamo prednosti trgovalnih robotov:

  1. Trgovcu ni treba sam spremljati cen.
  2. Strokovni svetovalci delujejo strogo po danem algoritmu, nimajo čustev.
  3. Roboti reagirajo veliko hitreje kot ljudje.

Toda poleg prednosti imajo avtomatski svetovalci tudi slabosti:

  • v nestandardni situaciji, na primer z močnim skokom tečaja, se lahko svetovalec neustrezno odzove in trgovec bo izgubil denar;
  • Nekateri poklicni svetovalci zahtevajo, da za njihovo uporabo plačate mesečno naročnino.

Nato razmislite o več odprtokodnih svetovalcih za trgovanje. Prenesete jih lahko s spletnega mesta GitHub, namestite in uporabite za trgovanje. Izboljšate lahko tudi izvorno kodo in ustvarite robota zase.

GEKKO bot

To je preizkušen strokovni svetovalec, ki se je pojavil pred mnogimi leti. Mnogi trgovci so začeli trgovati s tem robotom. Ustvarjalci ga trenutno ne podpirajo več, vendar je na voljo za brezplačen prenos z GitHub. Lahko se uporablja na kripto borzah, lahko zbira tržne informacije in daje naročila. GEKKO bot ima veliko nastavitev, s katerimi lahko preizkusite algoritem trgovanja, pa tudi prilagodite in optimizirate sistem za sklepanje poslov. Ima nabor že pripravljenih strategij, ki jih je mogoče prilagoditi. Prav tako je možno ustvariti svoj sistem trgovanja. Podpira 23 borz, vključno z: Bitfinex, EXMO, Bittrex, Bitstamp.

Zenbot

Svetovalec za trgovanje s kriptovalutami Zenbot za trgovanje uporablja umetno inteligenco. Možno ga je prilagoditi po vaših željah. Združljiv je z večino operacijskih sistemov. Lahko izvaja visokofrekvenčne transakcije, trguje z več sredstvi hkrati. Poleg tega lahko ta bot zasluži denar na arbitraži kriptovalut. Nima pa grafičnega uporabniškega vmesnika. Možnost trgovanja na naslednjih borzah: Bittrex, Quadria, GDAX, Pollniex in Gemini.
Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme

OsEngine

OsEngine je nabor aplikacij za trgovanje z delnicami. Vključuje:

  • Podatki – uporablja se za nalaganje zgodovinskih podatkov iz različnih virov.
  • Optimizator – uporablja se za testiranje ene strategije.
  • Tester – za testiranje več algoritmov trgovanja, vendar brez spreminjanja parametrov. Hkrati lahko deluje na več časovnih okvirih in instrumentih.
  • Rudar – išče donosne vzorce na grafikonu. Najdene obrazce je mogoče uporabiti pri realnem trgovanju.
  • Trader – modul za trgovanje.

Kaj je odprtokodna programska oprema, projekti, primeri odprtokodne programske opreme OsEngine uporablja več kot trideset vgrajenih trgovalnih sistemov, med katerimi so trending (na primer strategije Billa Williamsa ali Jesseja Livermora), countertrend (na primer uporaba balastnih linij,
Bollinger ) in arbitraža. Lahko se uporablja na nekaterih mednarodnih borzah (na voljo so povezave LMAX, InteractivBrokers in ninja trading), na
MOEX (Transac,
Quik , Most Asts, Plaza 2, SmartCom) in borzah kriptovalut (Bitstamp, Bitfinex, Kraken, LiveCoin, ExMo, Binance, ZB , Bitmex, BitMax). Združljivo tudi z eno forex borzo Oanda. Obstajajo tudi drugi priljubljeni odprtokodni svetovalci za trgovanje, na primer TradingBot, za trgovanje na moskovski borzi prek posrednika Atentis ali preprostega robota TradingBot.

info
Rate author
Add a comment