21 август, 2008 - 20:22
[веб кирилица]

Патентите ги жртвуваат програмерите

од Новица на 31 мар 2002 - 19:33

Патентите се како лотарија

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

Да говориме за патентите од аспект на жртвата; програмерите на софтвер. Првото нешто што го правиш откако ќе добиеш идеја за тоа каков софтвер сакаш да напишеш, е да најдеш кои патенти можат да ја покријат таа област. Ова е невозможно, бидејќи оние кои чекаат на патентирање се тајни. Можеби ќе бидат објавени по 18 месеци, доволно време ти да си ја напишеш програмата и да ја објавиш.

На пример, програмата Compress беше напишана во 1984. Во тоа време немаше патент на LZW (compression) алгоритамот, но LZW чекаше на патент, кој го доби во 1985. Во наредните неколку години оние кои го дистрибуираа Compress добиваа закани. Се што направија програмерите на Compress беше тоа што искористија идеја која ја најдоа во весник, на начин како што одескогаш се правело.



Проблемот со откритијата


Одобрените патенти се обајвуваат од страна на соодветната служба, па можете да ја најдете целата листа, ни никако не можете да ја прочитате цела, бидејќи се премногу, и не можете да ги следите.

Така треба да барате поврзани патенти. Некој ќе ви каже дека тоа е лесно, и до негде функционално -- ќе најдете некои, но не сите. На пример, имаше патент за природно подрдеување во табели; тоа значи дека секое поле се рекалкулира откако полето од кое зависи ќе се ракалкулира, така се е псотојано up to date. Ова е познато како тополошко сортирање. Патентот кој го најдов во 1963 покриваше неколку начини за употреба на ова сортирање, но не ги спомнуваше нигде клучните зборови („topological sorting“ или „natural order recalculation“). Всушност беше опишано како метод на комбинирање форлмули во објектен код; кога го видов прв пат мислев дека е погрешен патент.

Па дури и да имаш листа на патенти, пробај проучи ги. Тешко е да се разберат бидејќи се напишани во тешок легален јазик. Австралиска владина студија за системот на патентирање од 80-тите заклучи дека меѓународниот притисок е единствена причина за постоење на систем за патентирање. Открија и дека ижинерите не се мачат да читаат патенти бидејќи се премногу тешки.

И сега што? Постојат три пристапи кон патентирањето: избегнување; лиценцирање; или судење.

Против софтверските патенти I: Избегнување


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

Но, секако мора да се запрашате колку е важна таа карактеристика? Во некои случаи можете без неа. На пример, корисниците xyWrite word processor-от добија downgrade по пошта, бришејќи опција која овозможуваше кратење на долги зборови и фрази. Програмерите не xyWrite се обидоа да преговараат со сопственикот на патентот, но на крај одлучија да ја тргнат таа опција. За само една опција ова може да е прифатливо, но кога поголем број ќе наидат на проблеми со патенти ќе ви остане програма која не вреди.

На пример, што ќе правите со патентот на BT за поврзување на хиперлинковите со dial-up пристапот? Поврзувањето на хиперлинкови е значајно. Што би правеле без него? Потоа тука е патентот за Pretty Good Privacy. Во САД, тој го блокираше јавното екриптирање 10-тина години, бидејќи сопствениците на патетнот наметнаа рестрикции. Не постоеше начин да се заобиколи патентот, и немаше што друго да правите доколку сакатве да ги енкриптирате вашите продукти.

Во некои случаи можеби ќе можете да најдете подобар алгоритам. Бидејќи во GNU проектот не можевме да го користиме алгоритамот за компресија, почанвме да бараме подобра алгоритам, Завршивме со GZIP. Како алгоритам за компресирање податоци GZIP работеше супер, но кога почанвме да има кажуваме на луѓето да не користат gif фајлови (кои ја користеа патентираната LZW компресија), луѓето рекоа дека не можат така да се префрлат, прелистувачите не ја поддржуваат сеуште, а производителите на прелистувачи велат дека никој не ја користи. Имаше толкава инерција така што не можевме да ги пренасочиме луѓето 10 години.

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

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

Против софтверските патенти II: Лиценцирање


Лиценцирањето не е секогаш опција, сопственикот на патентот не мора да ти понуди лиценца. Многу од нив понудуваат лиценци, но бараат многу пари. Некои бараат 5% -- можеби можете да си го дозволите ова, но што ако морате да побарате 20 лиценци за да направите програма? Практично 2-3 лиценци ќе го направат вашиот бизнис план неисплатлив.

Сепак, лиценцирањето е корисно ако сте мултинационална корпрација која има многу патенти и истите ги лиценцирате.

Работник на IBM во 1990 обајви текст во Think магазинот. Тој пишуваш дека две користи се добиваат од патентите: првата - прибирање приходи, и вората - пристап до патентите на другите корпорации. Тој истакна дека втората е позначајна од првата.

Така користа од лиценцирање туѓи патенти е 10 пати поголема од лиценцирање на своите патенти. Според ова, IBM беше спасен од неволјите до кои ситемот на патентирање може да доведе.

Феноменот на вкрстено лиценцирање негира еден мит: мит на гладен гениј, мит дека патентите штитат мала група на пронаоѓачи (и штити тука е пропаганден термин).

