O tym, jak UE myśli o zdelegalizowaniu Open Source (między innymi)
Spędzałem sobie dzisiaj leniwe sobotnie popołudnie, dzieląc czas między dokumentacją Sphinksa, pewnym projektem nad którym od jakiegoś czasu pracuję i szeroko pojętym byczeniem się, objawiającym się głównie czytaniem ulubionych stron internetowych na iPodzie leżąc na łóżku. Niestety, w pewnym momencie przeczytałem nagłówek, który gwałtownie wyrwał mnie z błogiego rozleniwienia. Gdy przeczytałem cały artykuł, dosłownie włosy stanęły mi dęba.
EC wants software makers held liable for code
Taki właśnie nagłówek ma artykuł który wzbudził mój niepokój. Jeśli Waszą pierwszą myślą jest to, że Komisja Europejska chce, aby programiści ponosili odpowiedzialność karną za sprośności jakie mogliby zawrzeć w swoim kodzie i komentarzach, jesteście niestety w błędzie. Jest dużo gorzej. Pozwolę sobie zacytować:
A priority area for possible EU action is "extending the principles of consumer protection rules to cover licensing agreements of products like software downloaded for virus protection, games or other licensed content", according to the commissioners' agenda. "Licensing should guarantee consumers the same basic rights as when they purchase a good: the right to get a product that works with fair commercial conditions."
Oczywiście, jest to motywowane troską o konsumenta. Komisarz Kuneva stwierdza:
"If we want consumers to shop around and exploit the potential of digital communications, then we need to give them confidence that their rights are guaranteed," said Kuneva. "That means putting in place and enforcing clear consumer rights that meet the high standards already existing in the main street. [The] internet has everything to offer consumers, but we need to build trust so that people can shop around with peace of mind."
Przeraża mnie skala ignorancji jaka kryje się za tą z pozoru niewinną propozycją. W pierwszym odruchu może to wydać się słuszne: w końcu konsument powinien być chroniony, prawda?
Jednak kiedy o tym pomyśleć, prawie każdy, kto miał chociaż trochę do czynienia z programowaniem zda sobie sprawę, że oprogramowanie istotnie różni się od np. tosterów, lokówek, suszarek do włosów pod względem możliwości przewidzenia okoliczności ich użycia i zagwarantowania ich poprawnego działania. Producent tostera może bezpiecznie założyć, że klient nie będzie próbował robić grzanek w warunkach obniżonej grawitacji. Jednak programista nie jest w stanie przewidzieć, czy jego program nie będzie przypadkiem odpalany na zwirtualizowanym windowsie pod BSD, przez Cygwina. Nie wie również, czy jakiś inny program odpalony jednocześnie nie będzie psuł działania jego programu. I w przeciwieństwie do producenta tosterów, nie może zasłonić się stwierdzeniem, że jest to użycie niezgodne z przeznaczeniem. Tak samo, producent szuszarki może łatwo wykryć, że jego produktu nie da się wyłączyć. Programista nie. Co więcej, istnieje na to odpowiednie twierdzenie matematyczne.
Jednym z głownych motorów rozwoju programów jest to, że ktoś próbuje znaleźć dla nich nowe zastosowania, w nowym środowisku... Program może nie działać do końca dobrze, ale być może da się wprowadzić odpowiednie poprawki i już będzie dobrze. Dzięki temu projekty takie jak satelita sterowany Linuksem mają szanse powodzenia.
W sytuacji, kiedy użytkownik będzie mógł pozwać twórcę oprogramowania za straty, które poniósł używając jego programu, ten bodziec do rozwoju zniknie. Nikt o zdrowych zmysłach nie pozwoli przecież wtedy na używanie swojego programu poza bardzo ściśle określonym środowiskiem.
Jakbyście jeszcze nie zdali sobie sprawy: dyrektywa ma dotyczyć również oprogramowania w fazie Beta i Open Source:
According to Mingorance, the proposed regulatory extension would cover all software, including beta products, and would cover both proprietary and open-source software.
Nie jest do końca jasne, jak to by się miało to licencji Open Source. Przecież jednym z istotnych punktów np. licencji MIT jest:
The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software.
Czy to znaczy, że jak ta dyrektywa wejdzie w życie, licencja MIT będzie nieważna w Unii Europejskiej? Inna sprawa, że jeśli dobrze rozumiem implikacje takiej dyrektywy, nikt o zdrowych zmysłach nie udostępniałby swojego kodu na zasadzie Open Source...
Nie jestem prawnikiem i przeczytanie oryginalnej propozycji nie pozwala mi ocenić, czy jest tak źle jak mi się wydaje, czy to tylko kaczka dziennikarska w wykonaniu ZDNET. Jeśli jednak to nie jest kaczka, to zaakceptowanie tej dyrektywy może mieć mroczne skutki dla Unii Europejskiej. Konsumenci nie będą musieli się lękać kupując oprogramowanie. Będzie go bardzo mało i będzie ono niesamowicie drogie. Nie będziemy też mogli legalnie korzystać z oprogramowania Open Source (bo na jakiej to niby licencji?).
Update
Najwyraźniej sprawa jest bardziej skomplikowana. Vagla pisze na blipie, że mój dopisek był nieprawidłowy i że zaraz większy tekst na ten temat opublikuje. Nie ma to jak odpowiednio dozować napięcie :-)
Zdjęcie flagi jest autorstwa użytkownika robdeman na Flickrze, udostępnione na licencji Creative Commons.-
11-05-09, 17:43
Już napisał: http://prawo.vagla.pl/node/8488
Ja skrobnąłem też mini-tekst na OSnews: http://osnews.pl/ue-chce-zeby-program... -
13-05-09, 17:41
Tak z innej beczki: czemu z komentarzy na OSnews zrobiło się takie trollowisko? Momentami normalnie jak na forum gazety...
-
14-05-09, 13:24
@michuk: Dzięki za podlinkowanie. Artykuł Vagli jest na trochę inny temat, bo mówi o dyrektywie, która już ma draft, a ja piszę o dyrektywie, o której komisarze dopiero marzą.
-
25-02-10, 15:02
Jest i dobra strona. Czyż MS sprzedając Windows także nie stosuje zapisu o braku jakichkolwiek gwarancji, że będzie on działał prawidłowo?