З відкритим закритим кодом. Використання з відкритим вихідним кодом для створення успішних комерційних продуктів. Чи можна продати продукти з відкритим кодом


Більшість програмного забезпечення, що використовується, поширюється в скомпільованому вигляді. Це говорить про те, що вихідний код таких програм проходить через спеціальний компілятор, який перетворює його на мову, зрозумілу комп'ютеру. У свою чергу програмне забезпечення, яке використовує відкритий вихідний кодє повною протилежністю.

Такий код, як правило, поширюється разом з відкомпільованою версією програми, що дає можливість всіляко модифікувати або вдосконалювати її для виконання більш широкого спектра завдань. Розробники таких програм вважають, що згодом відкритий вихідний код дозволить програмному продукту стати кориснішим і позбавити його великої кількості помилок.

Існує кілька критеріїв відповідностідля програм з відкритим вихідним кодом:

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

Розглянемо один із найяскравіших прикладів програмного забезпечення, яке супроводжує відкритий вихідний код, який набув всесвітнього поширення. На початку 90-х років минулого століття фінський студент Лінус Торвальдс розробив абсолютно нову операційну систему, засновану на Unix, яка відома сьогодні як Linux. Система була випущена під ліцензійною угодою GNU General Public License, Де містилося визначення відкритого вихідного коду з юридичної точки зору. Досить велика кількість програмістів почала використовувати та вдосконалювати цю операційну систему. Зібравши доопрацювання від програмістів по всьому світу в єдине ціле, в 1994 Лінус Торвальдс випускає Linux версії 1.0. До цього нумерація версій велася починаючи з нуля.

Згодом з'явилося якесь загальне занепокоєння споживачів щодо відсутності гарантії, а також технічної підтримкиподібного програмного забезпечення. Тому компанія Red Hat Software створює офіційний програмний пакет Official Red Hat Linux, який їм вдається продавати. Найбільш значною особливістю такої продається операційної системистало наявність гарантії та технічної підтримки, Що важливо.

Деякі інші компанії також займалися розробкою нових версій Linux, призначених для продажу, причому ці пакети були додатково укомплектовані різним програмним забезпеченнямсеред яких: інтернет-браузер Mozilla, створений на ядрі Netscape, веб-сервер Apache, мова для підготовки веб-сценаріїв Perl, формат графічних файлів PNG та багато інших. Крім того, існують версії перелічених програмних пакетів, розроблені для операційної системи Windows та Android. Це говорить про те, що програми з відкритим кодомдоступні не лише для комп'ютерів, а й для мобільних пристроїв.

Підсумовуючи, варто сказати, що програми, з якими в комплекті йде їхній відкритий вихідний код, мають ряд мінусів. Насамперед це різноманіття версій, в результаті якого доопрацювання однієї програми може спричинити створення нового незалежного програмного пакета. Друге, що треба наголосити, - це використання користувачами застарілих програм, у яких може бути не усунуто деякі помилки, немає можливості працювати з новими форматами файлів тощо. Прикладом такого випадку можна назвати програми Microsoft Wordта Open Office. Якщо в першому пакеті буде записана якась складна формула, то другий просто не зможе її прочитати.

Також серед відкритого ПЗ відсутні так звані спеціальні пакети, призначені для ведення бухгалтерії та звітності. Ще один недолік безпосередньо пов'язаний з апаратною частиною, річ у тому, що при переході з Windows на Linux необхідно враховувати, що Linux-драйвери існують далеко не для всіх моделей пристроїв комп'ютера, що викличе неправильну роботу системи.

Однак не забуватимемо і про позитивні сторони такого програмного забезпечення, адже відкритий вихідний код має безліч переваг. По-перше, все відкрите ПЗ поширюється безкоштовно. По-друге, такі програми з'являються часом набагато швидшекомерційних через те, що у розробці бере участь одразу кілька тисяч чоловік і не кожної компанії під силу оплачувати роботу кількох тисяч програмістів. Останнє, що слід зазначити, стосується можливості швидкого усунення помилок, завдяки чому програми з відкритим кодом працюють стабільніше за комерційні.

Широку популярність здобули підкріплені потужною маркетинговою підтримкою зусилля виробників обчислювальної техніки з просування рішень open-source software(Програмне забезпечення з відкритим вихідним кодом). У сучасному офіційному вживанні російською це явище прийнято називати вільним програмним забезпеченням(СПО).

Суть концепції полягає у кількох принципах створення та поширення СПО:

  • доступність вихідних кодів всім бажаючих;
  • ліцензійна політика розповсюдження на основі однієї з ліцензій, схвалених спільнотою (див. веб-сайт opensource. org);
  • можливість безпосередньої участі у розробці та виправленні помилок у ПЗ своїми силами;
  • можливість змінювати деякі функції ПЗ та адаптувати до нових умов (за умови доступності змін до всього співтовариства);
  • максимальна сумісність із відкритими стандартами;
  • можливість роботи в різних операційних системах та на декількох платформах (кросплатформність).

Зазначені принципи використовуються при створенні більшості

СПО. Варто зазначити, що існує помітна різниця між безкоштовнимі вільнимПЗ. Незважаючи на те, що більшість ліцензій СПО припускають безкоштовне поширення, однієї цієї властивості недостатньо для того, щоб можна було вважати вільним.

Відкритий код вже здобув низку важливих перемог над найсильнішими із виробників власного (пропрієтарного) ПЗ. Зокрема, веб-сервер Apacheнабагато випереджає аналогічні продукти інших компаній (у тому числі Microsoft)за часткою ринку завдяки своїй низькій вартості, незалежності від постачальників, наявності безлічі, які мають досвід його адміністрування користувачів та підтримці розробників. Linuxобійшов за обсягами постачання всі інші види Unixдля платформи Intel,включаючи довгий час, що утримувала лідерство SCO.СУБД із відкритим кодом займають міцні позиції на ринках ОС із відкритим кодом та популярних інтернет-рішень молодшого класу. Загроза власному ПЗ походить від переваг СПО, аналогічних переваг Інтернету, тобто. відкритості, свободи адаптації тощо.

Вільне програмне забезпечення вже займає міцні позиції в секторі серверних операційних систем, інфраструктури Інтернету, серверів веб-додатків, СУБД для малих підприємств та відділів, що базуються на веб-баз даних з динамічною генерацією веб-сторінок, технічних та вбудованих обчислювальних систем, а також ПЗ для серверних пристроїв Говорячи про інфраструктуру Інтернету, слід зазначити, що більшість пристроїв працює під управлінням операційних систем та іншого програмного забезпечення з відкритим вихідним кодом. До цих пристроїв відносяться сервери доменних імен, маршрутизатори, комутатори, міжмережеві екрани, шлюзи, балансувальники навантаження, сервери додатків та баз даних тощо.

Враховуючи ці досягнення, СПО ставить під загрозу фірми, основним джерелом доходів яких є плата за клієнтський доступ та ліцензійні збориза власне ПЗ. Відкритий код переносить на програмне забезпечення діючу ринку устаткування бізнес-модель старіння і перетворення на товар масового споживання - модель, до якої важко адаптуватися традиційному постачальнику ПЗ, особливо лідеру.

Багато виробників, що використовують бізнес-моделі відкритого коду, з самого початку розвивалися не як постачальники традиційного ПЗ. Спостерігаючи зростання частки ринку СПО та міцність його позицій на стратегічних інтернет-ринках, постачальники традиційного програмного забезпечення ідентифікують для себе загрози з боку відкритого коду та можливості, що надаються новими бізнес-моделями. Природно, постачальники традиційного ПЗ мають можливість запозичити ці бізнес-моделі цілком чи частково, залежно від асортименту своєї продукції. Але навіть і в цьому випадку відкритий код є відчутною і реальною загрозою звичним схемам ведення бізнесу софтверних компаній.

Існує чотири основні загрози для закритих компаній із боку відкритого коду.

  • Ціновий тиск.Оскільки ліцензії відкритого коду, по суті, вимагають безкоштовної дистрибуції ПЗ та його модифікацій, ціни на подібні традиційні продукти необхідно знижувати, щоб не поступатися СПО та боротися зі втратою частки ринку. Наприклад, SCOне може брати по 2000 дол, за Unixдля платформи Intel,у той час як Linuxдоступний безкоштовно, a Microsoftмонополізує сектор настільних систем. Традиційні виробники можуть, однак, частково відшкодувати собі втрати, роблячи свої програмні продукти якіснішими порівняно з СП і стягуючи за це додаткову плату.
  • Досить хороша функціональність.«Достатньо хороші» програми (але не найкращі) можуть частково потіснити продукти постачальників традиційного програмного забезпечення, які надто часто бувають націлені на масовий ринок. Більш складна (і дорога) функціональність на ранніх етапах свого розвитку завжди орієнтована відносно невелику групу користувачів-фахівців. Але навіть діючим на цьому ринку виробникам все ж таки потрібно чітко розуміти, що ринок високорозвиненого ПЗ розширюватиметься і поглиблюватиметься. Якщо розвинена функціональність зможе залучити ширше коло користувачів, замовники, природно, купуватимуть альтернативи з відкритим кодом, нехай і менш розвинені. На дуже великих масових ринках домінуючі постачальники СПО, окрім нарощування обсягів поставок, мають масу можливостей для зростання за рахунок реалізації додаткових стратегій у галузі продуктів та послуг. Розмір масового ринку сам по собі забезпечує зниження цін за рахунок високих обсягів поставок, що дозволяє кінцевим споживачам отримувати відчутні прибутки навіть за незначного збільшення вартості своєї продукції.

У деяких випадках СПО може навіть обійти традиційні продукти за функціональністю. Наприклад, Apacheстав першим із веб-серверів, у якому з'явилася популярна серед провайдерів інтернет-функція IP-aliasing,що дозволяє розміщувати на одній системі кілька доменних імен Інтернету.

  • «Ефекти мережі»,обумовлені знанням та вивченням ПЗ та інструментальних засобів масового використання. Витрати навчання користувачів нової технології становлять значну частину загальної вартості володіння, перевищує ціну сам програмний продукт. Компанія з великою базою користувачів, знайомих з продуктом та інструментами, що його супроводжують, може використовувати це знайомство, випускаючи нові версії або виходячи на суміжні ринки. Цей вид ефектів мережі може змінюватись в залежності від типу користувача - розробники ПЗ використовують API,системні адміністратори - певні засоби адміністрування, користувачі працюють з графічними інтерфейсами користувача, а керівники встановлюють відносини з постачальниками. Сформувавшись, ця мережа партнерів та користувачів рішень з відкритим кодом вже не руйнується і дозволяє вирішувати маркетингові проблеми дрібнішого порядку, на кшталт придбання прихильників та лояльності замовників.
  • Тиск стандартизації.Остання загроза з боку руху відкритого коду – це його інструментальні засобита культура, яка вважає своїм ворогом усілякі технологічні бар'єри, споруджені виробниками традиційного ПЗ.