Да препоставиме дека некој брилијантен истражувач потрошил 10 години гладувајќи и дизајнирајќи ново нешто и сега сака да го произведува. За почеток, луѓето во high-tech полињата генерално не работат самостојно, и овие луѓе скоро сигурно можат да најдат работа, па така сценариото за изгладнет истражувач е нерелано. Но, е изводливо; тие може да имаат добра идеја. И што ќе се случи доколку пронаоѓачот се обиде со патент да ја спречи големата компанија? IBM вели: "Да го видиме твојот продукт; имаме патенти кои се дел од твојот патент - можеш ли да се бориш против ова во суд? Зошто да не лиценцираме вкрстено меѓу себе?" малиот човек вели OK, си оди и ја прави својата работа, и IBM си оди и го зема неговиот патент, се натрпеварува, што значи патентот и не го заштитил навистина.

Големите компании ја гледаат добрината од патентите, затоа и сакаат патенти. IBM скоро секогаш може да те примора на вкрстено лиценцирање, но малите компании ова можат само понекогаш да го направат.

Против софтверските патенти III: Судење


За да се добие патент, нешто мора да биде ново, корисно и не-очигледно. Но кога службите за патентирање ќе влезат во игра, "ново" значи "го немаме во документите", и "не-очигледно" значи не-очигледн за некој со IQ=50.

US Patent Office прави навистина глупави работи: на пример, познатиот Harvard mouse патент, за глушец кој има ген кој предизвикува рак. Генот беше веќе познат, техниката на внесување исто така, и видот на глушецот беше познат. Патентот конечно покри внесување било каков ген во било кое суштество. Вакво широко опфаќање често се случува.

Кога програмерите гледаат на софтверски патенти можат да кажат дека се очигледни, но оние кои ги даваат патентите ќе кажат дека теба да се размилува во контекст на 10 години наназад. Доколку зборат многу ќе ги изгбите вашите ставови. Потоа ќе ги опишат сопствениците на патенти како брилијантни истражувачи, и затоа она што тие го работат не смее да се доведе под знак прашање. Судијата секако може да донесе добра одлука, но тоа чини милиони долари.

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

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

Софтверски патенти: Треба ли да има специјални случаи?


Луѓето ќе прашаат, зошто кога има патенти во други полиња, софтверот да биде исклучок? Ова прашање носи заедничка претпоставка, но позади него има и друго прашање: дали софтверот е толку поразличен од другите полиња? И, дали патентите треба да се разликуваат од поле до поле?

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

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

Еве зошто патентите го оневозможуваат развојот на продукти.

Економските истражувања укажуваат дека воведувањето на патентирање во систем со инкрементални иновации го ретардира процесот.. Адвокатите ќе речат: "Да, може да има проблеми, системот на патентирање промовира иновации, па така проблемите се неважни."

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

 

Екстремен софтвер


Зошто софтверот е на овој екстрем? Бидејќи развиваме идеализирани математички концепти. Можеме да изградиме замок на тенка линија и тој ќе остане исправен. Во другите полиња мора да се занимавате со материја, и да направите физички објекти кои ќе функционираат.

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

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

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

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

Ако симфониите се патентираа


На некој начин пишувањето софтвер е како пишување симфонија: користиш многу ноти и идеи кои биле претходно искористени. Замислите да европските влади во 17 век имале музички патенти. Сега замислите дека е 1800 и вие сте Beethoven: сакате да напишете симфонија и да биде се легално. Па, ќе биде невозможно, и кога ќе се жалите, сопствениците на патентот ќе речат: "Beethoven се нервираш зошто немаш свои идеи."

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

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

Решението


Како да ја смениме политиката за да го решиме проблемот? Две места: каде што се давааат патентите, и каде што се користат.

Менувањето на критериумот за давање софтврески патенти може да функционира во земји кои претходно не давале такви патенти -- најголем дел од Европа. Со модифицирање на законите така што идеите да не може да се патентираат ќе го решиме проблемот.

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

Првата идеја е добро решение за Европа. Кога САД воведе софтверски патенти немаше политичка дебата и никој не забележа. Низ 80-тите не знаевме за овој проблем, и се до 90-тите програмерите не беа свесни.

Во Европа имаше голема политичка дебата. Програмерите на слободен софтвер се во предност, но ние не сме единствените загрозени; сите програмери па дури и корисници се загрозени.

Поттикот за патентирање софтвер во Европа доаѓа најповеќе од Велика Британија. Исходот од јавната дебата беше против патентирање, но во извештајот стоеше дека луѓето немаат ништо против. Британците користат термин наречен технички ефект -- тоа е термин кој може да се шири во недоглед. Резултатот е дека бирото за патентирање во UK промовира нешто што личи дека може да помогне, но всушност овозможува да се патентира се и сешто.

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

Битката сеуште не е завршена. Сеуште може да се победи.


Тексов е превземен од ZDNet. Автор на текстот е Ричард Сталман.

Опции за гледање на коментари


Одговор Патентите ги жртвуваат про - од jas на 3 април, 2002 - 10:34

Brat, ke mu cestitam na toj sto ke ja procita tvojata vest do kraj.

сликата на elia
Одговор Патентите ги жртвуваат про - од elia на 3 април, 2002 - 13:27

Јас го прочитав. Текстот си е ок, дава информација што можеби не ми е на листа на приоритети, но има содржина што ме привлекла да го прочитам.

И уште ова:

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

Одговор Патентите ги жртвуваат про - од jas на 3 април, 2002 - 13:51

Elia ti cestitam!

Re: Патентите ги жртвуваат програме - од zoltriks на 3 април, 2002 - 21:40

Текстов е од фундаментално значење сега кога на Европа и се заканува воведување на софтверски патенти, налик на оние во САД - а ние нели ќе мора да го прилагодиме нашето законодавство со европското, па така...

сликата на Chombe
Одговор: Re: Патентите ги жртвуваат - од Chombe на 4 април, 2002 - 03:03

Па така и потака... ако ние го прилагодиме законодавството не значи дека и ќе го почитуваме...[намигнува]