Какво е Open Source, проекти, примери за софтуер с отворен код

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

Open Source е софтуер, който се разпространява под лиценз, който отговаря на стандартите за отворен код. Принципът на откритост обхваща не само обхвата на разработката на софтуер. Например, дизайнерите предоставят достъп до безплатни шаблони и шрифтове. В някои държави правителствените агенции преминават към софтуер с отворен код. В Германия град Мюнхен реши да премине към операционната система LiMux, която е персонализирана версия на Ubuntu. В Хамбург служителите решиха да използват офис пакета Phoenix вместо Microsoft Office. Правителството на Обединеното кралство премина от използването на PDF формат на документи към ODF. Във Франция жандармерията използва операционната система Ubuntu и безплатния LibreOffice.
Какво е Open Source, проекти, примери за софтуер с отворен код

Изисквания за софтуер с отворен код

Ето основните изисквания, на които трябва да отговаря едно приложение, разпространявано под лиценз с отворен код:

  • програмите се разпространяват безплатно;
  • Софтуерът идва с изходен код, ако не е в основния пакет, тогава може да бъде изтеглен свободно или получен по друг начин;
  • кодът може да бъде модифициран и части от кода могат да се използват в други проекти, като модифицираните приложения трябва да се разпространяват при условията на лиценза за отворен код;
  • дискриминацията на каквито и да било групи хора не е разрешена, например в САЩ има ограничения за износа на програми, но свободният лиценз не може да установи свои собствени забрани;
  • лицензът за отворен код позволява всички начини за използване на приложения, така че личните морални убеждения на разработчика не пречат на разпространението, например елементи като: “забранено е използването за генетични изследвания” са неприемливи;
  • всички правила, свързани с лиценза за отворен код, са еднакви за всички потребители, допълнителни споразумения като споразумения за неразкриване на информация са забранени;
  • лицензът не може да бъде обвързан с програмата, разработчикът, който използва само част от кода, има правата, които е дал пълният продукт;
  • потребителят може да избере какво ще използва, например, забранено е да се изисква софтуерът, доставен с Open Source, да бъде задължително отворен.

Open Source проекти – каква е тяхната особеност

Повечето приложения, разпространявани под лиценз с отворен код, имат следните разлики:

  • програмите се пишат от тези, които ги използват, следователно разработчиците наблюдават кода, бързо коригират грешки и открити уязвимости;
  • повечето продукти са съвместими с множество операционни системи;
  • общността на разработчиците с отворен код е отворена за комуникация с потребители, които могат да правят предложения;
  • Обикновено безплатните софтуерни актуализации излизат по-често от комерсиалните, така че грешките се коригират по-бързо;
  • потребителите, ако желаят, могат да подкрепят приложението, което харесват, с пари;
  • рискът от заразяване на компютър или смартфон при инсталиране на програма с отворен код е минимален, тъй като те идват с изходен код.

Историята на свободния софтуер

Ричард Столман се счита за основател на движението за свободен софтуер. Докато работи в Лабораторията за изкуствен интелект към Масачузетския технологичен институт, той участва в разработването на безплатен софтуер. Например при писане на текстовия редактор EMACS за PDP компютри. През 1984 г. Столман напуска работата си в MIT и основава проекта GNU. Неговите ентусиасти измислиха термина “свободен софтуер” и разработиха манифеста на GNU.

Какво е Open Source, проекти, примери за софтуер с отворен код
Ричард Столман [/ caption] През 1985 г. Столман създава Фондацията за свободен софтуер (FSF), която е използвана за разработване на свободен софтуер чрез доброволни дарения. През 1989 г. е въведен първият Общ публичен лиценз (GPL), който защитава потребителите, като им дава правото да копират, променят и разпространяват приложения. По-късно дойде лицензът на MIT и BSD, разработен в Калифорнийския университет. До 1991 г. е разработена независима операционна система, но тя няма ядро. Същата година Линус Торвалдс представи ядрото на Linux, което беше лицензирано под GPL през 1992 г. В средата на 90-те години на миналия век големи компании започнаха да се интересуват от пазара на Open Source. Първият беше Netscape. Браузърът, който пусна по това време, се счита за един от най-популярните. През 1998 г. тя отвори своя източник. След като компанията престана да съществува, браузърът Mozilla Firefox е създаден въз основа на кода на Navigator. Сега Open Source Initiative, основана през 1998 г., разработва и популяризира софтуер с отворен код. Какво е значението на отворен код: https://youtu.be/8G3Dz_GyPI0

Лицензи с отворен код

Има няколко различни лиценза за отворен код. За по-лесното им разбиране предоставяме следната фигура, която показва как се различават един от друг. [caption id="attachment_12320" align="aligncenter" width="697"]
Какво е Open Source, проекти, примери за софтуер с отворен код Лицензи за отворен код

