Неслучайная случайность?

Программный архитектор из IBM Роб Вейр обнаружил, что в систему случайного распределения браузеров при установке Windows 7 вкралась досадная ошибка, из-за которой у браузера Google Chrome больше шансов оказаться на первом месте, чем у других. "Это примитивнейшая ошибка, – говорит специалист. – Я очень удивился, когда ее обнаружил".

Ранее Евросоюз предписал Microsoft добавить в Windows 7 возможность, которая позволила бы пользователю самостоятельно выбрать браузер, с которым он предпочитает работать. Это стало реакцией на иск, поданный норвежской компанией Opera, разработчиком одноименного браузера. Microsoft обязалась сделать так, что браузеры будут представлены в случайном порядке (чуть ранее порядок был алфавитным, что многие тоже сочли несправедливым). Пользователь теперь может выбирать из Internet Explorer, Firefox, Chrome, Opera, Safari и других.

Вейр рассказал в своем блоге, что программисты Microsoft просто-напросто ошиблись с алгоритмом. Они применили не стандартный алгоритм случайного выбора, а метод сортировки массива с помощью функции сравнения. В результате браузер Chrome получил самые лучшие шансы оказаться на первых позициях списка, а Internet Explorer, наоборот, самые худшие. При этом в 50% случаев Internet Explorer оказывается на последнем месте списка.

По мнению специалиста, эта ошибка крайне наивна, ее с вероятностью в как минимум 1% допускают студенты-программисты. Но плохо даже не то, что кто-то в Microsoft ее допустил, а то, что никто после этого ее не заметил, а это уже свидетельствует об общей проблеме процесса отладки программного обеспечения внутри корпорации.

"Эта ошибка означает, что никакого случайного выбора нет, – пишет Вейр. – Я поражен, что она настолько серьезная. В Microsoft должны были обнаружить ее гораздо раньше, еще перед запуском экрана выбора браузеров".

В Microsoft пока никак не прокомментировали выводы специалиста.

©  @Astera