понедельник, 3 мая 2010 г.

Почему Microsoft добавляет в бета-версии своих продуктов time bomb-ы?

Это перевод Why does Microsoft "time bomb" its beta releases? Автор: Ларри Остерман.

Вот один часто задаваемый нам вопрос: "содержит ли time bomb бета-версия продукта X"?

Для начала: что такое time bomb? Это кусок кода, который отключает бета версию через некоторое время после её выхода в свет.

Если я не ошибаюсь, то все продукты Microsoft оснащаются time bomb-ами. По-крайней мере, это так для всех продуктов, с которыми я работал лично. Time bomb может быть достаточно мягкой (типа потери способности отправлять/получать почту), либо критической (продукт отказывается загружаться), но все бета-версии содержат какой-либо вариант.

Как мне известно, это пошло с Exchange. Когда мы выпускали Exchange 4.0 (это было в 1994-м), то у нас было несколько предварительных бета-релизов. В то время Microsoft не осознавала, что эти ранние бета-версии Exchange были "достаточно хороши" для многих сайтов.

Но в бета-версиях было много багов - недостаточно серьёзных, чтобы помешать использованию продукта, но они вызывали проблемы взаимодействия с другими почтовыми системами (я действительно не помню сейчас подробностей, там было что-то вроде: SMTP-шлюз создавал uuencoded TNEF блобы вместо кодирования в MIME или что-то такое).

Мы исправили эту проблему задолго до выхода стабильной версии продукта. Однако, все эти сервера, на которых стояли бэта-версии, продолжали работать на бэта-версиях годами после выпуска стабильной версии. Соответственно, Microsoft продолжала получать "баг-отчёты" о том, что Microsoft Exchange формирует ошибочные сообщения.

Но ни одна версия продукта не содержала этой ошибки! Проблема была видима только потому, что небольшое количество клиентов продолжало использовать предварительные бета-версии и не обновила их после выхода первой стабильной версии Exchange.

В результате этого (и аналогичных инцидентов) Microsoft начала включать в бэта-версии time bomb-ы - таким способом Microsoft может гарантировать, что бэта-версии не будут использовать после выхода стабильной версии продуктов.

1 комментарий:

  1. Звучит очень разумно. Попробую-ка я включить такой функционал в нестабильные версии своих программ. =)

    ОтветитьУдалить

Можно использовать некоторые HTML-теги, например:

<b>Жирный</b>
<i>Курсив</i>
<a href="http://www.example.com/">Ссылка</a>

Вам необязательно регистрироваться для комментирования - для этого просто выберите из списка "Анонимный" (для анонимного комментария) или "Имя/URL" (для указания вашего имени и ссылки на сайт). Все прочие варианты потребуют от вас входа в вашу учётку (поддерживается OpenID).

Пожалуйста, по возможности используйте "Имя/URL" вместо "Анонимный". URL можно просто не указывать.

Ваше сообщение может быть помечено как спам спам-фильтром - не волнуйтесь, оно появится после проверки администратором.