Цей переклад може не відображати змін, внесених із2023-10-08у англійський оригінал.

Ви можете поглянути на ці зміни.Будь-ласка перегляньтефааил自述перекладівдля того, щоб отримати інформацію про координуванняперекладів цієї статті.

Чому відкритий вихідний код не передає поняття вільна програма

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

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

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

Десятки мільйонів людей по всьому світу використовують сьогодні вільніпрограми: громадські школи деяких регіонів Індії та Іспанії тепер викладаютьвсім учням роботу у вільнійопераційнійсистемиGNU/Linux. Однак більшість цих користувачів ніколи не чули проетичні причини, за якими ми розробили цю систему і побудували громадувільного програмного забезпечення, тому що сьогодні про цю систему іспільноту говорять як про “відкритий вихідний код”, вважаючи їхплодом іншої філософії, в якій ці свободи ледь згадуються.

Рух за вільне програмне забезпечення боровся за свободу користувачів з1983 року. У 1984 році ми дали старт розробці вільної операційної我国GNU,我国відмовляють своїм користувачам у свободі. За вісімдесяті рокиXX公司名称склали国民总产值(GNU)GPL), щоб випускати їх під цією ліцензією,— ліцензію, створенуспеціально для того, щоб захистити свободу всіх користувачів програми.

Не всі користувачі і розробники вільних програм співчували цілям руху завільне програмне забезпечення. В 1998 році частина спільноти вільногопрограмного забезпечення відкололася і почала кампанію під іменем“відкритого вихідного коду”. Цей термін спочатку булозапропоновано, щоб уникнути можливого неправильного тлумачення терміна“вільна програма”, але дуже скоро він почав асоціюватися зфілософськими поглядами, абсолютно відмінними від поглядів руху за вільнепрограмне забезпечення.

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

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

Проте для руху за вільне програмне забезпечення, невільніпрограми — це соціальна проблема, для розв'язання якої слідповністю припинити користуватися ними й перейти на вільні програми.

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

Ми, учасники руху за вільне програмне забезпечення, не думаємо про табірвідкритого вихідного коду як про ворога: противник - невільні програми. Алеми хочемо, щоб люди знали, що ми стоїмо за свободу, тому ми не допускаємоневірного віднесення нас до прихильників відкритого вихідного коду. Те, щоми пропагуємо, це не “відкритий код”; те, проти чого мивиступаємо, це не “закритий код”. Задля ясності, ми уникаємовикористання цих термінів.

Практичні відмінності між вільними програмами і відкритим вихідним кодом

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

По-перше, деякі ліцензії відкритого вихідного коду занадто жорсткі, томувони не можуть вважатися ліцензіями вільних програм. “打开”Watcom“水务公司”версії і використовувати їх у приватному порядку. На щастя, мало програмзастосовують ці ліцензії.

По-друге, критерії відкритого коду визначаються винятково ліцензуваннямвихідного коду. Термін “відкритий код” часто застосовують довиконуваного файлу, вихідний код якого загальнодоступний. Це створюєплутанину в парадоксальних випадках, коли вихідний код відкритий (івільний), але власне виконуваний файл невільний.

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

Буває й складніший, суттєво шкідливіший випадок. Чимало виробів, що містятькомп'ютери, перевіряють підписи на файлах виконуваних ними програм і недають користувачам встановлювати інші виконувані файли; тільки однапривілейована компанія може робити виконувані файли, які можуть працювати впристрої або отримувати доступ до всіх його можливостей. Ми називаємо ціпристрої “тиранами”, а практика називається“名称”、“名称”вперше це побачили. Навіть якщо виконуваний файл зроблений з вільноговихідного тексту й формально доступний під вільною ліцензією, користувачі неможуть працювати з його зміненими версіями, тож виконуваний файл на діліневільний.

安卓系统-вир,第二,GNU GPL。(МиробиЛиGNU GPLверсуї3,абаб的оро.нитиТакуПраКктаикау;硬件、Linuxі не було на неї переведено.) Про ці виконувані файли, зібрані з відкритогой вільного вихідного коду, переважно говорять як про “відкритийкод,” але вонине євільним програмним забезпеченням.

Поширені помилки щодо “вільних програм” та “відкритоговихідного коду”

