Spisu treści:
Wszyscy czekamy, aż Google w końcu wyda kod open source dla Androida 3.0.1 (Honeycomb), ale jeśli mamy wierzyć Bloombergowi (i zwykle powinieneś), nie stanie się to w „przewidywalnej przyszłości” - i być może nigdy. Zatrzymam się na chwilę i pozwolę, by wściekłość opadła na chwilę, ponieważ też to czuję - ciężko. Kiedy wszyscy się trochę skomponujemy, dołącz do mnie po przerwie.
Rozpoznano normalny cykl uwalniania
Przyjrzyjmy się zwykłemu cyklowi programowania Androida, wykorzystując jako przykład oryginalny SuperPhone (przepraszam Phil) - Nexus One.
Jesienią 2009 r. (Jeśli nie wcześniej) HTC i Google połączyły siły i opracowały sprzęt, który nazywamy Nexus One. Nie wiemy dokładnie, kiedy programiści Androida zaczęli pisać system Android 2.1 (Eclair), ale prawdopodobnie był na zaawansowanym etapie testowania, kiedy podjęto decyzję o uruchomieniu sprzętu i rozpoczęto jego rozwój. Google dostarczyło to oprogramowanie HTC do testów wewnętrznych, a HTC dostarczyło do niego sprzęt. Gdy znaleziono błędy lub wymyślono ulepszenia, programiści systemu Android dokonali tych zmian i przekazali oprogramowanie testerom. Google i inni nazywają to „jedzeniem psów”, większość firm nazywa to badaniami i rozwojem.
Gdy sytuacja osiągnie dość stabilny stan, oprogramowanie to jest udostępniane innym dostawcom sprzętu i partnerom. Motorola, Samsung i inni mniej znani partnerzy, tacy jak Nuance, mają dostęp do kodu źródłowego podczas jego opracowywania. Niestety ty i ja nie, ale niewiele możemy z tym zrobić. W rzeczywistości nie będę nawet narzekał (zbyt wiele) na to, ponieważ cykl wydawania Google'a jest zbyt szybki (a baza użytkowników zbyt duża), aby oszukiwać za pomocą łatek kierowanych przez społeczność, bez względu na to, jak dobrze zrobione i innowacyjne mogą być. Ważne jest to, że wszyscy, którzy budują telefony, mieli dostęp do Androida 2.1 podczas tworzenia swoich produktów i powinni. Jak dotąd wszystko jest dobrze.
Przyjdź tego specjalnego dnia w styczniu 2010 r., A Google ogłasza Nexus One jako produkt dostępny do sprzedaży dla konsumentów. Gdy pierwszy Nexus One zostanie sprzedany, źródło jądra Linuksa musi zostać udostępnione jako warunek jego licencji na oprogramowanie - GPL.
Sam Android jest objęty licencją Apache 2.0. Jest to bardziej liberalna licencja, a wybór ma sens, gdy zdasz sobie sprawę, że firmy takie jak Motorola czy Samsung nie mogą po prostu rozdać części swojego kodu. Powody, dla których „legalność” nieudostępnienia pełnego kodu źródłowego dla projektów Apache 2.0 jest codziennie podnoszona na śmierć przez brody i hipisów, więc nie zamierzam się w to angażować. Ale powiedzmy, że tak się dzieje. Ludzie używają kodu na licencji Apache 2.0 do tworzenia oprogramowania i nie zwalniają kodu źródłowego. W przypadku Nexusa One (i wszystkich innych dotychczas wydanych wersji) Google tego nie zrobiło - publikują kod w momencie wydania lub wkrótce potem.
Mamy więc telefon, nową wersję Androida i kod źródłowy. Wkrótce potem pojawią się CyanogenMod i inne niestandardowe ROM-y, wszyscy są zadowoleni i zaczynają się prace nad kolejną wersją.
Teraz sytuacja zmienia się na gorsze. Andy Rubin drażnił nas Xoomem, Vic Gundotra drażnił nas systemem operacyjnym plastra miodu i wszyscy chcieliśmy. Bardzo chcieliśmy. Kiedy nadszedł dzień premiery Xooma, Google wydało łatane źródło jądra Linuksa i rozpoczęto tworzenie. Przez pewien czas byliśmy zadowoleni, ponieważ mieliśmy niestandardowe jądra do zabawy, ale każdy z Xoomem chciał źródła Androida 3.0, aby „prawdziwa praca” mogła się rozpocząć. Wszyscy zaczęliśmy trochę narzekać, ale kiedy usłyszeliśmy, że nadchodzi Android 3.0.1, wszystko było w porządku, ponieważ wiedzieliśmy, że Google zaczeka i opublikuje kod AOSP 3.0.1 (Android Open Source Project) wraz z aktualizacją. Nie ma sensu robić tego dwa razy, prawda? Dobrze?
Nowy sposób plastra miodu
Teraz szybko wróćmy do dzisiejszego dnia - 24 marca 2011. Jeśli to, co zgłasza Bloomberg, jest poprawne, a moje pieniądze tak twierdzą, wkrótce nie otrzymamy kodu źródłowego, a może nigdy. Google uzasadnia to tym, że nie chcą, aby mniejsze zespoły programistów rujnowały środowisko plastra miodu. Oto cytat z artykułu Bloomberg:
Tłumy mniejszych producentów sprzętu i programistów będą musiały teraz czekać na oprogramowanie. Opóźnienie będzie prawdopodobnie kilka miesięcy. „Aby przygotować harmonogram wysyłania tabletu, dokonaliśmy kompromisów projektowych” - mówi Andy Rubin, wiceprezes ds. Inżynierii w Google i szef grupy Android. „Nie chcieliśmy myśleć o tym, co trzeba zrobić, aby to samo oprogramowanie działało na telefonach. Wymagałoby to wielu dodatkowych zasobów i wydłużyło nasz harmonogram, wykraczając poza to, co uważaliśmy za uzasadnione.
Rubin mówi, że gdyby Google miał teraz otworzyć kod Honeycomb teraz, tak jak ma to miejsce w przypadku innych wersji Androida w podobnych okresach rozwoju, nie mogłoby to uniemożliwić programistom umieszczania oprogramowania na telefonach i tworzenia naprawdę złych wrażeń dla użytkowników Nie mamy pojęcia, czy zadziała nawet na telefonach. ”
Chociaż łatwo jest winić za to ogromną liczbę świątecznych koronek na Androida, myślę, że idzie ona głębiej i dotyczy także indywidualnych programistów, którzy (i mogliby) umieścić Honeycomb na naszej obecnej linii telefonów z Androidem. Google zdecydowało, że największe i najlepsze losowanie dla wielu z nas jest dobrym powodem do powstrzymania się od kodu - nie chcą, abyśmy hakowali go na urządzeniach, dla których nie został zaprojektowany.
To mnie wkurza, a świadomość, że nic na to nie poradzę, tylko pogarsza. Jaka jest korzyść z odblokowanego bootloadera na Xoomie, jeśli nie możesz zbudować niestandardowych ROM-ów do tego cholerstwa? Andy Rubin mówi Bloombergowi: „Android to projekt typu open source. Nie zmieniliśmy naszej strategii”. Mogłeś mnie oszukać, Andy.
Pogarsza się. Bloomberg twierdzi, że kierownictwo firmy Google poinformowało partnerów produkcyjnych, że Google nie wyda kodu źródłowego, a zamiast tego następną wersją Androida z otwartym kodem źródłowym będzie wersja „ja”. To w gruncie rzeczy zabija wszystkie zewnętrzne opracowania dla tabletów z systemem Honeycomb. Nie ma łatwego sposobu na dodanie rzeczy, które Google pominął, chyba że jesteś Samsung lub LG. To do bani, ponieważ podoba mi się praca pochodząca od ludzi takich jak rodigezstyle lub eViL D: znacznie lepsza niż praca pochodząca od LG lub Samsunga i nie jestem sama. A Google w swojej nieskończonej mądrości postanowił, że go nie otrzymam.
Uwielbiam Androida ze względu na jego otwartość, a nie dlatego, że oferuje mi wolne od błędów doświadczenie, którego nie mogę dostać gdzie indziej. Mając to na uwadze, zdecydowałem, że nie otrzymam żadnego z nowych tabletów o strukturze plastra miodu. Istnieją inne dobrze zaprojektowane tablety o zamkniętym źródle, stworzone przez firmy, które nigdy nie twierdziły, że są otwarte, i sprawdzę je, jeśli będę potrzebować tabletu.