Останнім часом найбільш швидко розвивається в програмне забезпеченнявважається так званий «комерційнийopen-source»,тобто. СП, підтримуване звичайними комерційними компаніями. Одним із лідерів цього напряму варто вважати корпорацію Sun,яка розробляє кілька великих проектів у цьому секторі: ОС OpenSolaris,СУБД MySQL,офісний пакет OpenOffice.orgта середовище віртуалізації Virtual Box.Як правило, є кілька версій такого ПЗ, у тому числі і комерційна. При оплаті ліцензії користувач отримує технічну підтримку, а також у ряді випадків особливі інструменти зручної роботи, не доступні у рамках відкритої ліцензії. Тобто за невеликих потреб компанії можуть користуватися вільними або безкоштовними версіями ПЗ, а при зростанні запитів купити комерційні розширення, не змінюючи при цьому нічого в своїй інфраструктурі та додатках. Таким чином, комерційний варіант СПО безпосередньо конкурує з розробками традиційних компаній, наприклад Microsoft,яка активно створює спеціальні схеми ліцензування для використання у середовищі Інтернету (йдеться про серверне ПЗ).

У результаті, СПО в Інтернеті грає систему освіти, підтримуючи і розвиваючи основні принципи побудови Мережі. Крім того, використання СПО є актуальним з точки зору орієнтації на надання послуг замість продажу товарів. Тому при створенні інтернет-систем варто орієнтуватися на відкриті стандарти та програмне забезпечення, що реалізує їх, оскільки тільки такий шлях забезпечить можливість розвитку бізнесу та отримання нових можливостей електронних ринків.

Використання СПО для підтримки інтернет-технологій є природним і необхідним з точки зору властивостей масштабування, глобальності та сумісності. Наприклад, збільшення кількості серверів або інших пристроїв інфраструктури не вимагає додаткових вкладень у програмне забезпечення, що забезпечує більшу гнучкість, ніж у випадку з пропрієтарним програмним забезпеченням. Це стає особливо актуальним, коли вартість ПЗ перевищує апаратну складову проекту. Вимоги глобальності та сумісності реалізуються завдяки добрій підтримці міжплатформенності СПО та використання відкритих стандартів, що дозволяє навіть за наявності багатьох конкуруючих продуктів та платформ на ринку зберігати високий рівень сумісності.

У світлі сучасних розробок сервіс-додатків на основі веб-технологій СПО у поєднанні з недорогими комп'ютерами (неттопами та нетбуками) може значно потіснити традиційні настільні та мобільні системи, основою яких є операційна система Windowsта традиційні офісні пакети. Використання легких спеціалізованих ОС із графічним інтерфейсом на основі ядра Linuxі сучасних веб-браузерів дозволяє виконувати на нетплатформах більшість повсякденних завдань, використовуючи лише СПО.

У 1990-ті роки вільне програмне забезпечення вважалося екзотикою в корпоративному середовищі, а єдиним помітним конкурентом пропрієтарних гігантів на чолі з Microsoft довгий час була компанія Red Hat, проте з другої половини 2000-х років ситуація почала швидко змінюватися. Відкрите програмне забезпечення стало мейнстримом для багатьох великих компаній, і з'явилися десятки надійних постачальників відкритого ПЗ, які досягли належного високого рівня експертизи та досвіду для того, щоб обслуговувати великих та вимогливих корпоративних клієнтів.

На 2014 рік діють чимало гравців, які у ряді напрямків успішно конкурують із постачальниками комерційного ПЗ. Крім Red Hat, це такі орієнтовані на відкритий софт організації, як Google, Apache Software, Novell, SUSE, Acquia та ін. На ринку з'являється все більше OpenSource аналогів існуючих пропрієартних рішень. Співтовариства розробників відкритого ПЗ стають сильнішими і підвищують якість та функціональність продуктів.

Як правило, сама технологія пропонується безкоштовно, а комерціалізується вона за рахунок підтримки та кастомізації. Це створює додаткову конкуренцію та, як наслідок, сприяє розвитку відкритих програмних продуктів.

Майже у всіх галузях та напрямках діяльності існує можливість використання ПЗ на основі відкритого вихідного коду. Майже кожен пропрієтарний ПЗ має діючий аналог з відкритим вихідним кодом:

  • Cisco VPN – OpenVPN,
  • Oracle Database - PostgreSQL
  • Microsoft Hyper-V – OpenVZ,
  • MS Active Directory – Samba,
  • Avaya IP Office - Asterisk і т.д.)

Виходячи з конкретних завдань бізнесу, можна порівняти вартість та терміни впровадження рішення на базі пропрієтарного ПЗ та OpenSource.

Відкрите ПЗ у країнах світу

США

У березні 2016 року адміністрація президента США надала попередню версію законопроекту про використання державними відомствами. Учасники ринку підтримали ініціативу.

Згідно з документом, оприлюдненим Білим домом, американські державні установи можуть ділитися один з одним вихідним кодом для тих чи інших проектів з метою підвищення їх ефективності та позбавлення необхідності розробляти продукт заново. Докладніше про це.

Індія

У жовтні 2011 р. стало відомо, що уряд штату Пенджаб ухвалив придбати ПЗ від Microsoft, скасовуючи прийняте в 2008 р. рішення про встановлення безкоштовного ПЗ на 46 000 комп'ютерів у 4 956 школах. "Ми вирішили переглянути попереднє рішення", - заявив Бальдео Пурушарта (Baldeo Purushartha), міністр шкільної освіти штату.

Уряд Пенджабу запустив програму інформатизації для учнів 6-12 класів у 2004-2005 роках. Департамент ІКТ-освіти штату Пенджаб реалізує проект, в рамках якого в усіх початкових школах організовуються комп'ютерні класи необхідним обладнанням, ПЗ та широкосмуговим підключенням до інтернету. При цьому на державному рівні широку підтримку отримало рішення Bharat Operating System Solutions (BOSS), протестоване та сертифіковане Linux Foundation для роботи в школах завдяки своїй фінансовій доступності.

За заявою президента штату Пенджаб, станом на 2008 р. мінімальна вартість оновлення ПЗ з ліцензією Microsoft – на 16 578 комп'ютерів із розрахунку 1 375 рупій на комп'ютер – становила 23 млн. рупій за п'ять років. З цієї причини у вересні 2008 р. уряд штату Пенджаб вирішив придбати та встановлювати BOSS у всіх державних початкових школах і заявив, що з 2011 року всі учні початкових шкіл навчатимуться користування BOSS. Роботи було завершено у квітні 2011 року, включаючи навчання 6600 вчителів.

Але 8 серпня 2011 року, після всебічного аналізу результатів проекту, керівник департаменту шкільної освіти штату Пенджаб заявив, що "департамент шкільної освіти повернеться до використання програмного забезпечення від Microsoft... для навчання дітей у початкових класах державних шкіл". Вартість оновлення ліцензій становитиме близько 7 млн. рупій, 3,77 млн. з яких уже виділено урядом.

Більше того, близько 90 000 комп'ютерів буде встановлено в державних школах, підключених до мережі EDUASAT, через яку учні зможуть дивитися прямі включення з різних лекцій. Згідно з попередніми розрахунками, початкова ціна програмного забезпечення та ліцензії Microsoft складе 30 млн. рупій. У цю суму не входить вартість обладнання тощо.

Раніше, у лютому 2011 року, було ухвалено рішення про використання BOSS для роботи в мережі EDUASAT. Але тепер, за словами Пурушарта: "З метою якнайповнішого використання встановлених комп'ютерів, на яких учні освоюватимуть ПО Microsoft, ми хочемо використовувати Microsoft також і в EDUASAT".

Зазначимо, що Пенджаб був першим штатом, який активно запровадив Linux у школах. В даний час BOSS, як і раніше, використовується в індійських штатах Харьяна, Гуджарат, Керала і Уттар Прадеш.

Німеччина

Згідно з недавнім дослідженням Технологічного інституту Джорджії (США), Німеччина посідає четверте місце у світі за рівнем проникнення СПО в держсекторі. У 2001 році на Linux перейшло Міністерство закордонних справ ФРН (а разом з ним – усі посольства та консульства). Кілька разів консалтингова компанія McKinsey підтверджувала: зовнішньополітичне відомство суттєво економить, використовуючи Linux, OpenOffice та Thunderbird замість майкрософтівського набору з Windows, Office та Outlook. Йшлося навіть, що дипломати витрачають на IT менше, ніж співробітники будь-якого іншого держоргану.

Але фокус у тому, що в експлуатації умовно безкоштовний софтіноді дорожче, ніж, безумовно, платний. Динозаври на кшталт Microsoft можуть здійснити супровід якісніше та дешевше, ніж невеликі компанії, що займаються підтримкою Linux. І іноді буває вигідніше придбати ліцензію. Тому, наприклад, те саме німецьке зовнішньополітичне відомство цього року повертається до софту Microsoft. Чиновники оцінили в грошах перманентні проблеми з техпідтримкою, а також складність в освоєнні СПО (на це скаржилися багато співробітників) і висловилися в тому дусі, що скупий платить двічі.

Росія

Рішеннями уряду та президента РФДмитра Медведєва, вітчизняне відкрите програмне забезпечення у 2008 році запроваджено у всіх школах Російської Федерації та буде встановлено у всіх державних та бюджетних організаціях для забезпечення національної безпеки у сфері ІТ.

Проект "Пінгвін" - запровадження Відкритого ПЗ

Проект "Пінгвін" - проект впровадження Технологій Лінукс та Відкритого ПЗ до шкіл та вузів Росії в 2009-2010рр. фінансується ФАО – Федеральним Агентством Освіти РФ. За контрактом за проектом "Пінгвін" мають бути виконані три етапи:

  1. Доопрацювання підручників та методичного забезпечення
  2. Розробка технічної підтримки та Інтернет-порталів
  3. Навчання 60 тисяч викладачів технологіям Лінукс та Відкритому ПЗ