Сега нека поговорим за най-популярните от тях.

  1. Лицензът на MIT е разработен в една от водещите образователни институции в САЩ – Масачузетския технологичен институт. Той почти напълно съвпада с версията с три клаузи на BSD лиценза, добавя само една клауза, която забранява използването на името на автора в рекламата. Под него излязоха: XFree86, Expat, PuTTY и други продукти.
  2. Лицензът BSD се появява за първи път в началото на 80-те години за разпространение на едноименната операционна система. Има следните варианти на този лиценз:
    • Оригиналният BSD лиценз е първият оригинален лиценз, наричан още четириклауза.
    • Модифицираният BSD лиценз е лиценз с три клаузи, изключва една клауза, която изисква реклама, която да показва, че това приложение използва софтуер, разработен в Калифорнийския университет.
    • Лиценз на Intel , разработен за приложения, защитени с патент. Не се поддържа от Open Source Initiative.
      Какво е Open Source, проекти, примери за софтуер с отворен код
      Лицензи, използвани в Git Hub
  3. GNU General Public License е най-популярният лиценз. Тя се появява през 1988 г. През 1991 г. се появи подобрена версия на GPL v2, която не е загубила своята актуалност и до днес. През 2006 г. беше приет GPL v2 лиценз.
  4. GNU Lesser General Public License или накратко GNU LGPL е създаден за свързване на библиотеки със софтуер, разпространяван под други лицензи.
  5. Лицензът на Apache ви позволява да модифицирате и разпространявате софтуера както в изходен, така и в двоичен код. В допълнение към правата върху продукта е предвидено и прехвърляне на патенти.
  6. Guile е подобен на GNU GPL, но добавя клауза, която позволява софтуер с отворен код да се комбинира с несвободен софтуер, така че не може да се счита за строг копилефт, но въпреки това е съвместим с GNU GPL.
  7. Общият публичен лиценз е разработен от IBM за техните разработки. Позволява ви да промените кода и да го използвате в комерсиални програми. Този лиценз е използван от Microsoft за Windows Installer XML.
  8. Публичният лиценз на Mozilla (MPL) е сложен лиценз, който не следва строго копилефт.
  9. Публичният лиценз на Sun е подобен на MPL, но има малки промени, като например Sun Microsystems вместо Netscape.

Има и други по-рядко срещани лицензи като Guile, Common Public License, Mozilla Public License и други. https://youtu.be/oAW5Dh9q3PM

Примери за проекти с отворен код

Разработването на ядрото на Linux и GNU приложенията станаха основа за други приложения с отворен код. Появата на Netscape заинтересува големите ИТ компании. Оттогава са разработени много различни продукти. Да започнем с Debian, който подкрепя Фондацията за свободен софтуер от 1994 до 1995 г., а по-късно организацията с нестопанска цел Software in the Public Interest е създадена, за да продължи финансирането на проекта. Като част от този проект беше създадена не само операционната система, но и офис пакетът LibreOffice, браузърът Firefox, имейл клиентът Evolution, приложението за запис на CD K3b, видеоплейърът VCL, редакторът на изображения GIMP и други продукти. Компанията с нестопанска цел Apache Software Foundation стартира като проект с отворен код, който поддържа софтуер. Най-популярният продукт на тази организация е едноименният уеб сървър. Сега компанията поддържа голям брой проекти, разпространявани под лиценза на Apache. Сред спонсорите на ASF са Microsoft, Amazon и Huawei. Друга компания, участваща в проекти с отворен код, е Red Hat. Основната разработка на която е операционната система върху ядрото на Linux. Занимава се не само със софтуер, но и с техническа поддръжка и обучение на специалисти. През 2018 г. беше придобит от IBM. Google също разработва безплатен софтуер. Тя разработва и поддържа следните проекти: библиотеката TensorFlow за разработване на системи за машинно обучение, езикът Go, програмата Kubernetes, предназначена за автоматизиране на внедряването на софтуер, и други продукти. В науката Open Source се отнася не само до софтуер, но и до публикуване на произведения, преглед и подкрепа на образователни ресурси. През 1991 г. Пол Гинспарг организира електронния архив arXiv в лабораторията в Лос Аламос, в който могат да се намерят произведения не само по физика, но и по медицина, математика и други науки. CERN също има портал с отворени научни статии.
Какво е Open Source, проекти, примери за софтуер с отворен код Операционни системи с отворен код – операционни системи с отворен код [/ caption]

Как да се включите в проект с отворен код

