O powstawaniu Windows. Jak tworzono najpopularniejszy system na świecie: Neptune

Strona głównaO powstawaniu Windows. Jak tworzono najpopularniejszy system na świecie: Neptune
31.08.2020 06:30
Neptune (fot. Magda Ehlers via Pexels)
Neptune (fot. Magda Ehlers via Pexels)
bDYyQcvG

Makabryczne opóźnienia w tworzeniu Windows NT 5.0 oraz ciągle zmieniające się plany wydawnicze nie oznaczały, że Microsoft był pogrążony w całkowitym chaosie, wskutek którego w firmie nie powstawały żadne nowe rozwiązania. Przeciwnie, Microsoft końca lat 90-tych był firmą pełną innowacji, z których wiele osiągnęło dojrzałość dopiero wiele lat później. Ich historia często jest jednak przedstawiana dość pobieżnie.

bDYyQcuZ

Dlatego tak dobrze znane są nieudane projekty (Cairo, Neptune, Longhorn), a za skuteczne inicjatywy uznaje się jedynie przymusową integrację internetu (zakończoną dominacją Internet Explorera) oraz rewolucyjny Windows 2000. To jednak myślenie za pomocą etykietek. Ambitnych, udanych przedsięwzięć było o wiele więcej. To, że nie powstały od razu (lub wersje Windows z nimi anulowano) nie oznacza, że nie stanowiły bardzo ważnego kamienia milowego w rozwoju Windows. Naprawić historięDoskonale widać to na przykładzie projektu Neptune. Jest on dziś znany głównie z bycia niewydaną wersją domową Windows 2000, anulowanym jego następcą oraz protoplastą projektu Whistler, czyli Windows XP. Nieco bardziej szczegółowe opracowania wspomną także o Centrach Aktywności oraz pracy wykonanej w ramach projektu Millennium. Bez wątpienia, Centra Aktywności to główny punkt programu w Neptune. Ale zajrzenie do wnętrza systemu pozwala się przekonać, nad czym Microsoft intensywnie pracował, chcąc wyrobić się na rok 2000. Zarówno w warstwie wizualnej, jak i programistycznej.

Centra Aktywności (fot.Microsoft, via BetaArchive)
Centra Aktywności (fot.Microsoft, via BetaArchive)

Kwestią, której potwierdzenie otrzymamy u każdego użytkownika komputerów Apple (i, co ważne, także wieloletnich jabłkowych "weteranów") jest to, że komputery PC zawsze były trudniejsze w obsłudze. Góra naleciałości historycznych sprawiała, że dopiero z upływem lat rozwiązano obrzydliwy problem zworek, przerwań i sterowników. Magistrale PCI i USB oraz automatyczna konfiguracja sterowników pojawiły się mniej więcej w połowie historii pecetów (zaczynającej się w 1981). Środowiska operacyjne również nie pomagały.

bDYyQcvb

Każda nowa wersja Windows była w dawnych czasach przełomem pod względem użyteczności, ale wyłącznie ze względu na to, że wersja poprzednia była okropna. Windows 3.0 był sukcesem, bo poprzednicy dostarczali w zasadzie tylko czarno-biały tekst w kolorowych ramkach. Windows 95 był sukcesem ze względu na pasek zadań. Użytkownicy nie gubili uruchamianych programów, a nowicjusze wiedzieli "gdzie zacząć" (Start).

Ekran Startowy Windows... Millennium (fot. BetaArchive)
Ekran Startowy Windows... Millennium (fot. BetaArchive)

Lecz gdy komputery stawały się coraz bardziej multimedialne, użytkownicy byli stawiani np przed problemem w stylu "mam komputer i aparat cyfrowy – jak mam z niego zrzucić zdjęcia?". W systemie Windows 98 było to nietrywialne. Podpięcie aparatu nie kończyło się uruchomieniem pobierania zdjęć, a kreatorem instalacji sterownika. Mało przyjazny interfejs, trudny do zmuszenia do pobrania sterownika z internetu (często nieobecnego w Windows Update). Zazwyczaj oprogramowanie (anglojęzyczne) dostarczali producenci. Były to ciężkie, mało elastyczne kombajny.

Zadaniowy system

Dlatego Neptune miał oferować interfejs oparty o zadania. Zdjęcia? Proszę bardzo: uruchom Centrum Zdjęć i kliknij na "pobierz zdjęcia". Muzyka? Gotowe: Centrum Muzyki pozwala odtwarzać, zgrać z płyty i kupić w internecie muzykę. Pod spodem w systemie wciąż znajdowały się zaawansowane, pełnoprawne kreatory. Jednak już w 1999 roku pracowano nad tym, by zamiast "Okna powitalnego Kreatora importu fotografii i przezroczy" system oferował ładny przycisk "Pobierz zdjęcia".

bDYyQcvh

Los Centrów Aktywności był marny. Językiem, w którym je pisano, był HTML. Rysujący je Internet Explorer, w wersji piątej otrzymawszy obsługę tzw. "aplikacji HTML" (HTA) był niewystarczający do tego, by stworzyć eleganckie, skuteczne i stabilne rozwiązania. Rozwijane w ramach projektu Millennium (to stamtąd bowiem pochodzą) Centra Aktywności zostały porzucone. Zaplecze techniczne wykorzystano tylko dla kilku interfejsów, Centrum Muzyki przerobiono na dedykowaną aplikację EXE (IE nie udźwignął interfejsu), a Windows XP wydano z klasycznymi kreatorami.