1. Розробка базових Підручників з інформатики для вузів та шкіл на базі Відкритого ПЗ відповідно до держстандартів та вимог ЄДІ з інформатики та ІКТ була виконана у 2008-09рр. 2. Розробка Інтернет-підтримки з базовими підручниками інформатики та базовими пакетами Відкритого ПЗ для Віндуз та Лінукс була виконана у 2005-2009рр. 3. Пробні курси для викладачів інформатики та вчителів шкіл Технологіям Лінукс та Відкритому ПЗ були проведені та відпрацьовані в 2005-2007рр. спільно з московськими педвузами МПГУ та МДПУ за підтримки ЮНЕСКО, корпорації ІБМ та ЛінуксЦентру.

    • ВАК, проф., док. комп. наук 16:32, 15 жовтня 2009 (UTC)

Відкрите ПЗ - думка Президента РФ

На цій зустрічі Д.А.Медведєвсказав:

"...Якщо ми зараз підсядемо повністю на голку іноземного програмного забезпеченняі «закладемося» на довгі роки, ми з неї не зліземо. І розвиватимемося всупереч світовим тенденціям. У той же час оголосити, що ми завтра всі комп'ютери в школах (а потенційно це набагато більше серйозна мережакомп'ютерів) переведемо на програми з відкритим кодом, із вільною ліцензією, теж неможливо, тому що є проблеми стикування, є технологічні проблеми. Тобто тут повної готовності теж немає. Що робити?

Ми пропонуємо піти компромісним шляхомі цей шлях зараз почав реалізовуватися. На три роки придбати ліцензійний пакет із базових програм (маються на увазі насамперед операційні системи, архіватори, офіси, редактори, «фотошопи» – загалом, все, що зазвичай використовується користувачами, в тому числі і в школах), але в той же час не зупинятися, а працювати над вітчизняним пакетом програм з відкритим доступом (і зараз ми про це докладніше поговоримо), щоб потім, зрештою, через три роки (якщо вийде раніше – ще краще),

Створити таку оптимальну модель, при якій школи і, потенційно, всі державні установи зможуть вибирати, що їм потрібно: або продовжувати користуватися комерційними продуктами власним коштом, а не за рахунок федеральних коштів, або перейти на вже абсолютно адаптовану, прийнятну для них систему, засновану на відкритому доступі, на відкритому коді...".

Грудень 2010 року: Путін розпорядився перевести владу на Linux

Історія документа про перехід органів влади на вільне ПЗ триває з 2007 р., коли в Мінінформзв'язку почали розробляти «Концепцію розвитку розробки та використання вільного програмного забезпечення в РФ», яка була опублікована навесні 2008 р. Однак, відставка міністра Леоніда Реймана і призначення на його посаду Ігоря Щеголєва спричинили перегляд концепції.

Незважаючи на це, навесні 2008 р., за кілька днів до передачі влади Дмитру Медведєву Володимир Путін, ще будучи президентом Росії, згадав план міграції на СПО федеральних установ у списку своїх доручень уряду, таким чином, поставивши це завдання самому собі.

Пакети Відкритого ПЗ для шкіл

Пакети Відкритого ПЗдля шкіл розраховані на встановлення програм у школах та домашніх комп'ютерах з операційними системами Windowsта Linux. Компакт-диск Лінукс Live-CD розрахований для роботи з Відкритим ПЗ на домашніх комп'ютерах з Windows без встановлення Linux на ЕОМ.

Рішеннями уряду РФвітчизняне відкрите програмне забезпечення у 2008 та 2009 роках. було розіслано у всі школи Російської Федерації і буде встановлено у всіх державних та бюджетних організаціях для забезпечення національної безпеки у сфері ІТ.

Відкрита операційна система Linux

Відкритий офісний пакет прорам

Відкритий офісний пакет Open Officeможе вільно встановлюватися та використовуватися не тільки на персональних комп'ютерахз ОС Linux, а й на комп'ютерах з ОС Windows. При цьому документи та файли, підготовлені в офісному пакеті MS Office, можуть читатися та оброблятися в пакеті Open Office.

Склад Відкритого офісного пакету Open Office:

  1. OpenOffice.org Writer- Текстовий редактор Writer з багатими можливостями для створення листів, книг, звітів, інформаційних бюлетенів, брошур та інших документів, сумісний із MS Office.
  2. OpenOffice.org Calc- Електронні таблиці Calc мають просунуті засоби аналізу, побудови діаграм та можливості прийняття рішень очікувані від високоякісних електронних таблиць, сумісних із MS Office.
  3. OpenOffice.org Impress- редактор презентацій Impress забезпечує всі загальні засоби представлення мультимедіа, такі як спеціальні ефекти, анімація та малювання. Сумісний з форматом файлу Microsoft PowerPoint, і може зберігати вашу роботу в численних графічних форматах, включаючи Macromedia Flash (SWF).
  4. OpenOffice.org Base- база даних Base забезпечує інструментальні засоби до роботи з базами даних у межах простого інтерфейсу. Він може створити та редагувати форми, звіти, запити, таблиці, уявлення та відносини, так щоб управління пов'язаною базою даних було майже таким самим, як в інших популярних додатках баз даних. Base включає HSQLDB як його заданий за умовчанням механізм реляційної бази даних. Він може також використовувати dBASE, Microsoft Access, MySQL або Oracle або будь-яку ODBC або JDBC сумісну базу даних.
  5. Open Office Drawвекторний графічний редактор Draw, за допомогою якого можна виконувати все від простих діаграм або блок-схем до тривимірних художніх робіт. Draw може імпортувати графіку з багатьох поширених форматів і зберігати її у більш ніж 20 форматах, включаючи PNG, HTML, PDF і Flash.
  6. Gimp- растровий графічний редактор Gimp, програма для створення та обробки растрової графіки. Частково підтримується векторні графіки.

Відкритий текстовий редактор Writer

OpenOffice.org Writer - текстовий процесорі візуальний редактор гіпертекстів, входить до складу OpenOffice.org і є вільним програмним забезпеченням (випускається під ліцензією LGPL).

Writer схожий Microsoft Word і функціональність цих редакторів приблизно дорівнює. Надає користувачеві сучасний інструментарій для набору, редагування та форматування документів.

Поряд зі звичним інтерфейсом та функціональністю:

* створення та оформлення абзаців тексту та сторінок, * додавання розділів та колонтитулів, * вставка зображень та мультимедійних об'єктів, * попередній перегляді друк документів, * запис змін та рецензування текстів, * автоматичне оформлення змісту, покажчиків та виносок, * додавання макросів та елементів управління, * робота з таблицями, * перевірка орфографії та багато іншого,

Концепція застосування стилів - чудове рішення, що полегшує створення та форматування документів. Робота зі стилями підтримується у всіх компонентах офісного пакету, але саме в OpenOffice.org Writer вона реалізована найповніше.

П'ять груп стилів: абзаців, символів, сторінок, врізок та списків – надають користувачеві безліч можливостей для легкого форматування документів. Спеціальна панель «Стилі та форматування» дозволяє керувати стилями, змінюючи існуючі та створюючи нові. І чим складніший документ, чим частіше доводиться змінювати його, тим очевиднішою стає перевага стильового оформлення.

Інший інструмент - Навігатор - надає можливості швидкого переходу по документу, вибираючи як орієнтири заголовки, виноски, врізання або інші об'єкти.

Як і для інших компонентів, для Writer існує велика кількість доповнень (розширень), що покращують базову функціональність компонента або надають додаткові функції, наприклад, перевірку граматики або публікацію в MediaWiki.

Writer підтримує велику кількість форматів для імпорту та експорту файлів, у тому числі збереження у PDF та імпорт docx. А надсилання файлу електронною поштою здійснюється одним натисканням кнопки.

Відкриті електронні таблиці Calc

start: OpenOffice.org Calc - програма для роботи з електронними таблицями. З його допомогою можна аналізувати дані, що вводяться, займатися розрахунками, прогнозувати, зводити дані з різних листівта таблиць, будувати діаграми та графіки.

Calc – актуальний та затребуваний у бізнес-середовищі компонент OpenOffice.org для роботи з електронними таблицями. Улюблений інструмент бухгалтерів та менеджерів для створення звітності.

Покрокове введення формул у комірки електронних таблиць за допомогою Майстра полегшує формування складних та вкладених формул, демонструє описи кожного параметра та кінцевий результат на будь-якому етапі введення.

Умовне форматування та стилі осередків дозволяють упорядкувати готові дані, а зведені таблиці та графіки показують підсумки роботи.

Більше двох десятків форматів імпорту та експорту файлів, включаючи функції імпорту тексту, дозволяють оперувати практично будь-якими даними. Також за допомогою спеціального інструменту можна імпортувати дані з інших джерел, наприклад баз даних, а можна створити оновлюваний діапазон, щоб імпортовані дані завжди були актуальними.

Підтримуються зв'язки між різними електронними таблицями та спільне редагування даних (починаючи з версії OpenOffice.org 3.0).

Доступні різноманітні налаштування для друку готових аркушів на принтері: масштаб, поля, колонтитули. А вбудована перевірка орфографії, як у текстовому редакторі, дозволить покращити якість готового звіту.

Відкритий векторний графічний редактор Draw

OpenOffice.org Draw- Векторний графічний редактор, за функціональністю порівнянний з CorelDRAW, входить до складу OpenOffice.org.

Векторний графічний редактор Drawє інструментом малювання, що використовує векторну графіку. Він містить низку сервісів, що дозволяють швидко створювати всі види малюнків. Векторна графіка дозволяє зберігати та відображати зображення у вигляді векторів (дві точки та лінія), а не у вигляді набору пікселів (крапок на екрані). Векторна графіка спрощує збереження та масштабування зображень.

графічний редактор Drawідеально інтегрований у систему OpenOffice.org, що дозволяє обмін малюнками між будь-якими модулями системи дуже просто. Наприклад, якщо ви створюєте малюнок у Draw, то легко можете використовувати його в документі Writer за допомогою копіювання та вставки. Ви також можете працювати з графікою безпосередньо в модулях Writer та Impress, використовуючи підмножину функцій та інструментів з Draw.

