Недоліки відкритого програмного забезпечення
CyanogenMod мертвий, убитий материнською компанією Cyanogen. Спільнота намагається підібрати частини і створити новий проект, LineageOS, на основі коду. Але це нагадування про те, що програмне забезпечення з відкритим вихідним кодом - не лише світло, веселка і стабільність: насправді часто буває дуже брудним.
Навіть якщо проект є відкритим кодом, він не обов'язково навіть реагує на спільноту, тим більше на надійний програмний продукт, від якого можна залежати. Проекти розрізняються: деякі управляються одним або двома розробниками як хобі, інші об'єднують розробників, що сплачуються багатьма великими корпораціями, а інші керуються однією материнською компанією. У кожній ситуації є свої проблеми і драма.
Ми любимо програмне забезпечення з відкритим вихідним кодом - не зрозумійте нас неправильно - але це являє собою певну кількість проблем. Давайте подивимося на кілька.
Відкритий джерело часто страждає від затримок і льодовикового розвитку
Багато проектів з відкритим кодом, здається, страждають від повільного темпу розвитку, де нові версії нескінченно затримуються, нові функції приходять повільно, якщо взагалі коли-небудь, і важко визначити пріоритети важко-важливих функцій.
Просто подивіться на спроби Ubuntu запустити свій Unity 8 настільний і Mir дисплея сервер, що дозволяє його бачення "конвергенції". Ця нова версія робочого столу Linux повинна була бути стабільною багато років тому і досі не є. Проект перемістився льодовиковими темпами, настільки, що Canonical був побитий до удару Microsoft, який оголосив про своє власне бачення PC-на-смартфоні перед Windows 10-а і поставив на ньому. Canonical ще не витримала свого давно обіцяного бачення. Можливо, він буде стабільним ще кілька років.
Mozilla також мав певні труднощі щодо визначення пріоритетів. Вони все ще не надають багатофункціональних та пісочницьких функцій у Firefox. Вони критично важливі для забезпечення безпечного браузера, запобігання збоям у знести весь браузер, а також краще використовувати багатопроцесорні процесори. Всі інші основні браузери поставили ці функції, включаючи ненависний Internet Explorer. Mozilla розробив проект «Електроліз», щоб додати ці функції, але припинив його у 2011 році, оскільки це було занадто складно. Mozilla потім довелося перезапустити його в 2013 році. Ця функція виглядає встановленою, щоб прибути в 2017 році, що дійсно, дуже пізно. У той же час, Mozilla витрачала час на роботу в ОС Firefox, що не вдалася операційною системою смартфона.
Коли проект використовує так багато розробників-волонтерів, у нього можуть виникнути труднощі з пошуком людей, які б виконували важку роботу, яку не варто робити.
Внутрішня драма відганяє вилки, вилки та інші вилки
Вихідний код проекту з відкритим кодом доступний для всіх. В тім-то й річ! Якщо проект з відкритим вихідним кодом змінюється так, як вам не подобається, то ви або спільнота - можете взяти цей старий вихідний код і продовжити роботу над ним як новий проект. Проте проекти спільноти часто набувають внутрішньої драми, що вони призводять до розбиття на кілька проектів, заплутаних і відштовхуючих користувачів.
Наприклад, коли запущено GNOME 3 і багато користувачів GNOME 2 не були задоволені, не було очевидного шляху. Розробникам довелося розробити код GNOME в інші проекти, такі як MATE і Cinnamon. Одне середовище робочого столу перетворилося на три, а ресурси розробки більш розкидані між проектами. Як наслідок, громаді було потрібно деякий час, щоб отримати ці нові проекти.
Подібним чином, спільнота OpenOffice не була щаслива, коли Oracle придбала Sun. Компанія Oracle навіть коротко перейменувала свій власний офісний пакет StarOffice з відкритим вихідним кодом на "Oracle Open Office". Співтовариство повинно було створити нову вилку LibreOffice на основі коду OpenOffice. Він став де-факто офісним пакетом з відкритим кодом для багатьох людей, але інші все ще використовують OpenOffice, тому що вони не знають про краще вилку і драми, що його оточують. OpenOffice просто має багато вбудованого розпізнавання імен.
І, звичайно, є CyanogenMod. Cyanogen Inc просто витягнув плагін на онлайн-сервіси CyanogenMod - маючи на увазі, що вони скоріше вб'ють найпопулярніший Android-диск від третьої сторони, а не передадуть його спільноті, але змушують спільноту створити нову вилку CyanogenMod під назвою LineageOS. Чому Cyanogen не передає проект CyanogenMod спільноті? Відповідь, здається, внутрішня драма (чи бачите ви тут зразок?). Cyanogen була компанія, чий генеральний директор пообіцяв, що вони будуть "поставити кулю через голову Google", в кінці кінців. Це закінчилося тим, щоб поставити кулю через голову CyanogenMod, замість цього.
Все це просто закінчується тим, що завдають шкоди користувачам CyanogenMod, які отримали дуже мало уваги до того, як сервери та служби CyanogenMod будуть закриті. Телефони будуть продовжувати працювати, але зручні оновлення та інші сервіси піднімаються в дим майже за ніч. Користувачі просто повинні сподіватися, що проект LineageOS швидко стане заміною.
Не всі проекти з відкритим вихідним кодом керуються спільнотою
Проекти з відкритим кодом не завжди керуються спільнотою. Призначення програми з відкритим кодом просто означає, що код доступний для того, щоб робити те, що вам подобається. Компанія, що розробляє програмне забезпечення, не обов'язково має запускати її як проект спільноти, або вони можуть зацікавитися використанням проекту для просування свого іншого програмного забезпечення.
CyanogenMod - хороший приклад цього. Після того, як Cyanogen вступила в дію, вони не дуже піклувалися про CyanogenMod. Нова мета Cyanogen стала маркетингом платформи Cyanogen Modular OS для виробників, які торгували на великому визнанні імені CyanogenMod після вбивства проекту. Можливо, саме там гроші.
Oracle ніколи не піклувалася про OpenOffice, але спочатку хотіла використати свою назву для продажу продажів свого офісного офісного пакету StarOffice, поширюючи його на назву "Open Office". Потім він подарував проект Apache після того, як більшість розробників-волонтерів пішли.
Google також не піклується про Android як про проект з відкритим вихідним кодом, і тому все більше і більше частин проекту «Android Open Source» (або «AOSP») залишаються позаду. Google хоче, щоб Android був відкритий, тому для виробників легко налаштовувати, але програми з відкритим кодом, такі як клавіатура і дозвон, стають все більш застарілими. На споживчому пристрої Android, Google просто поєднує свою закриту вихідну клавіатуру, дозвону та інші програми. Google, здається, докладає зусиль до ядра з відкритим вихідним кодом Android, але не всієї операційної системи з відкритим вихідним кодом люди можуть використовувати без програмного забезпечення та служб Google. Зрештою, вдосконалення проекту з відкритим вихідним кодом Android просто допомагає Amazon's Fire OS, конкурента пристроїв Google Android. Який сенс цього?
Відкритий вихідний код може не мати серйозних трудових ресурсів, незважаючи на те, що їх використовують мільйони
Якщо проект є відкритим кодом, кожен може використовувати його, не вкладаючи навіть масових компаній. Це призводить до проблем, коли важливий, широко використовуваний проект має серйозний дефіцит робочої сили та коштів.
Результати цього ми бачили в Heartbeded в 2014 році. Heartbleed використовував уразливість OpenSSL. OpenSSL є важливою бібліотекою шифрування, що використовується багатьма гігантськими технологічними компаніями і сотнями тисяч веб-серверів. Але вона мала лише одного штатного працівника без зовнішньої зайнятості і $ 2000 на рік у пожертвуваннях. Проект залучив додаткові кошти від контрактів на комерційну підтримку та консалтингу, але тільки один штатний співробітник здається вражаюче низьким для критичної частини інфраструктури, що використовується багатомільярдними корпораціями, такими як Google та Facebook.
Heartbleed звернув увагу на те, наскільки недофінансовано це важливе програмне забезпечення, так що великі технологічні компанії щороку зобов'язувалися заробляти гроші, щоб фінансувати розвиток OpenSSL та інших важливих проектів в рамках «Основної інфраструктурної ініціативи»..
Є хороший результат цієї історії, напевно, але тільки тому, що на неї було звернуто багато уваги. Коли ви розраховуєте на проект з відкритим кодом, щоб увімкнути свою інфраструктуру, це легко закінчитися залежно від цього і припустити, що хтось інший підтримує його досить добре. Який інший важливий проект з відкритим кодом критично недофінансований? Ми можемо не помітити, поки не з'явиться ще одна велика проблема.
Зображення кредит: snoopsmaus