Code of Conduct: разработчиците на Linux ядрото заплашиха да премахнат своя код
През месец септември тази година бордът на директорите на Linux Foundation прие нов кодекс на поведение за разработчиците на Linux ядрото. Това е Code of Conduct (CoC), който би трябвало да реши проблемите с дискриминацията и да подобри емоционалната обстановка.Много програмисти се оплакаха, че това е съвсем излишно регулиране и заплашиха да премахнат написания от всеки един от тях код от Linux ядрото.
ПредисториятаВ средата на миналия месец Линус Торвалдс обяви, че излиза в нещо като отпуск и няма да управлява разработването на Linux. Торвалдс каза, че трябва да си почине и да обмисли маниерите си на поведение с другите (създателят на Linux е добре познат с доста резките си изказвания). С пост в LKML той се извини на пред всички и изчезна от Linux сцената.
По време на неговото отсъствие ръководството на Linux бе поето от Грег Гроа-Хартман (Greg Kroah-Hartman), който се зае с поддръжката на стабилните версии на Linux Kernel. Но Грег направи нещо странно – предложи приемането на новия кодекс Code of Conduct. Редица програмисти се съгласиха и документът бе приет, като основната му цел е да промени културата на общуване.
Code of Conduct се базира на стандарта Contributor Covenant, използван от Ruby on Rails, Swift, Golang и JRuby разработчиците. Той описва правилата на поведение с другите програмисти и забранява каквато и да било дискриминация.
Разработчиците са против тези правила на поведениеМного от разработчиците на Linux ядрото категорично не са съгласни с въвеждането на CoC. Те се опасяват, че новите правила ще доведат до излишно регулиране и затрудняване на работата. Някои от тях са толкова разгневени, че призоваха всички не само да напуснат Linux Kernel обществото, но и да премахнат и забранят използването на написания от тях Kernel код.
Най-голямо недоволство предизвика клаузата в CoC, според която на всеки разработчик може да се забрани да работи със своя си сорс код, ако личността на автора не се харесва на общността. Недоумение предизвиква и забраната за добавянето на „унизителни коментари“, без да са описани правилата за тяхното определене като унизителни и не е ясно какви точно ще са наказанията за провинилия се по този начин програмист.
Третата причина, по която се спори, е въпросът за културните различния. CoC предлага единен стил на общуване за хората от различни страни, включително и за разработчиците, за които английският не е роден език. Възможно е те да се затруднят да напишат най-правилните коментари. Досега нямаше нищо подобно.
Има ли заплаха за Linux ядротоЛегендата на Open Source обществото Ерик Реймънд (Eric Raymond) предположи, че недоволните разработчици наистина могат да забранят използването на своя код в Linux ядрото.
Linux Kernel използва универсалния GNUv2 лиценз, в който няма забрана за разваляне на споразумението между автора на кода и отворения проект (в GNUv3 има подобен пункт). Ето защо недоволните от CoC считат, че имат право да си вземат написания от тях код за Linux ядрото и да задължат Linux Foundation да го премахне от хранилищата.
СтолманПрограмистът и създател на GNU Ричард Столман (Richard Stallman) счита, че няма как просто така да се вземе код от Linux ядрото. В текста на GNU ясно и категорично се казва, че разработчикът позволява на другите да копират, модифицират и разпространяват неговия код.
Думите на Столман бяха анализирани от юристите на некомерсиалната организация Software Freedom Conservancy, която всъщност създаде ръководството на GNU лиценза, и публикуваха своя анализ. Според юристите, създателят на приложение или помощна програма не може да накара потребителите да ги премахнат. Но може да забрани разпространението на своя код в бъдещи програмни продукти.
Юристите подчертаха, че не може да се отмени съгласието на използването на кода поради принципа на естопел (promissory estoppel). Този международен принцип забранява разтрогването на устен договор или споразумение, ако това нанася вреда на едната страна. Забраната за използване на програмния код със сигурност ще предизвика големи проблеми за твърде много компании. Ето защо Software Freedom Conservancy счита, че едва ли ще се стигне до премахване на код от Linux ядрото.
По този повод Ерик Реймънд заяви още, че всички проблеми с CoC са свързани с това, че той не съответства на целите, около които е изградена Linux Kernel общността – а именно, създаването на качествен код. Той призова всички да формулират какви са им ценностите като разработчици на Linux ядрото и да кажат, защо точно участват и желаят да участват в този проект. По този начин ще бъдат описани правила на поведение, които ще са удобни за всички и ще дадат възможност за по-ефективно развитие на Linux ядрото и другите отворени проекти.