Пакет включає повнофункціональні «конектори» між фігурами, які можуть використовувати різноманітні стилі ліній та дозволяють малювати креслення, наприклад, блок-схеми.

Необхідність наявності векторного редактора у складі офісного пакета не викликає сумнівів. Сфера застосування такого редактора досить широка: від найпростіших малюнків та оголошень до схем, діаграм та креслень.

Крім власних об'єктів, можна вставляти малюнки діаграми, формули та інші елементи, створені інших компонентах OpenOffice.org. Draw також підтримує експорт растрових зображень більшості форматів як поширених, так і спеціальних.

Draw має всі необхідні інструменти, властиві векторним редакторам:

* Сполучні лінії, розмірні лінії, таблиці. * Робота з текстом та текстовими ефектами; * Зміна колірної заливки, тіні, прозорості; * Розміщення, прив'язка та управління об'єктами за допомогою слайдів, шарів та напрямних; * Підтримуються різні операції над об'єктами: додавання віднімання, угруповання та перетворення фігур; * Малювання тривимірних об'єктів; * Малювання за допомогою графічних примітивів, кривих Безьє; * Ефекти: освітлення, морфінг та дублювання;

Крім власних об'єктів, можна вставляти малюнки діаграми, формули та інші елементи, створені інших компонентах OpenOffice.org. Draw також підтримує експорт растрових зображень більшості форматів як поширених, так і спеціальних.

Використання Галереї (сховища об'єктів) дозволяє впорядкувати наявні зображення, а підтримка стилів тексту заощаджує час виготовлення однотипних об'єктів.

Готовий малюнок або креслення можна надрукувати на принтері або експортувати в растрове зображення або, наприклад, у PDF.

Максимальний розмір малюнка в Draw – 300х300 см.

Починаючи з версії 3.0 OpenOffice.org, Draw підтримує не тільки експорт, а й імпорт PDF (необхідне встановлення спеціального розширення OpenOffice.org).

Відкрита реляційна база даних Base

Base - відкрита реляційна базаданих, що дозволяє створювати, редагувати та обробляти табличні дані.

Користувачам надається досить великий набір засобів обробки даних та таблиць: редактори форм, запитів, звітів, таблиць БД. З їх допомогою можна аналізувати дані, що вводяться, займатися розрахунками, прогнозувати, зводити дані з різних аркушів і таблиць, будувати діаграми і графіки.

Редактор запитів дозволяє створювати практично весь спектр SQL-запитів до баз даних вибірку, зміна, додавання даних. Підтримуються вкладені запити та запити з параметрами. Візуальна частина редактора спростить початківцю процес конструювання запитів.

Редактор форм дозволяє скористатися практично будь-яким стандартним інструментом керування вмістом БД. Тут надаються елементи керування текстовими, числовими, бінарними полями, списками, списками, що «випадають», таблицями, кнопки, календар та інші елементи.

інструмент для роботи із зовнішніми джерелами даних плюс вбудована СУБД HSQLDB. За допомогою Base можна додавати, видаляти, редагувати записи баз даних: MySQL, HSQLDB (зазвичай поставляється з OpenOffice.org), PostgreSQL, DB2, Oracle.

Також можлива робота з таблицями DBF, MS Access, адресними книгами, текстовими файлами та електронними таблицями, створеними в OpenOffice.org Calc або MS Excel.

Доступ до зовнішнім джереламданих здійснюється за допомогою ODBC, JDBC, SDBC та інших технологій. Повний перелік підтримуваних технологій та джерел даних залежить від операційної системи, що використовується.

Більш складне управління та обробка даних виконується за допомогою макросів та засобів мови програмування ООBasic.

Редактор таблиць допоможе створювати таблиці та керувати ними у вбудованій базі даних HSQLDB, а також з деякими можливими обмеженнями для інших баз даних.

Base має вбудований майстер звітів з базовими функціями зі створення звітів або таблиць або запитів. Але існує найкращий інструмент створення звітів – Sun Report Builder. Цей інструмент дозволяє створювати звіти практично будь-якої складності. Він підтримує угруповання, виконання вбудованих функцій користувача, умовне форматування. Результатом роботи SRB є документ Writer чи Calc, які надалі можна роздрукувати чи редагувати.

За допомогою Base можна створювати джерела даних. Наприклад, організувавши підключення до зовнішньої бази даних Base і відфільтрувавши необхідні дані SQL-запросом, можна з цими даними у OOo Calc.

Відкриті системи програмування

  1. FreePascal 2.0.4 - Вільний компілятор Pascal і Object Pascal - як IDE рекомендується Lazarus або KDevelop.
  2. Eclipse- відкритий комплекс відкритих систем програмування для розробки модульних крос-платформних програм.
  3. Gambas- вільна система програмування 2) VISUAL BASIC IDE для створення програм на основі Qt, GTK, OpenGL, SDL і CGI WEB

Мінімальний пакет Відкритого ПЗ для шкіл

Включає програми Відкритого ПЗ

  1. графічне середовище XFCE;
  2. швидкий текстовий редактор Abiword;
  3. редактор електронних таблиць Gnumeric

Мінімальний пакет програм Відкритого ПЗ:

  1. Офісний пакет: OpenOffice.org 2.3;
  2. Веб браузер: Firefox 2.0;
  3. Редактор зображень: Gimp 2.4;

Додатковий диск Містить програми для шкіл та інших навчальних закладів:

  1. Редактор веб-сторінок Bluefish;
  2. Мови програмування pascal (Free Pascal та Lazarus), basic (gambas), logo (KTurtle);
  3. Системи математичних обчислень (Maxima та Scilab);
  4. Антивірус ClamAV та кешуючий сервер Squid, СУБД PostgreSQL

Оптимізовано для встановлення та роботи на ЕОМ від 128 до 256 МБ пам'яті та процесор від PI 233 МГц.

Компакт-диск Лінукс LiveCD

Компакт-диск Лінукс Live-CD розрахований для роботи з Відкритим ПЗ на домашніх комп'ютерах з Windows без установки Linuxна ЕОМ.

Компакт-диск Л інукс Live CDоптимізовано для роботи з компакт-диском для встановлення Лінукс на комп'ютер від 128 до 256 МБ пам'яті та процесор від PI 233 МГц. Підтримуються сеанси роботи, які дозволяють зберігати налаштування та документи в домашній папці між перезавантаженнями.

Варіант з найнижчими апаратними вимогами забезпечує прийнятну продуктивність навіть на системах з об'ємом пам'яті 128 МБ.

Включає графічне середовище XFCE; До складу цього дистрибутива входять легкий та швидкий текстовий редактор Abiword та програма редагування електронних таблиць Gnumeric.

Крім того, на першому диску містяться:

  1. Офісний пакет: OpenOffice.org 2.3;
  2. Веб-браузер: Firefox 2.0;
  3. Електронна пошта: Claws Mail;
  4. Робота із зображеннями: Gimp 2.4;
  5. і ще більше 1000 програм, що дозволяють вирішувати найширше коло завдань.

Шкільний сервер

Шкільний сервер- серверна операційна система з широкою функціональністю, що повністю настроюється через веб-інтерфейс, через який здійснюється управління компонентами.

Склад:

  1. веб-додатки для допомоги в організації навчального процесу:
  2. Moodle - система дистанційного та інтерактивного навчання, містить приклади курсів;
  3. Mediawiki – система для організації «бази знань», з використанням технології Wiki;

для організації локальної мережі:

  1. DHCP- та DNS-сервери;
  2. проксі-сервер Squid (за допомогою виведення статистики доступу);
  3. міжмережевий екран;
  4. керування мережевими інтерфейсами;
  5. сервер точного часу;
  6. файлові сервери:
  7. Samba-сервер (для організації доступу до каталогів, доступних за протоколом Samba);
  8. FTP-сервер;
  9. інтерфейс створення локальних дзеркал репозиторіїв;
  10. сервер друку CUPS;
  11. MySQL (для Moodle та Mediawiki);
  12. веб-сервер Apache2;
  13. інтерфейс для оновлення системи (включаючи налаштування оновлень);
  14. резервне копіювання;
  15. керування обліковими записами (можливість імпорту облікових записівіз системи 1С:Хронограф);
  16. поштовий сервер з підтримкою засобів боротьби з вірусами та спамом.
    • ВАК, проф., док. комп. наук 04:29, 19 липня 2009 (UTC)

Відкрите ПЗ у Росії

В даний час відкрите програмне забезпечення починає набувати широкого поширення в системі освіти Росії, серед причин чому називають широке нелегальне поширення комерційного закритого імпортного програмного забезпечення.

Рішеннями уряду вітчизняне відкрите програмне забезпечення у 2008 році запроваджено у всіх школах Російської Федерації та буде встановлено у всіх державних та бюджетних організаціях для забезпечення національної безпеки у сфері ІТ.

Відкрите програмне забезпечення може вільно встановлюватися та використовуватися у всіх школах, офісах, вузах і на всіх особистих комп'ютерах та у всіх державних, бюджетних та комерційних організаціях та установах Росії та в країнах СНД відповідно до Генеральної публічної ліцензії (GPL).

    • ВАК, проф., док. комп. наук 09:50, 16 липня 2009 (UTC)

Відкрите ПЗ у школах та вузах

Використання Відкритого ПЗі Технологій Linux у школах та вишах Москви почалося в 2005-2006рр. після проведення шкіл-семінарів "Технології Лінукс та Відкрите ПЗ" спільно з корпорацією IBM та ЮНЕСКО на базі МПГУ.

У 2007р. Рішеннями Уряду РФ базові пакети Відкритого ПЗ були рекомендовані для впровадження у всі школи Росії та використання для навчання інформатики та інформаційних технологій у всіх кабінетах інформатики всіх шкіл РФ.

Передісторія базових пакетівпрограм з інформатики, їх розробки, впровадження та поширення в школи Росії та країн СНД почалася наприкінці 90-х років, коли базові пакети програм були розроблені для вітчизняних персональних ЕОМ БК, Корвет та УКНЦ та поширювалися у вигляді Відкритого та Вільного ПЗ для шкіл.

Усі середні школи Росіїу 2008-2009рр. отримали базові пакети ліцензійного комерційного та вільного відкритого програмного забезпечення для навчання комп'ютерної грамотності, основ інформатики та нових інформаційних технологій з операційними системами Windows та Linux.

