GNU манифест

Од Сподели wiki
Прејди на прегледникот Прејди на пребарувањето

Што е GNU? GNU не е Unix

GNU, што означува GNU не е Unix (GNU is not Unix), е името на целосен Unix компатибилен софтверски систем кој го пишувам со што ќе можам слободно да го споделам со секој кој сака да го користи. (1) Ми помагаат неколку останати доброволци. Прилози за време, пари, програми и опрема се особено добредојдени.

Досега го имаме Emacs уредувачот за текст со Lisp за извршување команди за уредување, поправач за изворен код, генератор за парсирање компатибилен со Yacc, поврзувач и околу 35 други алатки. Школката (командниот интерпретер) речиси е завршена. Нов пренослив оптимизиран компајлер за C се искомпајлира себеси и може да биде објавен во текот на оваа година. Почетна фаза на јадро постои но потребни се многу други можности за да се емулира Unix средина. Штом јадрото и компајлерот се завршат, ќе може да се дистрибуира GNU систем способен за развој на програми. Ќе користиме TeX како алатка за форматирање на текст, а исто така се работи и врз nroff. Исто така ќе го користиме и слободниот пренослив X систем за прозорци. После тоа ќе додадеме пренослив Common Lisp (??), Empire игра (??), табеларен уредувач и стотици други алатки, плус онлајн документација. Се надеваме дека ќе овозможиме, евентуално, се што е корисно и што доаѓа со стандарден Unix систем, и многу повеќе.

GNU ќе може да пушта Unix програми, но нема да е идентичен со Unix. Ќе ги направиме сите подобрувања кои ќе ја олеснат работата на корисниците, базирани на нашето искуство со другите оперативни системи. Особено имаме во план да овозможиме долги имиња за датотеки, верзии на датотеките, безбеден и стабилен датотечен систем, комплетирање на имиња на датотеки веројатно, поддршка за терминално-независен приказ и веројатно Lisp базиран систем за прозорци преку кој неколку Lisp и вообичани Unix апликации ќе може да го споделуваат екранот. И C и Lisp ќе бидат достапни како јазици за програмирање. Ќе се обидеме да ги поддржиме UUCP, MIT, Chaosnet и Интернет протоколите за комуникација.

GNU првенствено е наменет за машини во класата 68000/16000 со виртуелна меморија, затоа што тие се наједноставните машини каде што може да се пушти. Диполнителни напори да се пушта и на послаби машини ќе бидат оставени за некој кој сака да користи GNU на таков хардвер.

За да се избегнат страшни забуни, изговарајте го 'G' во зборот 'GNU' кога се работи за името на овој проект.

Зошто морам да го напишам GNU

Сметам дека постои златно правило кое вели дека ако мене ми се допаѓа некоја програма, тогаш треба да имам право да ја споделам со други корисници на кои им се допаѓа. Продавачите на софтвер сакаат да ги разединат корисниците и да им кажуваат што да прават (conquer them – да ги освојат??), со што корисникот би се сложил да не го споделува софтверот со други корисници. Одбивам да бидам несолидарен кон другите корисници на овој начин. Не можам да дозволам при здрав разум да се согласам со договор кој нема да дозволи обелоденување на софтверот. Со години работев во лабораторијата за вештачка интелегенција врз спротивставување на такви тенденции и други негостопримливи активности, но за жал тие претераа: не можев да останам во институција каде што нештата се прават за мене против мојата волја.

Но, бидејќи сакав да користам компјутери без обесправување, решив да склопам „тело“ од слободен софтвер со што ќе можам да се справам со секој софтвер кој не е слободен. Се откажав од Al lab за да се заштитам во случај да MIT се обиде да ме спречи да го дадам GNU слободно.

Зошто GNU ќе е компатибилен со Unix

Unix не е мојот идеален систем, но не е толку лош. Основните можности на Unix Unix се добри сметам дека ќе надополнам се што недостасува кај Unix без нивно расипување. Освен тоа, ќе биде полесно за луѓето да прифатат систем компатибилен со Unix.

