— Девушки, ещё раз напоминаю: не надо спрашивать у клиента, что у него стоит, надо спрашивать «Какое программное обеспечение у Вас установлено?» |
Инструктаж в телефонном центре техподдержки. |
Смотрю презентацию продукта, в разработке которого мне придётся участвовать. В презентации попались интересные сведения:
- Авионика самолёта F-22 Raptor содержит 1,7 миллионов строк кода. А F-35 Joint Strike Fighter — почти 10 миллионов строк кода. Это примерно размер операционной системы из тех, что попроще, — какой-нибудь FreeBSD или Windows NT.
- Обычный кардиоводитель содержит программу размером в 80 тысяч строк кода. Я-то думал, что там вообще программы нет, голая электроника с кварцевым осциллятором. Оказывается, есть. «Скачай себе в кардиоводитель прикольный рингтон!..»
- В любом современном автомобиле около 100 миллионов строк кода. Для сравнения, в Windows XP было всего 45 миллионов строк кода.
Двумя пунктами выше я говорил про самолёты. Может создаться впечатление, что в самолёте в 10 раз меньше программ, чем в автомобиле. Это превратное впечатление. Выше речь идёт только об авионике, то есть только о бортовом радиоэлектронном оборудовании. Есть ещё системы вооружения, которые являются совершенно отдельным шедевром программирования (по нажатию кнопки «Огонь» система сама выбирает тип вооружения, осуществляет прицеливание, наведение, выстрел и сопровождение цели с активным противодействием её защитным манёврам вплоть до поражения цели). А есть ещё системы индикации и управления в шлеме пилота, это ещё один совершенно независимый аппаратно-программный комплекс, который тоже является шедевром. Фактически, авионика — это лишь малая часть того, что есть в самолёте. - В тяжёлой индустрии 90% всех инноваций последних лет — результат обновлений программного обеспечения. В медицине и в медицинских устройствах 70% прогресса — следствие изменений программного обеспечения.
Просто удивительно, насколько глубоко проникли программы в нашу жизнь. Кардиоводители с компьютером внутри! Автомобили, в которых столько же кода, сколько в двух операционных системах, — в каждом автомобиле!
Чтобы написать операционную систему уровня Windows XP с нуля, нужно пять-семь лет работы группы из нескольких сотен весьма мощных специалистов. За те же пять лет механическую часть автомобиля создаёт с нуля группа из двух-трёх десятков дизайнеров, механиков и техников. Получается, что доля труда программистов в современном автомобиле в десяток раз выше, чем доля труда всех остальных. (И это на самом деле так — в той же презентации говорилось, что в современной тяжёлой промышленности количество всех железячников как минимум впятеро меньше числа программистов).
Это удивительный вывод. Получается, что автомобиль ездит не столько потому, что кто-то придал куску металла форму корпуса, поставил внутрь двигатель, приделал к нему колёса и сиденья, а в большей степени потому, что кто-то сидел и дённо и нощно колотил по клавишам.
Получается, что автомобиль, как минимум по трудозатратам, — это на девять десятых программный продукт. Девять десятых от машины — результат работы таких психов, как я. И только одна десятая — железо, пластик и стекло, которые возят наши тушки. Получается, что правильнее представлять себе автомобиль не в виде железяки, в которой где-то внутри спрятан маловажный компьютер, занимающийся своим малопонятным делом, а в виде мощного компьютера (если быть точным — сети из около пяти десятков компьютеров), которые выполняют львиную долю работы, и которые подают сигналы на всякие маловажные детальки типа колёс и руля…
Это же в корне меняет всё мировоззрение! Я думал, что мы ездим на железе. А оказывается, мы ездим прежде всего на программах, а железо — это так, ерунда, мелкое периферийное устройство.
А ведь я ещё помню время, когда самой сложной электронной деталью в автомобиле была радиола…
no subject
Ничего не понимаю, я гуманитарий
(no subject)
no subject
(no subject)
(no subject)
no subject
(no subject)
no subject
(no subject)
no subject
(no subject)
no subject
(no subject)
no subject
Ого. Интересные наблюдения!
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
(no subject)
no subject
(no subject)
no subject
(no subject)
(no subject)
(no subject)