#46
Az általad elmondottakra és arra, hoyg miért csúszik a Windows Vista a következőket tudom elmondani:
1. Hardverfejlődés megtorpanása
A hardver fejlődése - talán kicsit váratlanul - megtorpant, és a 3 gigahertzes órajel feletti processzorokat nemigen sikerült készíteni. Ezt követően még legalább évet várattak magukra a többmagos processzorok, és hatékony kihasználásuk is teljesen új programozási módszerek kidolgozását igényelte. Az órajel növelése lett volna az egyetlen megoldás, hogy a meglévő alkalmazások sebessége kódmodosítás nélkül növekedjen - ugyanis a processzorok belső architektúrájának optimalizálása is elérte a lehetséges határokat.
2. Dependencia-káosz:
Ami még gondot jelent, hoyg a Microsoft megpróbálta a lehető legjobban kihasználni fő erősségét, mégpedig azt, hogy szoftverei hatványozottan képesek kihasználni egymás képességeit. Ez mindaddig kézben is tartható, amíg kész szoftverekre akarunk ráépíteni egy újat. De amikor egyszerre árhuzamosan fejlődik több, egymással keresztül-kasul együttműködő modul, akkor bármelyik csúszása katasztrofális következményekkel járhat a többire nézve is.
Talán a legjelentősebb terület, ami a Vista késéséért is okolható: az új tárolási stack, amit közösen fejlesztettek a .NET 2.0-ban (ObjectSpaces), a WinFS-ben, illetve az azóta elhalálozott Microsoft Business Framework-ben, és részben alapul vették az SQL Server 2005 kódját is.
Megoldás: a Loghorn "reset". A hardverfejlődéssel kapcsolatos előrejelzések pontatlanságának következtében a Microsoft kénytelen volt felhagyni azzal a tervével is, hogy a még félkész .NEt keretrendszer 2.0-t mélyen integrálja a Windows-kernelbe. Ez az alapok jelentős átalakításával járt, s a Microsoft visszanyúlt a közben fejlesztett Windows Server 2003 SP1 kódjához, ami ekkor már stabilan működött, így jó kiindulási alapot nyújtott a meglévbő képességek egy részének ráépítésére. A maradékot viszont kíméletlenül újra kellett írni, ráadásul a dependenciák minimalizálásával, ami egyben a meglehetősen komplex WinFS eltávolításával is járt.
Végül a .NET 2.0 nagy késéssel megjelent a Visual Studio 2005 részeként, de már ObjectSpaces nélkül, és ekkorra már a Windows kernel is független volt a keretrendszertől - de ez a példa csak egy a sok közül!
Ekkor tették rendbe a Vista napi build rendszerét, létrejöttek az úgynevezett Quality Gatek, ezek szavatolták, hoyg rossz minőségű kód ne veszélyzetesse a napi build előállítását, mivel a fejlesztő végre sem tudta hajtani vele a check-in műveletet, vagy ha mégis, és gond keletkezett, akkor az a kód azonnal repült is a Bug Jailbe.