Како GNU ќе биде достапен

GNU не е јавна сопственост. Секој има дозвола да го изменува и редистрибуира GNU, но дистрибутерот ќе нема право да забрани негово понатамошно редистрибуирање. Така, сопственички (proprietary) измени нема да бидат дозволени. Сакам да осигурам дека сите верзии на GNU ќе останат слободни.

Зошто многу други програмери сакаат да помогнат

Најдов многу други програмери кои се возбудени околу GNU и сакаат да помогнат. Многу програмери не се среќни со комерцијализацијата на системскиот софтвер. Тој може да им донесе многу поголема заработувачка, но од нив бара да се осеќаат како да се во судир со другите програмери, наместо да ги чувствуваат како другари. Основното начело на другарството помеѓу програмерите е споделување на програмите; денешните маркетиншки договори забрануваат програмерите да се однесуваат спрема другите како другари. Набавувачот на софтвер мора да избере помеѓу пријателство и почитување на законот. Нормално, многу одлучуваат дека другарството е поважно. Но оние кои веруваат во законот често не се осеќаат комотно со ниеден избор. Стануваат цинични и сметаат дека програмирањето е само начин за правење пари.

Работејќи на GNU и користејќи го него наместо неслободни програми, можеме да бидеме гостопримливи за секого и воедно да го почитуваме законот. Покрај тоа, GNU служи за пример да инспирира и како реклама да ги повика другите да ни се придружат во споделувањето. Ова може да ни даде чувство на хармонија која е невозможна доколку користиме софтвер кој не е слободен. Со речиси половина од програмерите со кои зборува, тоа е битен момент на среќа кој парите не можат да го заменат.