У чотирьох регіонах Росіїу 2008-2009 pp. розгорнуто роботи з впровадження та використання в середніх школах базових пакетів програм для кабінетів інформатики та обчислювальної техніки та розпочато підготовку вчителів та викладачів інформатики технології роботи з відкритим програмним забезпеченням у середовищі Windows та Linux.

Згідно Доктрина інформаційної безпеки РФ, навчання комп'ютерної грамотності та інформатики має супроводжуватися правовим лікнепом у навчанні захисту інформації в ЕОМ, захисті від комп'ютерних вірусів, порно-сайтів та забезпечення інформаційної безпеки в локальних та глобальних мережах ЕОМ на базі вільного відкритого програмного забезпечення.

У 2007 році випущені перші підручники інформатика для вузів та шкіл для навчання інформатики відповідно до державних стандартів освіти з вільним відкритим комерційним закритим ПЗ у Windows та Linux.

    • ВАК, проф., док. комп. наук 09:51, 16 липня 2009 (UTC)

Визначення Open Source

Визначення Open Source (Відкрите ПЗ)) використовується організацією Open Source Initiative для визначення ступеня відповідності ліцензії на програмне забезпечення стандартам Відкритого програмного забезпечення (Відкрите ПЗ). Базуються на директивах Debian для вільного програмного забезпечення, написаних Брюсом Перенсом.

Визначення складається з десяти вимог до ліцензійна Відкрите ПЗ:

  1. Вільне поширення.Це означає, що ліцензія не повинна накладати обмежень на продаж та розповсюдження ПЗ.
  2. Доступні вихідні тексти.Навіть якщо програмне забезпечення не постачається з вихідними текстами, ці тексти мають бути легко доступними.
  3. Можливість модифікації.Проста можливість читати вихідні тексти не дозволяє експериментувати з ними та випускати модифікації
  4. Навіть у разі недоторканності авторського вихідного тексту похідні програми та їх вихідні тексти повинні вільно поширюватися.
  5. Відсутність дискримінації проти людей та груп людей.Деякі країни, наприклад США, мають деякі обмеження на експорт.
  6. Відсутність дискримінації щодо мети застосування.Вільна ліцензія повинна дозволяти всі види діяльності, включаючи генетичні та ядерні дослідження, комерційне застосування тощо.
  7. Поширення ліцензії. Права, пов'язані з Відкритим ПЗ, повинні бути застосовані до всіх користувачів програми без укладання додаткових угод, наприклад, угоди про нерозголошення.
  8. Ліцензія не повинна обмежувати інші програмні продукти.За винятком банальної несумісності користувач має право вибирати, чим користуватися.
  9. Ліцензія має бути технологічно нейтральною. Тобто ліцензія не повинна вимагати будь-що від інтерфейсу або технологій, які застосовуються у похідній програмі.
  10. Ліцензія має бути прив'язана до конкретного продукту.Права на програмний код не повинні залежати від того, чи програма є частиною якогось продукту. Людина, яка розповсюджує програму у відриві від збірника або перенесла частину коду в інший продукт, має такі ж права, які давала збірка.
Марк Робертс (Mark Roberts)
Директор з управління продукцією (Director, Product Management)
компанії QNX Software Systems
e-mail: [email protected]

Анотація

Основна увага в цій статті концентрується на перевагах, стратегічних моментах, перешкодах і можливостях, пов'язаних з використанням у комерційній продукції програм з відкритим вихідним кодом. Використовуючи як приклад інтегроване середовище розробки (Integrated Development Environment – ​​IDE) на базі платформи Eclipse, ми обговоримо, які відмінності існують між захисними (protective) та незахисними (nonprotective) ліцензіями на вихідний код програмного забезпечення (ПЗ). При інтеграції або компонуванні відкритого вихідного коду з "фірмовим" закритим кодом часто потрібно виявляти належну увагу та обережність. Слід мати на увазі й різні правові проблеми, наприклад потенційну можливість порушення патентних прав. Ми також спробуємо пояснити, чому основні принципи використання програмного забезпечення з відкритим вихідним кодом у середовищі інформаційних технологій(ІТ) не застосовні щодо комерційної продукції для вбудованих пристроїв.

Середовище розробки QNX Momentics як приклад використання програмного забезпечення з відкритим вихідним кодом

Повертаючись у 2001 р., коли багато фірм-розробників боролися за виживання в умовах загального обвалу ринку акцій ІТ-компаній, особливо пов'язаних з електронним бізнесом в Інтернеті, компанія QNX Software Systems прийняла стратегічне рішення розпочати розробку нового інтегрованого середовища розробки (IDE) для ринку вбудованих систем. У компанії вже був солідний досвід розробки серії інструментальних засобів, що використовуються в розробці вбудованих пристроїв, але керівництво компанії усвідомлювало, що створення середовища IDE дозволить утриматися на гребені хвилі в умовах жорсткої конкуренції. Рішення про створення середовища IDE стимулювалося також зміною акцентів у вимогах клієнтів. У період спаду ділової активності стиснуті у коштах клієнти стали більше цікавитися рішеннями, які б максимізувати продуктивність роботи і зробити їх мобільнішими (гнучкими) під час робіт, дозволили підвищити загальну економічну ефективність.

Для компанії QNX розробка середовища IDE була "ставкою на майбутнє", тому що в той час вартість та зусилля на розробку проекту були поза зоною досяжності для більшості вендорів інструментальних засобів вбудованих систем. На щастя, QNX працювала в тісному контакті з IBM з різних сегментів ринку вбудованих пристроїв. Завдяки тісній співпраці компанія IBM поділилася з QNX своїми планами з випуску інтегрованого середовища розробки з використанням відкритого вихідного коду - це середовище згодом стало основою для платформи Eclipse.

Компанія IBM запропонувала використовувати досвід QNX для адаптації технології IDE до потреб розробників, які займаються створенням додатків, що вбудовуються, на базі мови C/C++. Фахівці компанії QNX практично відразу вказали на незаперечні привабливі сторони використання середовища IDE відкритих вихідних кодів. Наприклад, для такого середовища стало б можливо:

  • усунути залежність від єдиного вендора, що пов'язано з необхідністю ліцензування віконної платформи;
  • запропонувати вихідний програмний код для налаштування потреб замовника;
  • залучати для надання підтримки серйозних гравців промислових галузей та створювати екосистему комплементарних технологій та модулів, що підключаються;
  • надавати замовникам стабільну архітектуру, яка б здатна підтримувати диференціацію продукції;
  • дати можливість розробникам вбудованих пристроїв використовувати як платформу для розробки стандартні робочі станції, придатні для роботи з програмами інформаційних технологій (у найширшому спектрі застосувань).

І нарешті, розглядалася окрема можливість того, що платформа IDE змогла б завоювати популярність і стати стандартом де факто, а це дозволило б компанії QNX за допомогою такої платформи захопити для використання ринок великих екосистем розробників і інструментів третіх сторін.

Заснування відкритого проекту Eclipse.org

У листопаді 2001 р. компанії Borland, IBM, Merant, QNX Software Systems, Red Hat та SUSE заснували Консорціум Eclipse. На початку 2004 р. Рада Керуючих (Board of Stewards) реорганізувала Консорціум Eclipse на некомерційну корпорацію з ім'ям Eclipse Foundation.

З початку Eclipse була проектом, заснованим на використанні відкритого вихідного коду. У рамках проекту пропонувалися як технології, що безоплатно розповсюджуються, у вигляді відкритих вихідних текстів, так і можливість доступу до спільноти, що складається з найбільш освічених та розвинених розробників у своїй галузі. Таким чином, ця технологія виявилася універсальною платформою для інтеграції всіх видів інструментів розробки. В її основі лежить відкрита архітектура, що розширюється, при цьому вона абсолютно чітко ліцензується як вільно розповсюджуваний продукт, що не вимагає ліцензійних відрахувань. Вклад членів спільноти в проект Eclipse базується на стандартній моделі розробки з відкритим вихідним кодом (Open Source Software - OSS), але більшість членів пропонують також і комерційні розробки, що базуються на платформі Eclipse.

Проект створення інструментального сховища

У грудні 2001 р. компанія QNX розпочала створення своєї ОСРВ QNX® Neutrino®, що базується на середовищі IDE платформи Eclipse. У поданні компанії середовище IDE повинна була мати великі функціональні можливості, орієнтуватися на роботу з мовами C/C++, мати глибоко інтегровані інструменти для налагодження, профілювання, аналізу та створення додатків, що вбудовуються. З самого початку, за задумом команди QNX, це мало бути багатоцільове та багатомовне середовище IDE, що підтримує безліч інструментальних платформ. Сюди було включено:

  • кілька інструментальних платформ: Windows, Solaris, ОСРВ QNX Neutrino (розробка "сама для себе" - "self-hosted");
  • кілька цільових архітектур: ARM, MIPS, PowerPC, SH-4, x86;
  • мови програмування C, C++, Java

З тих пір середа IDE продовжувала розростатися, включивши підтримку платформи Linux і підтримку додаткових процесорних архітектур, включаючи процесори XScale.

Реалізація проекту було запущено у стилі "екстремального програмування". У компанії була відібрана команда з 12 найкращих інженерів. Їм було надано спеціальне приміщення, їх ізолювали від усіх факторів, що відволікають увагу, проект був відданий у їхнє повне розпорядження.

Групі були надані необхідні повноваження у сфері прийняття рішень, для них було складено жорсткий, на межі ризику розклад робіт, з випуском бета-версії продукту через 16 тижнів, а комерційної версії - до 4 липня 2002 р. Група вклалася у всі поставлені контрольні терміниі випустила новий продукт, який отримав ім'я QNX Momentics® IDE - точно відповідно до розкладу, що стало свідченням закладеного в програмне забезпечення з відкритим вихідним кодом потенціалу щодо скорочення часу виходу продукції на ринок.

Від ідеї до постачання продукту – менше 7 місяців

Спираючись на платформу Eclipse, команда QNX завершила створення дуже потужного та багатостороннього середовища IDE для розробки вбудовуваного програмного забезпечення за шість місяців. У середовищі IDE підтримувалася крос-платформна розробка для кількох інструментальних платформ та кількох мов програмування, а також підтримувалися найбільш популярні процесорні плати для цільових пристроїв, що вбудовуються. За допомогою платформи Eclipse компанія QNX змогла:

  • використовувати для крос-розробки компілятори GNU та інструменти для роботи через командний рядок;
  • здійснити підтримку модулів сторонніх розробників, що підключаються, наприклад, IBM WebSphere для вбудованих додатків Java і Rational ClearCase для модельно-керованих розробок;
  • створити додаткові інструменти для побудови систем, керування цільовими пристроями, аналізу пам'яті, профілювання систем та додатків тощо.