Термін “вільна програма” схильний до невірного тлумачення:ненавмисне значення “програма, яку ви можете отримати за нульовоюціною” підходить під цей термін разом із тлумаченням, що це “програма, яка дає користувачеві певні свободи”. Ми вирішуємо цюпроблему, публікуючи визначення вільних програм і кажучи: “Думайте про‘вільну промову’, а не про ‘безкоштовнепиво’”. Це не ідеальне рішення; воно не може повністю усунутипроблему. Однозначний і коректний термін був би кращим, якби він не містив усобі інших проблем.

На жаль, у всіх альтернатив в англійській мові є свої проблеми. Мирозглянули багато чого з того, що нам пропонували, але ніщо не було так явно“правильно”, щоб перехід на це слово було б гарноюідеєю. (Наприклад, у деяких контекстах французьке та іспанське слово “libre“ДобреПiДхоДитб,алераннДiїаатаеаинимамоаотссмнеенакоомт)。Укожній запропонованій заміні терміну “вільна програма” є та чиінша семантична проблема   у тому числі і у “ відкритоговихідного коду”.

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

Проте очевидне значення виразу “програма з відкритим вихіднимкодом” — “ви можете переглядати джерельнийкод”,— і більшість людей, вірогідно, думають, що воно й справдіце означає. Цей критерій набагато слабший за визначення вільної програми, атакож набагато слабший за офіційне визначення відкритого вихідногокоду. Йому відповідає багато програм, які не є ні вільними програмами, аніпрограмами з відкритим вихідним кодом.

Чому в людей виникає таке нерозуміння? Бо це природне значення слів«відкритий код». Але концепт, для якого шанувальниці й шанувальникивідкритого коду вигадали іншу назву, був варіантом концепту вільногопрограмного забезпечення.

Оскільки наївне тлумачення “відкритого вихідного коду” неозначає того, що передбачають його захисники, це призводить до того, щобільшість людей неправильно розуміють термін. За письменником Нілом“Linux系统вихідним текстом’, тобто кожен може отримати копії файлів вихідногокоду”. Я не думаю, що він навмисно прагнув спростувати чи заперечитиофіційне визначення. Я вважаю, що він просто застосував правила англійськоїмови, щоб отримати суть терміну.ШтатКанзасопублікував подібне визначення: “Застосування програм з第五条(开源软件абоOSS)。操作系统-це програма, вихідний код якої вільно і публічно доступний, хоча різніліцензійні угоди по-різному визначають, що дозволено робити з цим вихіднимкодом”.

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

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

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

Ще одна омана щодо “відкритого вихідного коду ”  “GNU GPL”。Ця думка має тенденціюпоєднуватися з іншою помилкою,  що “ вільна програма”“GPL”。Kung-iте、нi i i d hенев、рно、боGNU GPLзадовольняє критеріям відкритого вихідного коду, і більшість ліцензійпрограм з відкритим вихідним кодом можна визнати ліцензіями вільнихпрограм. Ось тутбагато ліцензійвільних програмGNU GPL。

Поняття “відкритий вихідний код” згодом було перенесене на іншудіяльність, наприклад, державну, освітню, наукову, де такого поняття, як“вихідний код”, не існує, і де критерії ліцензування програмпросто безглузді. Єдине, що об'єднує ці види діяльності — це те,що вони тим чи іншим чином запрошують людей до участі. Вони розтягнули цепоняття до того, що воно означає тільки участь з боку, прозорість або навітьменше. У найгірших випадках воностає порожнім модним слівцем.

Різні цінності можуть вести до подібних висновків… але не завжди

众议员схильністю до розколів: організації розбивалися через незгоди в деталяхстратегії, і дві дочірні групи вважали один одного ворогами, незважаючи нате, що основні цілі та цінності у них були схожі. Праве крило всілякороздувало це і користувалося цим для критики лівих взагалі.

Деякі намагаються применшити рух за вільне програмне забезпечення,порівнюючи наші розбіжності з “відкритим вихідним кодом” зрозбіжностями між тими радикальними групами. Вони перевертають все з ніг наголову. Ми не згодні з табором відкритого вихідного тексту в основних ціляхта цінностях, але їхні та наші погляди призводять у багатьох випадках доодної і тої ж практичної поведінки   такої, як розробка вільнихпрограм.

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

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

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

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

Ефективна надійна програма може бути поганою

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

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

Під тиском компаній відео - і звукозапису програми для особистогокористування розробляються все більшою мірою спеціально для того, щобобмежити користувачів. “数字版权管理”керування обмеженнями” (див.缺陷ByDesign.org). Ці діїсуперечать духу свободи, яку вільні програми прагнуть надати. І не тільки第五条:第五条DRM第四条,илилинемима数字版权管理。