(fot. GUIdebook)
(fot. GUIdebook)

Dlatego też Centra Aktywności zapamiętano jako porażkę. A tymczasem dzięki wysiłkom zespołu Millennium otrzymaliśmy takie cuda, jak Windows Media Player, nowy Ekran Logowania, uniwersalny model WIA, Aktualizacje Automatyczne, Przywracanie Systemu i wbudowany komunikator. Można spotkać się z opinią, że Windows stałby się przyjazny w obsłudze kilka lat wcześniej dzięki Centrom, ale praktyka pokazuje, że to pomysł chybiony. Longhorn (i w konsekwencji Vista i 7) postawił na łatwą konfigurację urządzeń, ale przepływ pracy był oparty o klasyczne kreatory. Korzystały one po prostu z bardziej przyjaznego słownictwa.

Windows 8 wprowadził w zasadzie wszystkie założenia Neptune (pełnoekranowe interfejsy oparte o zadania, przezroczysta aktualizacja, szybkie uruchamianie, domyślna hibernacja), ale jego UI okazało się zbyt ułomne i niewystarczające nawet dla początkujących. Nieliczni już dziś użytkownicy Windows 8.1 zdecydowanie nie korzystają dziś z aplikacji Metro.

bDYyQcvi

Java, ale od nas

Na tym zazwyczaj kończą się te pełniejsze opisy Neptune. Jest jednak pewien mało znany detal systemu Neptune, pokazujący kolejne, wielkie przedsięwzięcie w Redmond. Następcę środowiska COM, czyli podsystem COM+. Na sterydach. Neptune zawiera bowiem strzępy czegoś, co wygląda na .NET Framework.

.NET jest z nami do dziś (fot. Mack Male
.NET jest z nami do dziś (fot. Mack Male

Interfejsy oparte o zadania były ambitnym przedsięwzięciem zespołu konsumenckiego Windows. Model programowania oparty o HTML miał być koniem trojańskim, uzależniającym świat od Internet Explorera i był pokłosiem pospolitego ruszenia jeszcze z roku 1996. Ale w Microsofcie wiedziano, że Visual Basic i DHTML nie będą wystarczające do podbicia przyszłości. Na wiele sposobów były technologią lat 90-tych bez jasnej ścieżki rozwoju. Był to "pik Windows": produkt bardzo dobry, niemal idealny w swojej kategorii. Kategoria ta jednak odchodziła w przeszłość, a dowód na to był oczywisty i bardzo wyraźny. Java. Microsoft potrzebował czegoś takiego, jak Java. Nie udało mu się jej bowiem pokonać.

Neptune zawiera biblioteki DLL Fusion, środowiska ładowania aplikacji celujących w .NET CLR. Wersja ta nosi niewątpliwe znamiona bycia narzędziem .NET, ze względu na obsługę Assemblies oraz WinSxS oraz linkowanie do MSCOREE.DLL. Jakakolwiek wzmianka na temat MSCORLIB z roku 1999 powinna ciekawić, bowiem jest ona oddalona w czasie o rok od pierwszej wersji próbnej .NET i wiele miesięcy od ogłoszenia projektu w ogóle.

bDYyQcvj

Bardzo opłacalna porażka

Opisy bibliotek sugerują, że nowy model programowania miał grać rosnącą rolę w kolejnych wersjach Windows. Fragmenty interfejsu i nowe funkcje miałyby być pisane w .NET, sugerowanym (wraz z MSI) jako rekomendowany sposób budowania i dystrybucji oprogramowania. A więc to nie Longhorn próbował stworzyć aplikacje oparte o .NET. Robił to już Neptune.

(fot. bytekut)
(fot. bytekut)

Ponieważ Windows nigdy nie otrzymał żadnego większego komponentu napisanego w .NET, próby zabawy z nim uznaje się za porażkę. Wadliwa wersja w Neptune, fiasko z Longhornem, wstydliwe przemianowanie "Windows.NET" na Windows XP i "Windows.NET Server" na Windows Server 2003 – na to wszystko można patrzeć jak na nieudaną próbę podbicia świata konkurentem Javy. Jednak bez owych porażek, .NET nie stałby się tym, czym jest dzisiaj: niezwykle atrakcyjnym, międzyplatformowym środowiskiem programowania.

Neptune przepadł w mrokach dziejów. System ten był tak bardzo eksperymentalny, że jego twórcy wydawali się wiedzieć, że nie ma on szans na wydanie. Nie zasługuje on jednak na miano porażki: był poligonem walki o lepszy produkt. Wraz z szalonym wyścigiem do Windows 2000, nowe interfejsy konsumenckie i środowiska programowania stworzone pod koniec XX-go wieku w Redmond, zdefiniowały kształt przyszłych systemów. Na niektóre z nich przyszło nam poczekać długie dwanaście lat.

bDYyQcvX