На рис. 1 наведено приклад того, як при використанні платформи Eclipse відбувається скорочення витрат на створення середовища IDE, що дає можливість компаніям звернути основну увагу на верхні рівні розробки, де і створюються реальні нововведення. Наприклад, за допомогою платформи Eclipse компанія QNX змогла легко створити кілька інноваційних засобів візуалізації, які дозволяють проникнути глибоко всередину системи, що вбудовується, і відобразити її поведінку.

Зворотній внесок у роботу спільноти

Сильна сторона успішного проекту з відкритим вихідним кодом полягає в спільної роботиспільноти розробників та у постійному поліпшенні кодової бази. Якщо компанія бере на озброєння і з користю застосовує відкритий вихідний код, вона просто зобов'язана робити свій внесок у роботу спільноти. З цією метою компанія QNX у червні 2002 р. взяла на себе керівництво проектом Eclipse CDT.

Метою проекту Eclipse CDT (C/C++ Development Tools - інструменти розробки мов C/C++) є створення загального набору взаємодіючих один з одним інструментальних засобів мов C/C++ для платформи Eclipse. Eclipse CDT був позиціонований як проект з відкритим вихідним кодом, з правами управління з боку корпорації Eclipse. Для запуску проекту CDT компанія QNX передала для використання свої ресурси для розробки та вихідні коди проекту QNX Momentics IDE. Компанії Rational та Red Hat як члени спільноти також надали суттєву підтримку проекту.

Мал. 1. При використанні платформи Eclipse вендори інструментальних засобів можуть сконцентрувати увагу на верхньому рівні стека робіт, де і створюються реальні нововведення.

Компанія QNX, як і раніше, веде супровід проекту CDT, обсяг якого виріс із спочатку скромних 80 000 рядків коду до сьогоднішніх більш ніж 700 000 рядків. На початку 2006 р. за журналом реєстрації ходу робіт за проектом Eclipse CDT внесок компанії QNX оцінювався у 52%. Далі йшла компанія IBM із внеском 36%. Проект CDT є другим за популярністю проектом корпорації Eclipse після самої платформи Eclipse.

Чи можна собі дозволити "подарувати" код?

Може здатися, що "подарувати" свій код означає поступити всупереч здоровому глузду. Тим не менш, якщо функціональні можливості вашого продукту виявляються корисними для застосування, то чому б не внести їх як вклад у спільноту користувачів відкритого вихідного коду. Підійшовши цей крок, можна отримати вигоду з такої пропозиції "стандартної" реалізації поряд з використанням досвіду підтримки продукту. Ви зможете скористатися результатами роботи всієї спільноти, спрямованими на покращення кодової бази. Така стратегія може звільнити ваші власні ресурсидля проведення додаткових досліджень, сфокусованих на інноваційних розробках, на внесенні додаткових функціональних можливостейу свою продукцію.

Більше того, ви могли б отримати деякий контроль над напрямом розвитку "стандартної" платформи - зароблений, звісно, ​​завдяки вашим заслугам перед спільнотою! Якщо ви супроводжуєте певний проект, поводьтеся як добрий громадянин спільноти, поважайте чужу думку, цінуйте внесок та поради інших членів. Не треба думати, що хтось спробує "обчистити ваші кишені" в результаті використання коду та перехопити у вас керівництво над напрямом розвитку платформи.

Наприклад, стратегія компанії QNX Software Systems полягає в тому, щоб використовувати переваги від участі в роботі корпорації Eclipse, розробляючи в той же час нові функціональні можливості, що підключаються через стандартизовані точки розширення, які вже є у складі платформ Eclipse та CDT. З цією метою компанія QNX має намір залишатися активним членом співтовариства Eclipse, отримуючи вигоду з існуючої кодової бази і напрацювання третіх сторін (модулів, що підключаються), допомагаючи в задоволенні реальних потреб клієнтів, створюючи свої фірмові розширення. Описана стратегія ілюструється на рис. 2.

Мал. 2. Своїми напрацюваннями можна робити внесок у роботу спільноти.

Резюме з переваг

Інструментальна платформа на базі Eclipse є взаємовигідною як для розробників додатків, таких як QNX, так і для клієнтів, які купують інструментальні засоби платформи.

Вигода розробників полягає у зменшенні часу до постачання їх продукції на ринок та у можливості скористатися результатами досліджень інших людей (при низьких витратах на це). Серед цих результатів може бути і високоякісний код, що відноситься до категорії "чистої інтелектуальної власності" ("clean IP"), наданий шановними фірмами, такими як IBM та QNX. Ще однією перевагою для розробника є те, що він отримує просту та ясну схему ліцензування, включаючи комерційні права та деякий патентний захист. Більше того, розробник отримує можливість роботи на платформах кількох ОС, що підтримуються в Eclipse, а також отримує у своє розпорядження добре визначені в проекті Eclipse точки розширення.

Вигода клієнтів, які купують середовище IDE на базі Eclipse, полягає у використанні інструментальної платформи, призначеної для розробки додатків, що вбудовуються, з потужною підтримкою засобів крос-компіляції, простою налагодженням і наявністю розширень для управління цільовими системами. Команда розробників клієнта зможе оцінити багато функцій, що полегшують роботу, малий час, що потрібно на додаткове навчання, хорошу продуктивністьпродукту та надійну платформу, що дозволяє працювати з великими проектами. Клієнт може також з користю застосувати платформу Eclipse у власних додатках (наприклад, RCP, eRCP тощо).

Майбутнє корпорації Eclipse

Корпорація Eclipse є активною та енергійною спільнотою. У ньому постійно з'являються нові проекти, у розпорядження солідних інноваційних компаній надаються нові архітектури, і навіть невеликі компанії можуть отримати комерційну вигоду з платформи Eclipse в результаті створення з мінімальними витратами нових модулів, які розширюють функціональні можливості (див. рис. 3).

Мал. 3. Корпорація Eclipse є енергійною і швидко зростаючою спільнотою розробників модулів, що підключаються.

Порівняння ліцензій на відкритий вихідний код

Не всі ліцензії на програмне забезпечення з відкритим вихідним кодом є рівноправними. Компанія QNX зробила добре продуманий крок, зупинившись на ліцензії Eclipse Public License. Цей вибір був продиктований частково потребами її клієнтів, які використовують вбудовуване обладнання, а частково бажанням встановити контроль над технологіями, що диференціюють продукцію (і отримати вигоду).

Некомерційна корпорація Open Source Initiative () запропонувала корисне визначення відкритого вихідного коду, що складається з 10 пунктів. В даний час на веб-сайті представлено понад 50 схвалених OSI ліцензій, включаючи Eclipse Public License. У цих ліцензіях можуть бути значні відмінності, які потрібно чітко усвідомлювати. Ці відмінності можуть суттєво впливати на інтелектуальну власність (ІВ) розробників та здатність її захисту. Найбільшою мірою це стосується випадку використання відкритого вихідного коду (або похідних розробок на базі відкритого вихідного коду) у пристроях, що вбудовуються.

Захисна та незахисна ліцензія

За умовами захисної ліцензії, наприклад, GPL v2, похідна технологія може поширюватися лише разом із відповідним вихідним кодом. Відповідно до умов захисної ліцензії гарантується, що при переведенні вихідного коду в категорію відкритого він залишатиметься у цій категорії у всіх наступних поколіннях та похідних продуктах. Як ми пояснимо пізніше, ця вимога призводить до певних проблем у разі вбудованих систем.

Прикладами незахисних ліцензій є оригінальні ліцензії MIT та BSD. Незахисні ліцензії зберігають чинність авторських прав власника, але надають широкі права користувачеві, включаючи право на модифікацію та необмежену вільне поширення (або особисте використання) ПЗ.

Що розуміється під "вірусною ліцензією"

Деякі люди називають GPL "вірусною ліцензією". Ця назва виникла через невизначеність легального визначення поняття "похідна технологія". При строгої інтерпретації визначення виходить, що навіть маленький фрагмент коду, що підпадає під ліцензію GPL, вбудований у деяке фірмове додаток, всі додаток має ліцензуватися як GPL. Відразу спадає на думку аналогія з вірусом.

Питання отримання компенсацій

Останнім часом питання відшкодування втрат за порушення прав ІВ (IP Indemnification) стали для розробників головною темою обговорення. У відповідь деякі вендори відкритого вихідного коду оголосили у тому, що вони захищатимуть клієнтів від судових позовів, пов'язані з порушеннями патентних чи авторських прав. І в нових ліцензіях на відкритий вихідний код роз'яснюються заходи покарання для користувачів, які намагаються відстоювати свої патентні права щодо інших користувачів кодової бази.

Головні проблеми, що виникають при комерціалізації програмного забезпечення з відкритим вихідним кодом

Порівняння вбудованих та ІТ-додатків

Успіху сфери відкритого вихідного коду сприяло ухвалення ІТ-організаціями ОС Linux. Вигода від використання Linux була пов'язана з роботою на відносно однорідному та стабільному устаткуванні (зазвичай сімейства x86) та з використанням гнучкої, багатої на ресурси комп'ютерної платформи.

З вбудованим ПЗ справи зовсім по-іншому. Це запускається на величезній кількості пристроїв з фіксованим набором функцій, при цьому використовується широкий діапазон обладнання з різноманітною архітектурою. Розробники пристроїв, що вбудовуються, часто ґрунтують свої конкурентні переваги на конкретному наборі функцій, габаритних параметрах, продуктивності, вартості, часу роботи від батарей, надійності, здатності взаємодії з іншими пристроями і розширюваності. Ці відмінні функції зазвичай реалізуються на низькорівневому ПЗ, що у разі Linux вимагає компонування безпосередньо до ядра ОС. Налаштування низькорівневого ПЗ під потреби клієнта є нормою, а чи не винятком, тому розробники часто домагаються потрібних їм функціональних можливостей з допомогою зміни ядра ОС. Використовується також метод прямої компонування шляхом запровадження кодові фрагменти з метою зменшення витрат за створення бібліотек. Така практика, що розглядається разом, робить дуже важким захист фірмового коду за умов ліцензій типу GPL (загальнодоступних).