І все ж деякі прихильники відкритого вихідного коду запропонували програми з“数字版权管理”。Їхня ідея    у тому,що, публікуючи вихідний код програм, розроблених для обмеження доступу дошифрованих носіїв, і дозволяючи іншим правити його, вони зроблятьефективніші та надійніші програми для обмеження користувачів   накшталт вас. А потім така програма була б доставлена вам в пристроях, які недозволяють вам змінювати її.

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

Страх свободи

Головна первісна мотивація тих, хто відокремився в табір відкритоговихідного коду, полягає в тому, що етичні ідеї “вільних програм”відлякують деяких людей. Це правда: піднімати такі етичні питання, яксвобода, говорити про відповідальність, а не тільки про зручність, значитьпросити людей думати про речі, які вони, можливо, воліли б ігнорувати,наприклад, чи етичний їх спосіб життя. Це може викликати дискомфорт, і деякіможуть просто відвернутися від цього. Але з цього не випливає, що ми повинніперестати говорити про ці проблеми.

Саме це вирішили зробити лідери відкритого вихідного коду. Вони зрозуміли,що замовчуючи про етику та свободи і говорячи тільки про негайні практичнівигоди визначених вільних програм, вони могли б ефективніше“пропонувати” ці програми певним користувачам, особливопідприємцям.

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

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

Рано чи пізно цих користувачів запросять повернутися назад до невільнихпрограм заради якої-небудь практичної вигоди. Незліченні компанії прагнутьзапропонувати таку спокуса, деякі навіть пропонують безкоштовні копії. Вякому випадку користувачі будуть відмовлятися? Тільки якщо вони навчилисяцінувати свободу, яку їм дають вільні програми,— цінувати свободу яктаку, а не технічні і практичні зручності конкретної вільної програми. Щобдонести цю думку, нам необхідно говорити про свободу. Підхід“замовчування” по відношенню до підприємців певною мірою можебути корисний для спільноти, але це небезпечно, якщо стає настільки звичним,що любов до свободи починають вважати ексцентричністю.

Ця небезпечна ситуація   є те, що ми маємо. Більшість людей, щозаймаються вільними програмами, особливо постачальники, мало говорять просвободу   зазвичай через прагнення бути “ прийнятнішими дляділових кіл”. GNU/Linux软件додають невільні пакети програм до основної вільної системи, і вонизапрошують користувачів розглядати це як перевагу, а не недолік.

Невільні додаткові програми і частково невільні дистрибутиви операційноїсистемиGNU/LinuxнахоДттбаГоатнирунтому,абтамауу、асутунашій громаді не наполягають на свободі своїх програм. Це невипадково. БиистткориСтуутаамабВGNU/LinuxПонаимоссатемноаереетобговорення “відкритого вихідного коду”, в ході якого неговориться, що свобода — це мета. Підходи, які не відстоюютьсвободу, і слова, які не говорять про свободу, йдуть пліч-о-пліч,підтримуючи один одного. Щоб подолати цю тенденцію, нам потрібно більше, ане менше, говорити про свободу.

“FLOSS”та“FOSS”

“FLOSS”或“FOSS”зберігатинейтралітет міжвільними програми і відкритим вихідним кодом. Якщо ваша мета -“牙线”“自由和开放源码软件”。Але якщо ви хочетевідстоювати свободу, то ці нейтральні вирази вам не підійдуть. У цьомувипадку вам потрібно показувати людям, що ви виступаєте за підтримкусвободи.

Суперництво у мізках

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

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

Висновок

Коли прихильники відкритого вихідного коду втягують нових користувачів унашу громаду, ми, активісти вільного програмного забезпечення, повинні взятина свої плечі завдання залучення їх уваги до питання свободи. Частіше іголосніше, ніж коли-небудь, ми повинні говорити: “Це вільна програма,вона дає вам свободу!” Щоразу, коли ви говорите “вільнапрограма”, а не “відкритий вихідний код”, ви допомагаєтенашій кампанії.

Примітки

Робота Лакхані і Вольфапро мотивації розробників вільного програмного забезпеченняговорить, щодля значної їх частини мотивом були погляди, згідно яких програми повиннібути вільними. І це незважаючи на те, що вони опитували розробників наSourceForge公司це   питання етики.