Błąd BitKeepera Linusa Torvaldsa

Programiści open source, jak można się spodziewać, zazwyczaj używają bezpłatnych kompilatorów, edytorów i innych narzędzi do tworzenia oprogramowania. Ale trzy lata temu twórca Linuksa Linus Torvalds zaczął używać zastrzeżonego systemu kontroli wersji oprogramowania o zamkniętym kodzie źródłowym o nazwie BitKeeper w celu utrzymania kodu źródłowego jądra Linuksa. To była z pewnością kontrowersyjna decyzja i wydaje się, że w końcu - i być może przewidywalnie - wrócił, by go ugryźć.

Systemy kontroli wersji ułatwiają współpracę przy projektach oprogramowania, utrzymując centralne repozytorium kodu źródłowego. Programiści mogą „pobrać” kopię kodu z repozytorium, wprowadzić zmiany, a następnie ponownie sprawdzić zmodyfikowane wersje. System rozwiązuje rozbieżności między różnymi wersjami, aby ostatecznie wszystkie zmiany zostały ujednolicone.

Aby pobrać kod z repozytorium BitKeeper, musisz użyć zastrzeżonego oprogramowania klienckiego BitKeeper o zamkniętym źródle. Chociaż twórca BitKeepera, Larry McVoy, zaoferował klienta bezpłatnie programistom open source, pod warunkiem, że przestrzegają jego umowy licencyjnej, to porozumienie nie odpowiadało tym, którzy woleli zachować ducha wolnego oprogramowania we wszystkim, co robili. Niemniej jednak Torvalds uważał, że BitKeeper był najlepszym narzędziem do tego zadania, więc odrzucił te skargi na bok.

Wpisz Andrew Tridgell, uber-hacker i twórca Samby. Tridgell uważał, że jeśli źródło jądra Linuksa ma być przechowywane w repozytorium BitKeepera, powinien istnieć inny sposób uzyskania do niego dostępu za pomocą narzędzi open source. Dlatego napisał własne narzędzie po przeprowadzeniu inżynierii wstecznej protokołów BitKeeper. Wtedy McVoy ogłosił faul.

McVoy twierdzi, że klient Tridgell naruszył klauzulę o zakazie konkurencji w umowie licencyjnej BitKeeper. Mówi, że musisz korzystać z bezpłatnej wersji oficjalnego klienta BitKeepera, wersji komercyjnej lub wcale.

- zaprotestował Tridgell. Powiedział, że nie naruszył żadnej licencji, ponieważ nigdy się na nią nie zgodził. Nigdy nawet nie używał klienta BitKeeper firmy McVoy; przechwycił jedynie komunikację serwera, gdy przechodzili przez kabel i dekodowali ją. Ostatecznie jednak McVoy, wciąż zirytowany, pod koniec kwietnia zdecydował się przypomnieć bezpłatną wersję swojego oprogramowania klienckiego. Od teraz programista open source czy nie, jeśli chcesz używać BitKeepera, musisz zapłacić.

Zignorujmy na razie, kto ma rację, a kto nie w debacie McVoy / Tridgell. W rezultacie projekt jądra Linuksa potrzebuje nowego systemu kontroli wersji. I to sprawia, że ​​Torvalds jest nieszczęśliwy. Problem w tym, że od początku powinien był wiedzieć lepiej.

Wydaje się, że Torvalds dał się nabrać na argument „darmowego piwa”: nie musiał płacić za BitKeepera, więc uznał, że to wystarczy. Jednak brak konieczności płacenia nie jest i nigdy nie był prawdziwym celem wolnego oprogramowania. Chodzi o to, aby uniknąć sytuacji, w której Torvalds w końcu znalazł się: McVoy nie lubił sposobu, w jaki jego produkt był używany, więc wziął piłkę i poszedł do domu. Czy mógłbyś sobie pozwolić na zmianę biegu w trakcie projektu, gdyby jeden z kluczowych dostawców oprogramowania zrobił to samo?

Społeczność biznesowa lubi dystansować się od ideologicznych debat dotyczących wolnego i otwartego oprogramowania, ale przypadek BitKeepera jest najlepszym przykładem tego, dlaczego zarządzanie IT w przedsiębiorstwie nie może ignorować kwestii licencjonowania oprogramowania. Nie chcesz, aby dostawca centrali PBX mówił ci, jak korzystać z systemu telefonicznego, a dostawca drukarki, co masz drukować. Czy nie wolałbyś oprogramowania, które również nie mówiło Ci, jak prowadzić firmę?