Зазвичай ці проблеми ліцензування не стосуються ІТ-додатків, оскільки фірмова, пов'язана з конкретним підприємством ПЗ не поширюється далі підприємства, використовуючи виключно для внутрішніх потреб. Якщо ж взяти вбудовані пристрої, через них завжди поширюється похідне ПЗ, стосовно якого спрацьовує стаття “force open” (примусово відкритий код) ліцензій на відкритий вихідний код, що може ризикувати головні аспекти цінних пропозицій з відкритим вихідним кодом.

Крім того, вбудовані продукти часто мають тривалий час життя як на стадії виробництва, так і експлуатації. Вбудований продукт, на який поширюються умови використання відкритого вихідного коду, наражається на більший ризик, включаючи відсутність довготривалої технічної підтримки, потенційно існуючі проблеми безпеки та порушення прав ІВ.

Проблеми ліцензування

Невизначеність правового статусу

Незважаючи на втішні слова прихильників деяких ліцензій на відкритий вихідний код, багато ключових проблем, щодо яких висловлюють занепокоєння розробники систем, що вбудовуються, ще не були широко перевірені судовою практикою. Як уже згадувалося, визначення поняття "похідна розробка" є ключовим при забезпеченні дотримання певних статей ліцензії, хоча багато осіб та організацій, які приймають умови використання відкритого вихідного коду, слабо уявляють сенс цього поняття або свідомо його ігнорують.

Деякі обхідні шляхи, які дозволяють вендорам комерційної продукції впровадити в Linux "фірмові" драйвери (наприклад, Loadable Kernel Modules - модулі ядра, що завантажуються), ґрунтуються швидше на аргументах типу "він сказав, вона сказала", ніж на прямих посиланнях на текст ліцензійної угоди. Фактично такі драйвери, які використовують модулі LKM, приховують небезпечний обхід вимог ліцензії GPL. Впадаючи в крайність, можна інтерпретувати справу так, що кодова база Linux може бути представлена ​​як марна для більшості практичних застосувань, якщо в неї не включені деякі з цих "фірмових" драйверів. Така ситуація здатна ефективно знецінити ідею ліцензії GPL.

Відсутність компенсацій за порушення прав ІВ

У більшості випадків використання відкритого вихідного коду існує реальна можливість того, що ви ненавмисно порушите чиїсь патентні права. Лише в малій частині ліцензій на відкритий вихідний код робиться явне посилання на патенти, а за ліцензіями, що розуміються, не можна виносити будь-яке рішення. Ви повинні окремо ліцензувати будь-які патенти, які стосуються, наприклад, кодеків із категорії відкритого вихідного коду, в яких реалізовано алгоритми MP3 або інші запатентовані рішення. А тим часом, "погані хлопчики" (і Microsoft у тому числі) стурбовані створенням портфоліо з патентів, якими, на думку багатьох експертів, можна буде "вистрілити" по прихильниках відкритого вихідного коду.

Деякі ліцензії мають явні посилання на патенти. Наприклад, у ліцензії Eclipse Public License є явна згадка про патентні права, і вона містить пункт про заходи покарання у разі, якщо хтось спробує відстоювати патентні права по-іншому. Корпорація Eclipse докладає багато зусиль для перевірки коду та з'ясування джерела його походження з погляду ліцензійних, патентних чи авторських прав.

Додаткові зусилля для збереження ІС

Для використання відкритого вихідного коду компанія має витратити значні зусилля у таких напрямках:

  • управління розповсюдженням продукції;
  • управління ліцензіями;
  • вирішення правових конфліктів щодо зобов'язань клієнтів;
  • приділення належної уваги правовим питанням: дотримання чистоти прав ІВ, перевірка прав ІВ на відкритий код, встановлення джерела походження коду, відстеження змін у версіях ліцензій, наприклад, GPL v3 тощо.

Прийняття вимог клієнта

Деякі великі клієнти, зіткнувшись зі складністю та невизначеністю ПЗ з відкритим вихідним кодом, відмовлялися мати справу з продукцією, до складу якої входить відкритий вихідний код. Якщо ви все ж таки хочете працювати з такими клієнтами, то ви повинні отримати або запропонувати їм включити для вашого коду умови, що відповідають комерційній ліцензії.

Проблеми, пов'язані з ІС

Чи торкаються умови вашої ліцензії на використання відкритого вихідного коду ту інтелектуальну власність, яка є відмінною рисою вашого продукту? Якщо так, то ваша ІВ перебуває під загрозою.

Якщо у системах, що вбудовуються, використовується суміш ПЗ вашої власної розробки та програм з відкритим вихідним кодом, то ви повинні представляти суть, походження і взаємозв'язок всіх компонентів вбудовуваного ПЗ. Без такого глибокого проникнення в суть предмета ви можете ненавмисно порушити права чиїсь ІС або навіть втратити права на ПЗ власної розробки.

Без отримання патентних ліцензій та виплати компенсацій довготривале ПЗ вбудованих систем, порівняно висока продажна ціна та обсяг продажів вбудованого пристрою з фіксованим набором функцій роблять такі системи очевидною мішенню для пред'явлення вимог щодо порушення патентних прав з боку згаданих "поганих хлопчиків" та головних конкурентів.

Як показує приклад використання середовища QNX Momentics IDE, для ПЗ з відкритим вихідним кодом існує багато миттєво одержуваних переваг, включаючи скорочення часу до випуску продукції на ринок, менші витрати на розробку та більшу свободу наділення вашого продукту додатковими функціями та інноваціями. Якщо ви пропонуєте ваше програмне забезпечення у вигляді послуги, яка вирішує деяку проблему клієнта, то клієнту байдуже, використовували ви чи ні програми з відкритим вихідним кодом, він просто платить за отриману необхідну йому функцію.

Тим не менш, ви повинні розуміти різницю між різними ліцензіями на відкритий вихідний код, і вибирати серед них ту, яка відповідає вашому додатку і потребам клієнта. Більше того, будьте готові відповідати за ліцензійними зобов'язаннями вибраного ПЗ. Вам повинно бути відомо про інші вимоги, що стосуються ІС (наприклад, про патентні права) та пов'язані з програмним кодом. З обережністю поставтеся до кодової бази, для якої на екрані не виводиться повідомлення про наслідки порушення ІС. Пошукайте краще проекти, де пропонується відшкодовувати можливі збитки та де виводиться екранне повідомлення про грошові пожертвування за розробку коду для компенсації витрат, пов'язаних із порушенням авторських чи патентних прав тощо. Переконайтеся, що програмне забезпечення з відкритим вихідним кодом узгоджується з політикою охорони інтелектуальної власності та уникайте захисних ліцензій, на підставі яких вас можуть змусити розкрити відмітні фрагменти вашого коду. Якщо ваш продукт вбудований в систему, то розглядайте також можливість пропозиції умов комерційного ліцензування вашої ІС.

Використання відкритого вихідного коду у пристроях, що вбудовуються, призводить до більш складних проблем, ніж у разі використання такого ПЗ в ІТ-додатках, так як перший варіант таїть більше небезпек. Перед тим, як вирішити використовувати будь-яке ПЗ з відкритим вихідним кодом, оцініть справжню вартість володіння ним (TTCO) та його придатність для вашого проекту.

І, нарешті, приєднуйтесь до спільноти користувачів та розробників ПЗ з відкритим вихідним кодом для отримання максимальної користі та вигоди!

Пітер Ван Валькенбург, голова відділу досліджень Coin Center, член ради директорів Zcash Foundation, пояснює, чому р. Розвиток програмного забезпечення з відкритим вихідним кодом є важливим для побудови довірчих відносин та забезпечення безпеки в блокчейн-мережах.

Комп'ютерний код, що лежить в основі всіх великих криптовалют та проектів відкритого блокчейна, розробляється як програмне забезпечення з відкритим вихідним кодом. Регулятори та директивні органи, які намагаються зрозуміти, що таке криптовалюти, але не знайомі з таким програмним забезпеченням, можуть помилятися, вважаючи, що ці системи розробляються (і повинні розроблятися) однією або декількома комерційними компаніями. Хоча багато відомого програмного забезпечення дійсно розробляється подібним чином (наприклад, Windows корпорації Microsoft або RDBMS компанії Oracle), з проектами з відкритим вихідним кодом справи інакше, і ця відмінність може і повинна формувати громадську думку. ПЗ з відкритим вихідним кодом створюється у співпраці, безкоштовно поширюється, публікується відкрито та розвивається як продукт спільноти, а не власності однієї компанії чи особи. У цьому випадку немає монополії, немає однієї компанії чи індивідуума, які б створювали та продавали ПЗ, володіли б ним. Так само, як немає єдиної компанії, що володіє мережею біткоїну, не існує однієї-єдиної компанії, яка виробляє ПЗ, яке, функціонуючи на пов'язаних в інтернеті комп'ютерах, утворює цю мережу. Подібна децентралізація несе деякі фундаментальні блага, які може бути важко зрозуміти людям, не знайомим із розробкою ПЗ. Щоб краще усвідомити міць і характер відкритого вихідного коду, буде корисно отримати деяке уявлення про один особливо успішний зразок з відкритим вихідним кодом. Йдеться про операційну систему Linux.

Відкритий вихідний код усюди

Важко підрахувати, скільки разів на день ви користуєтесь Linux, адже саме ця операційна система є основою роботи більшості серверів в інтернеті. Щоразу, коли ви відвідуєте Facebook, Google, Pinterest, Вікіпедію та тисячі інших великих сайтів, сервіси, які надають вам ці (такі різні) сайти, ви маєте справу з комп'ютерами, які, швидше за все, працюють на операційній системі Linux. Linux можна знайти і набагато ближче; найімовірніше, він у вас під рукою. Скажімо, операційна система Android-смартфонів базується на Linux. Якщо у вас є Chromebook, ви користуєтеся ноутбуком на основі Linux. Ця операційна система все частіше використовується у телевізорах, термостатах, мультимедійних системах у літаках, автомобілях тощо.

