Mapbox GL JS nie jest już otwartym źródłem

Opublikowany: 2020-12-17

Mapbox GL JS, dawniej biblioteka JavaScript typu open source do interaktywnych, konfigurowalnych map wektorowych, przyjęła zastrzeżoną licencję w swojej ostatniej aktualizacji wersji 2:

  • mapbox-gl-js nie jest już objęty 3-klauzulową licencją BSD. Przechodząc na tę wersję, zgadzasz się na warunki korzystania z usługi Mapbox. Zapoznaj się z plikiem LICENSE.txt, aby uzyskać nowe warunki licencji i szczegóły. W przypadku pytań skontaktuj się z naszym zespołem pod adresem https://support.mapbox.com.
  • Począwszy od wersji 2.0.0, płatne ładowanie mapy ma miejsce za każdym razem, gdy obiekt Map jest inicjowany. Przed aktualizacją istniejącej implementacji z wersji 1.xx do wersji 2.xx zapoznaj się z dokumentacją cenową, aby oszacować przewidywane koszty.

Wersje 1.x pozostają pod 3-klauzulową licencją BSD, ale Mapbox będzie inwestować tylko w rozwój nowych funkcji dla zastrzeżonej wersji 2.0+. Ta wiadomość była niespodzianką dla wielu inżynierów, którzy zbudowali produkty w oparciu o tę wcześniej bibliotekę open source.

„Ten ruch wywołał wstrząsy w branży geoprzestrzennej” – napisał Javier de la Torre na blogu CARTO. „Wiele organizacji korzysta bezpośrednio z Mapbox GL JS lub rozwidla się z niego. Ta biblioteka odpowiada za wizualizację tzw. mapy bazowej, czyli warstwy kartograficznej, na której opiera się większość map. MapboxGL, który wcześniej był Open Source, jest świetnym rozwiązaniem i może być używany z wieloma różnymi źródłami danych, dzięki czemu stał się de facto sposobem renderowania map bazowych”.

Mapbox obsługuje wszystkie rodzaje map dla znanych witryn, takich jak CNN, The New York Times, Ancestry, Strava, Shopify, Facebook i nie tylko. Jest również używany przez WordPress.com i Jetpack dla bloku Map. Biblioteka jest używana w wielu wtyczkach na WordPress.org, niektóre z dziesiątkami tysięcy użytkowników. Deweloperzy korzystający z wersji 1.x będą chcieli być świadomi przyszłości biblioteki Mapbox GL JS.

„Decyzja Mapbox w tym tygodniu, aby wydać zupełnie nową wersję Mapbox GL JS i zachować ją jako zastrzeżoną, zaskoczyła mnie” – napisał na swoim osobistym blogu specjalista ds. produktów Azavea, Joe Morrison. „V1 była już nie tylko szalenie popularną biblioteką open source, ale reputacja Mapbox jako płodnego twórcy oprogramowania open source jest kamieniem węgielnym ich całej tożsamości. Opisywanie tego, co sprawia, że ​​Mapbox jest wyjątkowy, bez wzmianki o „open source” jest jak próba opisania obcego mleka czekoladowego bez użycia słowa „płyn”.

Mapbox nie wyjaśnił formalnie, dlaczego został zastrzeżony wraz z biblioteką, więc spekulacje są obfite. Morrison teoretyzuje, że dostawcy usług w chmurze zabijają otwarty model biznesowy firm programistycznych. Inżynier geoprzestrzenny Crunchy Data Paul Ramsey odpowiedział na artykuł Morrisona, twierdząc, że Mapbox nie jest firmą „otwartego rdzenia” i że sprzedaż usług opartych na lokalizacji może się dla nich nie rozwijać:

Ale podobnie jak Google, propozycja wartości, którą Mapbox sprzedaje, nie znajduje się w oprogramowaniu, ale w danych i platformie pod spodem. Mapbox zbudował unikalną, skalowalną platformę do obsługi ogromnego problemu przekształcania surowych danych OSM w użyteczne usługi, a surowych strumieni lokalizacji w użyteczne usługi. Sprzedają dostęp do tej platformy.

Mapbox nigdy nie była firmą programistyczną, zawsze była firmą zajmującą się danymi i usługami.

Pracownik Mapbox, Saman Bemel Benrud, powiedział, że firma w końcu dąży do tego, aby jej produkty były zrównoważone:

Ta zmiana może mieć negatywny wpływ na programistów i firmy, które zbudowały produkty na bazie Mapbox GL JS, myśląc, że jego licencjonowanie open source zostało ugruntowane w kamieniu.

„Zmiana nie mówi nic o „otwartym oprogramowaniu” jako modelu, a wszystko o „projektach jednego dostawcy” io tym, czy należy strategicznie wierzyć w ich licencje” – powiedział Ramsey.

„Ja (i inni) uznaliśmy (niesłusznie) licencję Mapbox GL JS za obietnicę, nie tylko na teraz, ale i na przyszłość, i podejmowałem decyzje w oparciu o tę (nieprawidłową) interpretację. Zintegrowałem GL JS z projektem open source i teraz muszę wrócić do tej decyzji”.

Niektórzy członkowie społeczności już rozwiedli Mapbox GL JS, aby utrzymać wersję 1.x, ale zdecydowana większość współtwórców oryginalnej biblioteki była sponsorowana przez Mapbox. Najbliższa przyszłość widelca MapLibre GL może nie zawierać wielu nowych funkcji, ponieważ początkowym celem planu jest „spójność i wsteczna kompatybilność z poprzednimi wydaniami oraz ciągłymi poprawkami błędów i konserwacją w przyszłości”.

Długa dyskusja na temat Hacker News wywołała odpowiedź byłego inżyniera Mapbox, Toma MacWrighta, który jako członek-założyciel zespołu napisał politykę open source firmy.

„Nie zajmę się całym kontekstem, ale myślę, że powinniśmy rozważyć, czy społeczność bez współtwórców jest społecznością” – powiedział MacWright. „GL JS nigdy nie miał znaczących aktywnych współpracowników spoza firmy i nie ma samofinansujących się ekspertów webgl z dużą ilością czasu, którzy byliby gotowi na utrzymanie widelca.

„Miejmy nadzieję, że OSS ma na celu umożliwienie ludziom i odblokowanie możliwości współpracy. Okazuje się, że w 2020 roku głównie pomaga firmom i nie otrzymuje nic w zamian. To nie jest dynamika, na której można zbudować zrównoważony biznes”.

Rozwidlenie MapLibre GL może nabrać rozpędu i stać się realną alternatywą dla zamkniętej biblioteki Mapbox, ale zajmie trochę czasu, aby zobaczyć, jak dobrze jest utrzymywana. W międzyczasie istniejąca wersja 1.x może zaspokoić potrzeby większości użytkowników. Mapbox wypalił wiele dobrej woli dzięki tej kontrowersyjnej aktualizacji licencji, którą niektórzy postrzegają jako przestępstwo typu „przynęta i zmiana”. Odbudowanie zaufania społeczności, po usunięciu swobód przyznanych poprzednią licencją, będzie ciężką walką.