Open Source to oprogramowanie licencjonowane zgodnie ze standardami open source. Zasada otwartości obejmuje nie tylko sferę tworzenia oprogramowania. Na przykład projektanci zapewniają dostęp do bezpłatnych szablonów i czcionek. W niektórych krajach agencje rządowe przechodzą na oprogramowanie typu open source. W Niemczech miasto Monachium zdecydowało się przejść na system operacyjny LiMux, który jest dostosowaną wersją Ubuntu. W Hamburgu urzędnicy postanowili użyć pakietu biurowego Phoenix zamiast pakietu Microsoft Office. Rząd Wielkiej Brytanii przeszedł z formatu PDF na ODF. We Francji żandarmeria korzysta z systemu operacyjnego Ubuntu i bezpłatnego LibreOffice.
Wymagania dotyczące oprogramowania open source
Wymieńmy główne wymagania, jakie musi spełniać aplikacja dystrybuowana na licencji Open Source:
- programy są rozpowszechniane bezpłatnie;
- Oprogramowanie jest dostarczane z kodem źródłowym, jeśli nie ma go w podstawowym zestawie, możesz go swobodnie pobrać lub uzyskać w inny sposób;
- kod można zmienić, a fragmenty kodu można wykorzystać w innych projektach, a zmodyfikowane aplikacje należy redystrybuować na warunkach licencji Open Source;
- dyskryminacja jakichkolwiek grup ludzi jest niedozwolona, np. w USA istnieją ograniczenia w eksporcie programów, ale wolna licencja nie może ustanawiać własnych zakazów;
- Licencja Open Source zezwala na wszystkie zastosowania aplikacji, więc osobiste przekonania moralne dewelopera nie kolidują z dystrybucją, na przykład klauzule takie jak: „zakaz używania do badań genetycznych” są niedopuszczalne;
- wszystkie zasady związane z licencją Open Source są takie same dla wszystkich użytkowników, niedozwolone są dodatkowe umowy, takie jak nieujawnianie;
- licencja nie może być powiązana z programem, deweloper korzystający tylko z części kodu ma prawa, które nadał pełny produkt;
- użytkownik może wybrać, z czego będzie korzystał, np. zabronione jest wymaganie, aby oprogramowanie dostarczane wraz z Open Source było open source.
Projekty open source – jaka jest ich cecha
Większość aplikacji rozpowszechnianych na licencji Open Source ma następujące różnice:
- programy są pisane przez tych, którzy ich używają, dlatego programiści monitorują kod, szybko naprawiają błędy i wykrywane luki;
- większość produktów jest kompatybilna z kilkoma systemami operacyjnymi;
- społeczność programistów Open Source jest otwarta na kontakt z użytkownikami, którzy mogą przesyłać swoje sugestie;
- zazwyczaj aktualizacje darmowego oprogramowania są publikowane częściej niż komercyjne, dlatego błędy są eliminowane szybciej;
- użytkownicy, jeśli chcą, mogą wesprzeć aplikację, którą lubią, pieniędzmi;
- Ryzyko zainfekowania komputera lub smartfona podczas instalacji programu Open Source jest minimalne, ponieważ są one dostarczane z kodem źródłowym.
Historia powstania wolnego oprogramowania
Za założyciela ruchu wolnego oprogramowania uważa się Richarda Stallmana. Pracując w Laboratorium Sztucznej Inteligencji na MIT, przyczynił się do rozwoju wolnego oprogramowania. Na przykład w pisaniu edytora tekstu EMACS dla komputerów PDP. W 1984 Stallman zrezygnował z pracy w MIT i założył Projekt GNU. Jego entuzjaści ukuli termin „wolne oprogramowanie” i opracowali manifest GNU. [identyfikator podpisu = „attachment_12331” align = „aligncenter” szerokość = „650”]
Licencje Open Source
Istnieje kilka różnych licencji Open Source. Aby ułatwić ich zrozumienie, podajemy poniższy rysunek, który pokazuje, czym się od siebie różnią.
- Licencja MIT została opracowana w jednej z wiodących instytucji edukacyjnych w Stanach Zjednoczonych – Massachusetts Institute of Technology. Prawie całkowicie pokrywa się z trzyklauzulową wersją licencji BSD, do której dodano tylko jedną klauzulę, która zabrania używania nazwiska autora w reklamie. Pod nim wyszły: XFree86, Expat, PuTTY i inne produkty.
- Licencja BSD pojawiła się po raz pierwszy na początku lat 80. ubiegłego wieku w celu dystrybucji systemu operacyjnego o tej samej nazwie. W przypadku tej licencji dostępne są następujące opcje:
- Oryginalna licencja BSD jest pierwszą oryginalną licencją, zwaną także licencją czteroklauzulową.
- Zmodyfikowana licencja BSD jest licencją trzyklauzulową, jedna klauzula jest w niej wyłączona, co obliguje w reklamie do wskazania, że niniejsza aplikacja korzysta z oprogramowania opracowanego na Uniwersytecie Kalifornijskim.
- Licencja Intel opracowana dla aplikacji chronionych patentami. Nie jest wspierany przez inicjatywę Open Source.
Licencje używane w Git Hub [/ caption]
- Powszechna Licencja Publiczna GNU jest najpopularniejszą licencją. Pojawiła się w 1988 roku. W 1991 roku pojawiła się ulepszona wersja GPL v2, która nie straciła na aktualności do dnia dzisiejszego. W 2006 roku została przyjęta licencja GPL v2.
- GNU Lesser General Public License, w skrócie GNU LGPL, została stworzona w celu łączenia bibliotek z oprogramowaniem rozpowszechnianym na innych licencjach.
- Licencja Apache pozwala na modyfikację i redystrybucję programów zarówno w źródłach, jak i plikach binarnych. Oprócz praw do produktu przewiduje się również przeniesienie patentów.
- Guile jest podobne do GNU GPL, ale dodaje klauzulę zezwalającą na łączenie oprogramowania typu open source i niewolnego, więc nie może być uważane za ścisły copyleft, niemniej jednak jest zgodne z GNU GPL.
- Common Public License został opracowany przez IBM dla jego rozwoju. Pozwala na zmianę kodu i wykorzystanie go w programach komercyjnych. Ta licencja była używana przez Microsoft dla Windows Installer XML.
- Licencja Publiczna Mozilli (MPL) to złożona licencja, która nie jest ścisłym copyleft.
- Licencja Sun Public License podobna do MPL, z niewielkimi zmianami, na przykład zamiast Sun Microsystems z listy Netscape.
Istnieją również inne mniej popularne licencje, takie jak Guile, Common Public License, Mozilla Public License i inne. https://youtu.be/oAW5Dh9q3PM
Przykłady projektów open source
Rozwój jądra Linux i aplikacji GNU stał się podstawą dla innych aplikacji Open Source. Pojawienie się Netscape zainteresowało duże firmy IT. Od tego czasu powstało wiele różnych produktów. Najpierw wspominamy o Debianie, który wspierał Fundację Wolnego Oprogramowania od 1994 do 1995 roku, a później powstała organizacja non-profit Software in the Public Interest, która nadal finansowała projekt. W ramach tego projektu powstał nie tylko system operacyjny, ale także pakiet biurowy LibreOffice, przeglądarka Firefox, klient poczty Evolution, aplikacja do nagrywania płyt CD K3b, odtwarzacz wideo VCL, edytor obrazów GIMP i inne produkty . Apache Software Foundation, firma non-profit, powstała jako projekt wsparcia oprogramowania Open Source.Najpopularniejszym produktem tej organizacji jest serwer WWW o tej samej nazwie. Firma obsługuje obecnie dużą liczbę projektów dystrybuowanych na licencji Apache. Sponsorami ASF są Microsoft, Amazon i Huawei. Inną firmą open source jest Red Hat. Głównym rozwojem którego jest system operacyjny oparty na jądrze Linux. Zajmuje się nie tylko oprogramowaniem, ale także wsparciem technicznym i szkoleniem specjalistów. Został przejęty przez IBM w 2018 roku. Google opracowuje również bezpłatne oprogramowanie. Rozwija i wspiera następujące projekty: biblioteka TensorFlow do tworzenia systemów uczenia maszynowego, język Go, program Kubernetes do automatyzacji wdrażania oprogramowania i inne produkty. W nauce Open Source dotyczy nie tylko oprogramowania, ale także publikacji prac,wzajemna ocena i wsparcie zasobów edukacyjnych. W 1991 roku Paul Ginsparg zorganizował archiwum elektroniczne arXiv w Laboratorium Los Alamos, w którym można znaleźć prace nie tylko z fizyki, ale także z medycyny, matematyki i innych nauk. CERN posiada również portal z otwartymi pracami naukowymi. [identyfikator podpisu = „attachment_12326” align = „aligncenter” width = „1263”]
Jak zaangażować się w projekt Open Source
Jeśli chcesz poćwiczyć programowanie i uzupełnić swoje CV, udział w rozwoju produktu Open Source jest dokładnie tym, czego potrzebujesz. Powiemy Ci etapami, co jest do tego potrzebne. Przede wszystkim musisz zarejestrować się na GitHub i wybrać projekt, w którym będziesz uczestniczyć. Powinno Cię to zainteresować. Dobrze, jeśli zawiera dużo zadań, które możesz wykonać. Należy również zwrócić uwagę na popularność projektu, może to określać liczba gwiazdek. Ważne jest również określenie, jak aktywny jest rozwój i kiedy dokonano ostatnich zmian. Po wybraniu interesującego projektu trzeba znaleźć kuratora i nawiązać z nim interakcję. Następnym krokiem jest wybór zadania. Na początek zaleca się wybór najprostszego zadania. Najważniejsze, że możesz to rozwiązać.Następnie przenieś projekt na swoje miejsce i zainstaluj wszystkie niezbędne narzędzia. Po rozwiązaniu problemu zasugeruj zmianę kodu w repozytorium. Aby to zrobić, musisz przesłać swój kod do GitHub i kliknąć przycisk „Wyciągnij żądanie”. Następnie musisz podać nazwę swojego żądania i opis. Następnie musisz poczekać, aż kurator zaakceptuje lub odrzuci proponowane zmiany. Jeśli po podjęciu się zadania pojawią się inne pilne sprawy lub zdasz sobie sprawę, że nie będziesz w stanie sobie poradzić, możesz odmówić wykonania zadania. To normalne, ale musisz poinformować kuratorów o swojej decyzji.Następnie musisz podać nazwę swojego żądania i opis. Następnie musisz poczekać, aż kurator zaakceptuje lub odrzuci proponowane zmiany. Jeśli po podjęciu się zadania pojawią się inne pilne sprawy lub zdasz sobie sprawę, że nie będziesz w stanie sobie poradzić, możesz odmówić wykonania zadania. To normalne, ale musisz poinformować kuratorów o swojej decyzji.Następnie musisz podać nazwę swojego żądania i opis. Następnie musisz poczekać, aż kurator zaakceptuje lub odrzuci proponowane zmiany. Jeśli po podjęciu się zadania pojawią się inne pilne sprawy lub zdasz sobie sprawę, że nie będziesz w stanie sobie poradzić, możesz odmówić wykonania zadania. To normalne, ale musisz poinformować kuratorów o swojej decyzji.
Korzystanie z Open Source w rozwoju robotów handlowych
Doradca handlowy lub
robot to program, który dokonuje transakcji na giełdzie zgodnie z ustalonym algorytmem. Mogą handlować całkowicie niezależnie lub w trybie półautomatycznym. W drugim przypadku po prostu wysyłają sygnały o transakcji, a trader podejmuje ostateczną decyzję. Wymieńmy zalety robotów handlowych:
- Przedsiębiorca nie musi sam śledzić cen.
- Expert Advisors działają ściśle według danego algorytmu, nie mają emocji.
- Roboty reagują znacznie szybciej niż ludzie.
Ale oprócz zalet, automatyczne doradcy mają również wady:
- w niestandardowej sytuacji, np. przy gwałtownym skoku kursu, doradca może zareagować niewłaściwie, a trader straci pieniądze;
- niektórzy profesjonalni doradcy muszą płacić abonament.
Następnie przyjrzyjmy się kilku doradcom handlowym Open Source. Można je pobrać z GitHub, zainstalować i używać do handlu. Możesz także ulepszyć kod źródłowy i stworzyć robota dla siebie.
Bot GEKKO
To sprawdzony doradca, który pojawił się wiele lat temu. Wielu traderów zaczęło handlować tym robotem. Obecnie nie jest wspierany przez jego twórców, ale można go bezpłatnie pobrać z GitHub. Może być używany na giełdach kryptowalut, może zbierać informacje rynkowe i składać zlecenia. Bot GEKKO posiada wiele ustawień, dzięki którym możesz przetestować algorytm handlowy, a także dostosować i zoptymalizować system do zawierania transakcji. Posiada zestaw gotowych strategii, które możesz dostosować. Możliwe jest również stworzenie własnego systemu transakcyjnego. Obsługuje 23 giełdy, w tym: Bitfinex, EXMO, Bittrex, Bitstamp.
Zenbot
Doradca handlowy Zenbot do handlu kryptowalutami wykorzystuje sztuczną inteligencję do handlu. Istnieje możliwość dostosowania go według własnych życzeń. Jest kompatybilny z większością systemów operacyjnych. Może dokonywać transakcji o wysokiej częstotliwości, handlować wieloma aktywami jednocześnie. Ponadto ten bot może zarabiać na arbitrażu kryptowalut. Ale nie ma graficznego interfejsu użytkownika. Możliwość handlu na następujących giełdach: Bittrex, Quadria, GDAX, Pollniex i Gemini.
OsEngine
OsEngine to zestaw aplikacji do handlu giełdowego. Obejmuje:
- Dane – służy do ładowania danych historycznych z różnych źródeł.
- Optymalizator – służy do testowania jednej strategii.
- Tester – do testowania kilku algorytmów handlowych, ale bez zmiany parametrów. Może pracować jednocześnie na kilku ramach czasowych i instrumentach.
- Miner – wyszukuje dochodowe formacje na wykresie. Znalezione formularze można wykorzystać w prawdziwym handlu.
- Trader to moduł do handlu.
linii Bollingera ) oraz arbitraż. Może być używany na niektórych międzynarodowych giełdach (dostępny LMAX, InteractivBrokers i ninja), na
MOEX (Transac,
Quik , Most Asts, Plaza 2, SmartCom) i giełdach kryptowalut (Bitstamp, Bitfinex, Kraken, LiveCoin, ExMo, Binance, ZB , Bitmex, BitMax). Kompatybilny również z jedną giełdą Oanda Forex. Istnieją inni popularni doradcy handlowi Open Source, na przykład TradingBot, do handlu na moskiewskiej giełdzie za pośrednictwem brokera Atentis lub prostego robota TradingBot.