Чому це цікаво? Тому що Linux – це не продукт одного програміста чи навіть групи програмістів; на відміну від MacOS або Windows, його не розробляла одна чи навіть дюжина корпорацій. Linux має тисячі співавторів. Як повідомила в 2015 році Linux Foundation (некомерційна організація, що сприяє відкритому розвитку операційної системи), приблизно 14 000 розробників із більш ніж 1300 різних компаній зробили внесок у вигляді фрагментів програмного коду. В одному лише 2015 році у вдосконаленні коду вперше взяли участь 2355 розробників. Таким чином, шляхом екстраполяції можна підрахувати, що до 2017-го свій внесок внесли приблизно 18 000 осіб, і це число зростатиме.

Хто б міг подумати навіть п'ять років тому (1991 року), що операційна система світового класу може, немов за помахом чарівної палички, бути зліплена в єдине ціле з фрагментів позаштатної роботи кількох тисяч розробників, розкиданих по всій земній кулі і пов'язаних лише примарними нитками інтернету?

Переваги відкритого вихідного коду

У своїй книзі Реймонд розповідає про те, що відкритий вихідний код є революційним методом створення технологій. Linux з тисячами незалежних розробників, які працюють у режимі громадської співпраці, є прикладом моделі відкритого вихідного коду. Криптовалюти наслідують ту саму модель, але про це ми поговоримо нижче.

Реймонд виділив кілька переваг моделі відкритого вихідного коду. Ключові в контексті нашої дискусії – такі:

  • Кожен гідний зразок ПЗ починається із задоволення особистого бажання розробника.Мотивацією більшості розробників проектів з відкритим вихідним кодом є бажання особисто використовувати створювані продукти. Вони не пов'язані контрактом, який зобов'язує їх створити щось для іншого; вони мають особисту потребу, що вони задовольняють. Таким чином виникає якісно інша мотивація, що породжує детальне знання проблеми.
  • Хороші програмісти знають, що писати. Великі знають, що листувати (і використовувати повторно).Коли розробка здійснюється відкрито, можна уникнути надмірності, і проблематичні, ускладнені чи зайві коди можна ідентифікувати та спростити.
  • Коли ви втрачаєте інтерес до програми, то ваш останній обов'язок по відношенню до неї полягає в тому, щоб передати її в руки компетентного наступника. Люди приходять у проект із відкритим вихідним кодом і залишають його залежно від своїх інтересів та компетенції. Ніхто не застряє у роботі над проектами, які більше не цікаві. З'являються свіжі голови, які пропонують різні точки зору на давні проблеми чи нові перспективи розвитку.
  • Сприйняття користувачів як колег-розробників - найлегший шлях до покращення коду та ефективного налагодження ПЗ. Багато користувачів відкритого коду допомагають виявляти проблеми і навіть пропонують рішення. Грань між споживачем і виробником програм з відкритим вихідним кодом розмита: робота над програмним забезпеченням прозора, вона ведеться на очах у публіки, і участь у процесі створення доступна всім.
  • За наявності досить великої бази бета-тестерів і розробників практично будь-яка проблема швидко кваліфікуватиметься, а її рішення напевно виявиться для когось очевидним. Цей постулат названий Законом Лінуса на честь Лінуса Торвальдса, творця ядра Linux, який тривалий час залишався головним розробником цієї операційної системи. Коли процес розробки коду має закритий характер, розробники ризикують пропустити слабке місце або помітити певну помилку. Розробка в середовищі досвідчених користувачів з унікальним баченням підвищує ймовірність виявлення та усунення багів, що робить програмне забезпечення з відкритим вихідним кодом більш безпечним та відмовостійким.

Результатом такої розробки стає надійний програмний код, створений користувачами для користувачів. Мета полягає не в тому, щоб створити щось, що збагачує компанію, яка виробляє та продає продукти, а, швидше, у тому, щоб вирішити проблему, досить поширену, щоб велика спільнота талановитих програмістів з радістю вносила свій внесок. Люди, позбавлені навичок програмування, одержують від такої моделі величезне благо. Безкоштовне ПЗ немов матеріалізується з повітря, ним може вільно скористатися кожен, і воно отримує оновлення до тих пір, поки користувачі експертного рівня теж зацікавлені в експлуатації.

Закон та вільне ПЗ

Чинне законодавство підтримує та у деяких випадках стимулює розробку програмного забезпечення з відкритим вихідним кодом. Воно, як і все програмне забезпечення, захищене авторським правом, але його автори випускають код з ліцензією, що дозволяє кожному використовувати і модифікувати його без специфічного дозволу або будь-яких виплат авторам (тобто з ліцензією, розробленою Массачусетським технологічним інститутом - MIT).

Деякі ліцензії включають вимоги, що похідні програмного забезпечення повинні випускатися на таких же умовах. Завдяки подібній схемі база відкритого вихідного коду зростає та поширюється. Це явище відоме як ліцензія вільного програмного забезпечення, або LGPL-3 – менша стандартна громадська ліцензія.

Відкритий вихідний код у криптовалютах та токен-проектах

Можливо, Linux - найбільший та найважливіший приклад моделі відкритого вихідного коду, але є й інші. До них входять усі великі криптовалютні та блокчейн-проекти. Усі вони створюють комп'ютерні мережі, що дозволяють учасникам досягати згоди щодо спільно використовуваних даних (блокчейна криптовалюти).

Програмне забезпечення, що дає кожному учаснику можливість з'єднуватися з мережею, називається клієнтом, і це програмне забезпечення з відкритим вихідним кодом. Найчастіше клієнтське програмне забезпечення розробляють кілька не пов'язаних між собою учасників як найпростішої версіїмережного програмного забезпечення (тобто так званого reference client), на основі якого можна побудувати програмне забезпечення для майнінгу, гаманця, біржі або інше сумісне з мережею програмного забезпечення.

Клієнт Bitcoin Core - результат роботи більш ніж 450 незалежних розробників, які внесли свій внесок у розвиток коду більше 15 000 разів. ПЗ доступне для вільного використання та модифікації відповідно до ліцензії вільного програмного забезпечення MIT, а вся історія розробки доступна для огляду в публічному репозиторії на Github - хмарному сервісі, що дозволяє будь-якому створити обліковий запис, завантажити новий кодта відстежувати зміни. Якщо створений репозиторій відкритий для загального огляду, коментарів та пропозицій про зміни, то вам навіть не потрібно платити за обліковий запис Github.

Публічний репозиторій також відстежує звані форки оригінального клієнта. Форк створює клон початкового ПЗ, який можна модифікувати з тією чи іншою метою, не змінюючи початкове сховище. Розробники без обмежень роблять форки для репозиторію Bitcoin Core на Github, щоб створити або специфічні додатки, сумісні з біткоїном (наприклад, гаманець для смартфонів), або нову криптовалюту, яка перестає бути сумісною з мережею біткоїну і передбачає створення нової криптовалют було з лайткоїном або Zcash). На сьогоднішній день оригінальний клієнт Bitcoin Core пережив форк більше 10 000 разів, і нові репозиторії, що з'являються, демонструють, що створення похідних продуктів триває.

На ефіріум зараз припадає щонайменше 121 репозиторій, кожен з яких фокусується на певному аспекті проекту (наприклад, мовами програмування для написання смарт-контрактів, графічних браузерах для взаємодії кінцевого користувача з мережею ефіру, сумісних клієнтів для участі у роботі мережі тощо). ). Є не менше восьми проектів, спрямованих на розробку сумісних з ефіром клієнтів, а над найбільш популярними клієнтами (go-ethereum і Parity) працюють сотні незалежних розробників. Код ефіріуму та його повна історія, як і код, а також історія біткоїну, доступні для публічного огляду на Github та в інших мережевих сховищах, і всі коди випускаються відповідно до ліцензії LGPL-3, що вимагає випускати всі майбутні похідні розробки з такою самою ліцензією.

Навіть нещодавні проекти, реалізовані з ініціативи комерційних стартапів, демонструють відданість відкритому кредо вихідного коду. Zcash Company розробляє протокол Zcash у вигляді публічного репозиторію. Декілька провідних розробників не працюють на компанію, а спеціально створена некомерційна організація покликана стежити за тим, щоб поступово відбувся перехід від розробки, що здійснюється компанією, до розробки силами спільноти. База вихідного коду Zcash випускається з ліцензією Массачусетського технологічного інституту. Protocol labs, розробник Filecoin, має намір створити аналогічну відкриту модель і вже протестував її у своєму проекті IPFS, працюючи з кодом у відкритих репозиторіях та випускаючи його з ліцензією MIT.

Чому відкритий вихідний код важливий

Криптовалюти та відкриті блокчейни здатні забезпечити функціонал, який був би регульованим, якби його джерелом була одна-єдина корпорація. Централізовані емітенти цифрової валюти, такі як Liberty Reserve або E-gold, були фінансовими сервісами і повинні були реєструватися в Управлінні Міністерства фінансів США по боротьбі з фінансовими злочинами, а також отримувати ліцензію, що дозволяє переказувати гроші в кожному штаті. Якщо такі токени будуть просуватися на ринку для залучення інвесторів, вони можуть бути прирівняні до цінних паперів, і в такому разі потрібно буде реєструвати Комісію з цінних паперів і бірж США. Ці обмеження мають сенс, оскільки централізовані послуги пов'язані з ризиком того, що сторона, що знаходиться в центрі всієї схеми, не зможе виконати свої обіцянки адекватно протестувавши продукт і зробивши його безпечним.

Однак технології на кшталт біткоїну здатні запропонувати аналогічний функціонал, будучи відкритими і нікому не що належать мережами. Тут немає жодної корпорації. До цих мереж приєднуються користувачі, а відкрите програмне забезпечення стимулює їхнє прагнення співпраці. Зрештою, всі учасники приходять до згоди щодо кожного фрагмента даних, необхідних для створення валюти. Децентралізація тримається на двох стовпах: відкритих механізмах консенсусу та програмного забезпечення з відкритим вихідним кодом. Якби код не був відкритим, то як би учасники (не знайомі один з одним люди в інтернеті) зуміли зрозуміти систему, до якої вони приєднуються, і довіритися їй?

Насправді токен-проекти, засновані на патентованому коді, можуть виявитися просто централізованими сервісами, які ховаються за професійним сленгом та «абракадаброю блокчейну». Однак у «справжніх» проектів код, що створює децентралізовану мережу, що дозволяє учасникам довіряти один одному, мати загальну мотивацію та карати шахраїв, і сам собою децентралізований. Його розробляють у всіх на очах сотні ентузіастів, він доступний усім у світі для використання та модифікації та абсолютно незалежний від корпоративних інтересів.