Како можете да помогнете

       (Денес погледајте го списокот за задачи на GNU на кои треба да се работи.
       Други начини на кои можете да помогнете, можете да видите на  http://www.gnu.org/help.) 

Барам од производителите на компјутери прилози во машини и пари. Ги замолувам поединците да придонесат со прилози во програми и работа.

Доколку донирате компјутер, можете за брзо време да очекувате GNU да работи и на нив. Машините би требало да бидат потполни системи, спремни за употреба, со дозвола за работа во населени области и без потреба за комплициран систем за ладење или напојување.

Пронајдов многу програмери желни за хонорарно работење во GNU проектот. За поголемиот број проекти, таквите хонорарни ангажмани за групна работа би биле многу тешки за координирање; независно напишаните делови не би функционирале меѓусебно. Но за конкретната задача за замена на Unix овие проблеми не постојат. Целосен Unix систем содржи стотици помошни програми, секоја посебно документирана. Повеќете спецификации за интерфејси се во согласност со Unix. Доколку секој придонесувач може да напише соодветна замена за некоја Unix алатка и да овозможи нејзино функционирање на оригинален Unix систем, тогаш овие алатки ќе работат и кога ќе се состават. Дури и ако Марфи предизвика неколку неочекувани проблеми, составувањето на одделните парчиња би била изводлива задача.(Јадрото ќе бара поблиска комуникација и ќе биде работено од мала, потесна група).

Ако добијам донации во пари, ќе бидам во можност да вработам неколку луѓе за хонорарна работа. Платата нема да биде голема во однос на стандардите на програмерите, но потрени се луѓе на кои важноста од градење дух на заедништво е исто толку важна како и заработувањето. На ова гледам како на начин за овозможување на посветените луѓе да ја посветат сета своја сила за работа на GNU со што ќе се поштедат од потребата да заработуваат за живот на друг начин.

Зошто сите корисници на компјутери ќе имаат корист

Кога еднаш ќе се напише GNU, секој ќе биде во можност да набави добар системски софтвер слободно, исто како и воздухот што го дише.(2) Ова ќе значи многу повеќе од избегнувањето на високите цени за лиценци на Unix. Ова значи дека ќе се избегне непотребно удвојување на труд за системско програмирање. Тие напори може да се искористат за дополнително унапредување на можностите на софтверот.

Целоснен изворен код на системот ќе им биде достапен на секого. Како последица на ова, корисникот кој има потреба од измени во системот секогаш ќе има можност да ги направи самиот, или да најми програмер или компанија да ги направат за него. Корисниците нема да бидат препуштени на милоста на еден програмер или компанија која го поседува изворниот код и е во позиција да прави измени.

Училиштата ќе можат да овозможат подобар образовна средина со охрабрување на студентите да го проучуваат и подобруваат системскиот код. Во лабораторијата на Харвард постоеше правило кое велеше дека ниедна програма не смее да биде инсталирана на системот доколку нејзиниот изворен код не беше јавно достапен и тие се прдржуваа до тоа правило не дозволувајќи да инсталираат одредени програми. Тоа беше голема инспирација за мене. На крајот, ќе престане прекумерената контрола за тоа кој го поседува системскоот софтвер и што со него смее и не смее да прави. Договорите кои ги тераат луѓето да плаќаат за користење на програма, вклучувајќи лиценцирање на копии, секогаш сносат огромна цена за општеството преку незгодни механизми потребни за да се процени колку (во смисла програми) некој мора да плати. Само полициска држава може да примора некој да се покори пред нив. Да земеме за пример вселенска станица каде што воздухот треба да се произведува за висока цена: наплатувањето за секој кој дише по литро воздух може да биде фер, но носењето на гас маска со мерач која треба да се носи по цел ден и ноќ не може да се толерира, дури и секој да може да си дозволи да ја плати сметката за воздух. И камерите поставени насекаде кои ќе можат да забележат дали вие ја вадите маската би биле вистинска срамота. Подобро е да подджите фабрика за воздух со давачки по глава на жител и да се ослободите од маските.

Копирањето на целата или делови од програмата е природно за програмерот како и дишењето, и исто толку продуктивно. И мора да биде исто толку бесплатно.

Некои приговори за целите на GNU проектот кои лесно можат да се побијат

"Никој нема да го користи ако е бесплатен, затоа што тоа значи дека не можат да се надеваат на поддршка."

"Мора да наплаќате за програмата за да се плати овозможување на поддршка."

Ако луѓето радо би платиле за GNU со поддршка отколку да го набават бесплатно без поддршка, компанијата која обезбедува само поддршка за луѓето кои го набавиле GNU бесплатно би требало да биде профитабилна.(3) Мора да направиме разлика помеѓу поддршка во форма на вистинско програмирање и обично одржување. Првото е нешто на кое некој не може да се надева од снабдувачот на софтвер. Ако вашиот проблем не е споделен со доволен број на луѓе, снабдувачот на софтвер ќе ви каже да му се губите од пред очи.

Ако вашиот бизнис мора да се потпре на поддршка, единствениот начин таа да се добие е да се имаат сите потребни изворни кодови и алатки. Тогаш можете да ја најмите било која личност да го поправи вашиот проблем; не сте препуштени на милоста на една личност. Со Unix, поради високата цена на изворниот код, многу фирми не ни размислуваат за тоа. Со GNU тоа е лесно. Сеуште е можно да не постои компетентна личност, но за тој проблем не може да се обвини начинот на распределување (???). GNU не ги решава сите светски проблеми, само некои од нив. Во меѓувреме на корисниците што не знаат ништо за компјутери им треба одржување: помош околу работи кои и тие лесно ќе можат да ги направат, само не знаат како.

Такви услуги може да бидат достапни од компании што нудат услуги за поддршка. Ако е точно дека корисниците повеќе би сакале да потрошат пари за да добијат производ и поддршка, тогаш тие исто така би сакале да добијат поддршка, а производот да го добијат бесплатно. Фирмите за поддршка ќе си конкурираат за квалитетот и цената; корисниците нема да бидат приврзани со само една фирма. Притоа, тие кои не сакаат поддршка ќе можат да ја користат програмата без да платат за поддршка.

"Не можете да стигнете до многу луѓе без рекламирање, затоа мора да наплаќате за програмата."

"Нема корист од рекламирање на програма што луѓето ја добиваат бесплатно."

Има различни форми на бесплатно или многу ефтино објавување кое може да се искористи за информирање на многубројни корисници на компјутери за нешто како GNU. Најверојатно некој може да стигне до повеќе корисници на компјутери со рекламирање. Ако тоа е навистина така, фирма која рекламира услуги за копирање и испраќање на GNU по пошта за одредена цена, треба да е доволно успешна да плати за сопствено рекламирање и да заработи. На тој начин неа ќе ја плаќаат само корисници што имаат корист од рекламирањето. На овој начин, само корисниците што имаа придобивка од рекламирање плаќаат за него.

Од друга страна, ако многу луѓе го добијат GNU од своите пријатели и фирмите за поддршка не успеат, тоа ќе покаже дека рекламата и не е пресудна за ширењето на GNU. Зошто тие кои го застапуваат слободниот пазар не сакаат да остават слободниот пазар да одлучи за ова? (4)

"Мојата компанија за остварување на предност пред конкуренцијата има потреба од неслободен оперативен систем."

GNU ќе го отстрани софтверот за оперативни системи од светот на конкуренцијата. Нема да имате можност да имате предност во таа област, а исто така и вашата конкуренција нема да има предност пред вас. Ќе можете да се натпреварувате во други области, додека во оваа ќе придонесувате заеднички. Ако вие продавате оперативни системи, нема да ви се допадне GNU, но тоа е ваш проблем. Ако вашиот бизнис е нешто друго, GNU може да ве спаси од вовлекување во скап бизнис за продажба на оперативни системи.

Би сакал да го видам развојот на GNU поддржан со подароци од многу производители и корисници, намалувајќи ги трошоците за сите. (5)

"Зарем програмерите не заслужуваат награда за нивната креативност?"

Ако нешто заслужува награда, тоа е општествениот придонес. Креативноста може да биде општествен придонес, но само ако општеството е во можност да ги користи нејзините резултати. Ако програмерите заслужуваат да бидат наградени за создавањето иновативни програми, аналогно тие исто така заслужуваат да бидат и казнети ако ја ограничат употребата на истите.

"Зарем програмерот не би требало да бара награда за неговата креативност?"

Нема ништо лошо во тоа да се бара исплаќање на сработеното или да се зголеми нечиј приход, се додека некој не користи средства кои се деструктивни. Но средствата кои денес се вообичаени на полето на софтверот се засновани на деструкција.

Извлекувањето на пари од корисници на програма со забранување на нејзиното користење е деструктивно затоа што забраните ја намалуваат можноста и начините програмата да биде користена. Тоа ја намалува можноста за збогатување што човештвото го добива од програмата. Кога намерно е одлучено да се ограничи, штетните последици се намерна деструкција.

Причината поради која добриот граѓанин не користи такви деструктивни средства за да се збогати е што, ако сите би го правеле истото, сите би станале посиромашни заради меѓусебната деструктивност. Тоа е Кантова етика или златно правило. Затоа што не ми се допаѓаат последиците кои би произлегле од тоа да секој прикрива информации, тоа морам да го сфатам како погрешно. Исклучиво, желбата нечија креативност да биде наградено не го оправдува лишењето на останатиот свет од цела или дел од таа креативност.

"Дали програмерите ќе умрат од глад?"

Можам да одговорам дека никој не е приморан да биде програмер. Повеќето од нас нема да успеат да заработат стоејќи на улица правејќи гримаси (???). Но затоа пак никој од нас не е предодреден да заработува за живот стоејќи на улица правејќи гримаси и гладувајќи. Затоа работиме нешто друго.

Но тоа е грешен одговор, бидејќи ја прифаќа скриената порака на прашањето дека без сопственост врз софтверот, програмерите не можат да бидат исплатени. Се или ништо.

Вистинската причина поради која програмерите нема да гладуваат е тоа што сеуште постои можност да им биде платено за програмирање, само не толку како сега.

Ограничувањето на копирањето не е единствена можност за софтверски бизнис. Тоа е најчеста причина бидејќи носи најмногу пари. Кога би била одбиена од страна на купувачите, тогаш софтверскиот бизнис би се заосновал на други можности кои денеска се помалку се искористуваат. Постојат многубројни начини да се организира било каков бизнис. Веројатно програмирањето нема да биде толку профитабилно на друга основа како што е сега. Но тоа не е аргумент против промена. Висината на денешната плата на службениците не се смета за неправда. Ако програмерите го прават истото, тоа нема да биде неправедно исто така. (во пракса тие сеуште би заработувале значително многу повеќе).

"Зарем луѓето немаат право да контролираат како се користи нивната креативност?"

„Контрола врз користење нечии идеи“ впрочем воспоставува контрола врз животите на другите луѓе и најчесто се користи да им се отежни животот. Луѓето што внимателно ги проучувале прашањата за интелектуалната сопственост(6) (како што се правниците) велат дека не постојат суштински права на интелектуалната сопственост. Видовите на т.н. права на интелектуална сопственост што ги препишува владата се создадени со посебни правни акти за конкретни потреби.

На пример, системот за патенти е воспоставен за да се охрабрат изумителите да ги откријат деталите на нивните изуми. Неговата цел е да му се помогне повеќе на општеството отколку на изумителите. Тогаш, животниот век на патентите траел 17 години и бил краток во споредба со брзината на развој на технологијата. Поради тоа што патентите се само од значење за производителите, за кои цената и трудот на договорот за лиценцирањето се мали кога ќе се споредат со воспосатвеното произведство, патентите често не се многу штетни. Тие не им сметаат на мнозинството поединци кои користат патентирани производи.

Идејата за авторски права не постоела во старите времиња, кога авторите често копирале други автори во областа на неинтелектуални трудови. Оваа практика се покажала како корисна и била единствен начин со кој многу авторски трудови опстојале до денес макар и делумно. Системот за авторски права беше веднаш создаден за охрабрување на авторството. Во доменот за кој бил измислен – книгите, кои ефтино можеле да се копираат само преку печатарска преса, направи мала штета, и не претсавувал пречка за индивидуалците што читале книги. Сите права за интелектуална сопственост се само лиценци одобрени од општеството, затоа што се мислеше, правилно или погрешно, дека цело општество ќе има придобивка со нивно одобрување. Но во конкретна ситуација мораме да се запрашаме: дали навистина ќе биде подобро за нас да одобриме такви лиценци? Што дозволуваме одредена личност да прави?

Случајот со програмите денес е многу различен од оној со книгите пред стотици години. Фактот дека најлесниот начин да се копира програма е од еден сосед на друг, фактот дека програмата ги има и изворниот код и објектниот код кои се различни, и фактот дека програмата се користи, а не се чита и доживува, се комбинираат при што се создава ситуација во која личноста која наметнува авторски права му штети на општеството во целост и материјално и духовно, а тоа не би смеела да го прави без разлика дали законот дозволува или не.

"Конкурентноста овозможува работите да се сработуваат подобро"

Парадигмата на конкурентноста е трка: со наградување на победникот сите се охрабрени да трчаат побрзо. Кога капитализмот навистина функционира вака, тоа е добро, но неговите бранители грешат кога мислат дека секогаш функциоира вака. Ако тркачите заборават зошто наградата е понудена и сакаат да победат по секоја цена, ќе пронајдат други стратегии, како што се напаѓање на другите тркачи. Ако тркачите се степаат, сите ќе закаснат на целта.

Затворениот и тајниот софтвер е морален еквивалент на тркачите кои се тепаат. За жал, на единствениот судија не му смета тоа, тој само ја регулира тепачката („на секои десет истрчани метри, може да удрите само еднаш“). А би требало да ги раздели и казни само поради обидот за тепање.

"Дали програмерите ќе програмираат без паричен надомест?"

Впрочем, многу луѓе ќе програмираат со апсолутно никаков паричен надомест. Програмирањето е неодоливо воодушевување за некои за некои луѓе, особено луѓето кои се најдобри во тоа. Не постои недостиг на професионални музичари кои се бават со музика, иако тие не се надеваат дека со тоа ќе заработат за живот.

Но ова прашање, иако често поставувано, не е соодветно за ситуацијава. Плаќањето на програмерите нема да исчезне, само ќе се намали. Така, правото прашање е, дали постои некој ќе програмира со намален паричен надомест? Моето искуство вели дека постои.

Повеќе од десет години, најдобрите светски програмери работеа во Лабораторијата за вештачка интелегенција за многу помалку пари од тоа што можеа да го добијат на друго место. Но добија многу непарични награди: на пр., слава и почит. Покрај тоа, креативноста е исто така забавна, што е награда сама по себе. Потоа најголемиот дел од нив заминаат кога видоа дека можат да ја извршуваат истата работа за многу пари. Фактите покажуваат дека луѓето програмираат и поради други причини освен богатство; но ако им се даде шанса да заработат, тоа и ќе го посакуваат. Организациите кои плаќаат малку поминуваат послабо од оние кои исплаќаат многу, но тоа нема да се случува ако тие кои плаќаат многу се забранат (???).

"Очајно ни требаат програмери. Ако тие побараат да престанеме да им помагаме на соседите, треба да ги послушаме."

Никогаш нема да бидете толку очајни за да го остварите ова барање. Се сеќавате: милиони за одбрана, ни денар за народот!

"Програмерите мора некако да заработуваат."

На прв поглед тоа е точно. Но постојат многу начини на кои програмерите ќе заработуваат отколку да го продаваат правото за користење на програмата. Тоа е сега вообичаено затоа што на програмерите и бизнисмените им носи многу пари, не заради тоа што е единствен начин да се заработи. Лесно е да се најдат други начини ако сакате да ги најдете. Еве неколку примери.

Производител кој ќе направи нов компјутер ќе плати за прилагодување на оперативниот систем на новиот хардвер. Услуги за обука и одржување исто така може да понуди можност за заработување. Луѓе со нови идеи може да дистрибуираат програми како фривер, со што ќе бараат донации од задоволни корисници, или да наплаќаат услуги за поддршка. Сум сретнал луѓе кои на овој начин работат доста успешно. Корисници со слични потреби може да формираат групи на корисници и да наплаќаат членарина. Групата би се договорила со програмерски компании да им пишуваат програми кои членовите на групата сакаат да ги користат. Сите начини на развој може да се наплаќаат со софтверски даноци: Замислете секој кој купува компјутер мора да плати X проценти од цената како софтверски данок. Владата тоа би го давала на агенции како ННФ (Националната научна фондација) за развој на дополнителен софтвер. Но ако купувачот на компјутер самиот вложи за развој на софтвер, тогаш тој би бил исклучен од потребата за плаќање софтверски даноци. Може да вложи во проект по негова желба, бидејќи се надева дека ќе го користи крајниот производ. Може да биде заслужен за било кој вложен износ до сумата која требало да ја плати како софтверски данок. Вклупната сума на данокот би можела да се одлучува со гласање на оние кои го плаќаат, измерен според сумата која ќе ја плаќаат.

Последици:

  • Заедницата на корисници на компјутери ќе поддржува развој на софтвер
  • Оваа заедница ќе одлучува колкав степен на поддршка е потребен
  • Корисниците на кои им е важно за кој проект нивниот влог е искористен ќе може самите да одлучуваат за тоа.

In the long run, making programs free is a step toward the post-scarcity world, where nobody will have to work very hard just to make a living. People will be free to devote themselves to activities that are fun, such as programming, after spending the necessary ten hours a week on required tasks such as legislation, family counseling, robot repair and asteroid prospecting. There will be no need to be able to make a living from programming.

We have already greatly reduced the amount of work that the whole society must do for its actual productivity, but only a little of this has translated itself into leisure for workers because much nonproductive activity is required to accompany productive activity. The main causes of this are bureaucracy and isometric struggles against competition. Free software will greatly reduce these drains in the area of software production. We must do this, in order for technical gains in productivity to translate into less work for us.