15 лет назад 26 августа 2009 в 15:27 835

Она действительно новая: про множество появившихся в ней нововведений мы уже писали и будем писать дальше, по результатам знакомства с финальной версией продукта. Однако же не будем забывать и про то, какое количество кода из предыдущих версий Windows содержится в «семерке». Кстати, мне так и не удалось выяснить, сколько его там, но подозреваю, что, мягко говоря, хватает. Вообще, что такое Windows? Это всем известное семейство операционных систем, которое развивается, по официальной хронологии, с 1985 года, то есть около двадцати пяти лет. В процессе своей эволюции оно слилось с MS-DOS, еще более старой ОС от Microsoft, когда-то разработанной совершенно независимо, поэтому те операционки, которыми сейчас пользуются почти все, имеют сразу двух предков.

матвеев

В подавляющем большинстве случаев последующая версия любого программного продукта – например, Windows – по сравнению с предыдущей: а) сложнее и содержит в себе принципиально больше кода, б) в некоторой – в каждом случае в разной – степени содержит в себе код предыдущих версий, с) обычно пишется группой людей, каждый из которых знает только свой участок работы, а соответственно и программы в целом. А порой и большим количеством компаний-субподрядчиков. Если ПО пережило не более двух-трех глобальных модернизаций, то это еще ничего: тогда ретроспективный анализ помогает понять, как именно и по каким законам развивался код. А если таких апгрейдов было 10? А если 20? А 100? Попробуйте сравнить Windows 3.11 и Windows Vista – они родственники, но разница между ними измеряется миллионами строк кода.

При этом само программирование как вид человеческой деятельности – явление довольно молодое. Как следствие, программное обеспечение, которым мы пользуемся сейчас уже в том числе и для того, чтобы поддерживать жизнедеятельность нашего мира, оно… грубо говоря, еще маленькое. Недавно родилось, зато совершенствуется с потрясающей скоростью. Честно говоря, я глубоко убежден, что нет такого человека, который бы представлял себе целиком и полностью то, как на самом деле работает Windows (или любая другая крупная программа с более чем десятилетней историей). Она состоит из кусков кода, написанного, не побоюсь этого слова, в разные технологические эпохи, а значит, в разных частях себя очень и очень разная. Собственно говоря, то, что последние версии данной ОС (за некоторыми исключениями) работают очень даже ничего, я считаю доказательством потрясающего мастерства программистов Microsoft, которых принято поносить за криворукость и которые сумели собрать это все воедино, сделать универсальным и весьма стабильным. Ругать-то всегда легче, чем предложить что-то свое.

Есть все основания полагать, что любой популярный программный продукт (неважно, локальное ли это приложение или результат возобладавшей концепции удаленных вычислений) способен поступательно развиваться минимум десятилетиями. Если человеческое общество будет продолжать существовать, не скатившись окончательно в варварство, то лет через пятьдесят, возможно, наступит момент, когда программисты будут собирать воедино очередную версию ОС Windows, а в ней по-прежнему будет содержаться много кода операционных систем, разработчики которых давно умерли от старости. Что будет представлять собой ПО, цикл жизни которого измеряется многими десятилетиями, в обществе, чье функционирование во многом зависит от корректной работы модулей, созданных поколения назад, модулей, про которые уже мало кто помнит? Об этом можно только догадываться, но сам факт существования таких «пожилых» программных комплексов принципиально поменяет очень многое. Например, программисты и системные администраторы будут… не знаю, какие они будут, но роль их в обществе вырастет несказанно. И называться они будут наверняка по-другому.

Искренне убежден, что программирование – это странный симбиоз искусства и ремесла. Мне иногда кажется, что бывают ситуации, когда программисты сами не знают, как они добились того или иного результата и почему все работает именно так. Лет через тридцать человечество будет использовать немало «старых» программ, которые к тому моменту окончательно станут «вещами в себе», будут жить своей жизнью и слушаться только настоящих хозяев (смайл). Наверняка это будет очень занимательно. Впрочем, главное – это чтобы и через сто лет «Винда» вела себя послушно.

P. S. Товарищ Барсуков давеча посоветовал мне прочитать книжку американского фантаста и математика Вернора Винджа (Vernor Vinge) «Глубина в небе», где в описываемом мире программам, работающим на звездолетах, уже тысячи лет от роду и существует такая профессия, как программный археолог – человек, который ведет «раскопки» в доисторическом коде для решения текущих проблем. Очень рекомендую.

P. P. S. Переводы этой книги на русский, которые лежат в Рунете и попадались мне, чудовищные. Если видели где-нибудь приличный – поделитесь. UP

Никто не прокомментировал материал. Есть мысли?