Ако искате да практикувате програмиране и да разширите автобиографията си, тогава участието в разработката на продукт с отворен код е точно това, от което се нуждаете. Ще ви кажем стъпка по стъпка какво е необходимо за това. На първо място, трябва да се регистрирате в GitHub и да изберете проект, в който ще участвате. Трябва да представлява интерес за вас. Е, ако ще има много задачи, които можете да направите. Трябва също да обърнете внимание на популярността на проекта, тя може да се определи от броя на звездите. Също така е важно да се определи колко активно е развитието и кога са направени последните промени. След като изберете интересен проект, трябва да намерите куратор и да установите взаимодействие с него. Следващата стъпка е да изберете задача. Като начало се препоръчва да изберете най-простата задача. Основното е, че можете да го разрешите. След това прехвърлете проекта на себе си и инсталирайте всички необходими инструменти. След като разрешите проблема, направете предложения за промяна на кода в хранилището. За да направите това, трябва да качите кода си в GitHub и да щракнете върху бутона „Pull request“. След това ще трябва да въведете името на вашата заявка и описание. След това трябва да изчакате кураторът да приеме или отхвърли предложените промени. Ако след като сте започнали задачата, са се появили други спешни неща или сте разбрали, че не можете да го направите, тогава можете да изоставите задачата. Това е нормално, но трябва да информирате кураторите за решението си. След това ще трябва да въведете името на вашата заявка и описание. След това трябва да изчакате кураторът да приеме или отхвърли предложените промени. Ако след като сте започнали задачата, са се появили други спешни неща или сте разбрали, че не можете да го направите, тогава можете да изоставите задачата. Това е нормално, но трябва да информирате кураторите за решението си. След това ще трябва да въведете името на вашата заявка и описание. След това трябва да изчакате кураторът да приеме или отхвърли предложените промени. Ако след като сте започнали задачата, са се появили други спешни неща или сте разбрали, че не можете да го направите, тогава можете да изоставите задачата. Това е нормално, но трябва да информирате кураторите за решението си.
Какво е Open Source, проекти, примери за софтуер с отворен код

Използване на отворен код при разработването на роботи за търговия

Търговският съветник или
робот е програма, която извършва транзакции на борсата по предварително зададен алгоритъм. Могат да търгуват както напълно самостоятелно, така и в полуавтоматичен режим. Във втория случай те просто изпращат търговски сигнали и търговецът взема окончателното решение. Изброяваме предимствата на роботите за търговия:

  1. Търговецът не е необходимо сам да следи цените.
  2. Експертните съветници работят стриктно по зададен алгоритъм, те нямат емоции.
  3. Роботите реагират много по-бързо от хората.

Но освен предимствата, автоматичните съветници имат и недостатъци:

  • в нестандартна ситуация, например при рязък скок на курса, съветникът може да реагира неадекватно и търговецът ще загуби пари;
  • Някои професионални съветници изискват да плащате месечна такса, за да ги използвате.

След това помислете за няколко съветника за търговия с отворен код. Те могат да бъдат изтеглени от сайта GitHub, инсталирани и използвани за търговия. Можете също така да подобрите изходния код и да създадете робот за себе си.

GEKKO бот

Това е доказан експертен съветник, появил се преди много години. Много търговци започнаха да търгуват с този робот. В момента той вече не се поддържа от създателите, но е достъпен за безплатно изтегляне от GitHub. Може да се използва на крипто борси, може да събира пазарна информация и да прави поръчки. GEKKO бот има много настройки, с които можете да тествате алгоритъма за търговия, както и да коригирате и оптимизирате системата за извършване на сделки. Има набор от готови стратегии, които могат да бъдат персонализирани. Също така е възможно да създадете своя собствена система за търговия. Поддържа 23 борси, включително: Bitfinex, EXMO, Bittrex, Bitstamp.

Zenbot

Съветникът за търговия с криптовалута Zenbot използва изкуствен интелект за търговия. Възможно е да го персонализирате според вашите желания. Съвместим е с повечето операционни системи. Може да извършва високочестотни транзакции, да търгува с няколко актива едновременно. В допълнение, този бот може да печели пари от арбитраж на криптовалута. Но той няма графичен потребителски интерфейс. Възможност за търговия на следните борси: Bittrex, Quadria, GDAX, Pollniex и Gemini.
Какво е Open Source, проекти, примери за софтуер с отворен код

OsEngine

OsEngine е пакет от приложения за борсова търговия. Включва:

  • Данни – използва се за зареждане на исторически данни от различни източници.
  • Оптимизатор – използва се за тестване на една стратегия.
  • Тестер – за тестване на няколко алгоритми за търговия, но без промяна на параметрите. Може да работи едновременно на няколко времеви рамки и инструменти.
  • Miner – търси печеливши модели на графиката. Намерените форми могат да се използват в реална търговия.
  • Trader – модул за търговия.

Какво е Open Source, проекти, примери за софтуер с отворен код OsEngine използва повече от тридесет вградени системи за търговия, сред които има тенденция (например стратегиите на Бил Уилямс или Джеси Ливърмор), контратенденция (например използване на баластни линии,
Bollinger ) и арбитраж. Може да се използва на някои международни борси (налични връзки LMAX, InteractivBrokers и нинджа търговия), на
MOEX (Transac,
Quik , Most Asts, Plaza 2, SmartCom) и борси за криптовалута (Bitstamp, Bitfinex, Kraken, LiveCoin, ExMo, Binance, ZB , Bitmex, BitMax). Също така съвместим с една валутна борса Oanda. Има и други популярни съветници за търговия с отворен код, например TradingBot, за търговия на Московската борса чрез брокера Atentis или обикновен робот TradingBot.

info
Rate author
Add a comment