воскресенье, 23 ноября 2014 г.

[prog.c++] Интересный доклад "Microsoft Office Cross-Platform Architecture - @Scale 2014"

Доклад от разработчика из Microsoft на Facebook-овской конференции @Scale 2014. Вот видео на английском языке (но говорил русский, поэтому этот английский на слух даже я нормально воспринимал):

Очень интересно и поучительно. Особенно приятно, что речь идет о C++ :) Кстати, был удивлен узнав о том, что в версии Office для Mac уже используется C++14 посредством clang-овского компилятора.

Вспомнились годы работы в Интервэйле.

Конечно же, сразу подумалось о том, насколько все изменилось в разработке клиент-сайда после того, как вместо привычного Web, j2me и WinCE образовался зоопарк из Web, BlackBerry, iOS, Android, WinPhone и, до какого-то времени, того же j2me. Имхо, для борьбы с этим многообразием в Microsoft поступили намного более разумно, чем мы. Все-таки отдельная команда и отдельная кодовая база для каждой платформы -- это тупиковый путь. К сожалению, даже нормально подумать о том, что с этим делать, возможности не было, хватало других, более животрепещущих проблем.

Ну и еще раз подумалось по то, что в Интервэйле довелось больше 10 лет заниматься одним большим проектом (точнее, сначала он не был большим, но затем вырос и все это время был главной "дойной коровой" компании, пока очередная смена ТОП-менеджемента не просрала все полимеры). Долгая работа над кодовой базой -- это уникальный опыт. Я об это уже не раз говорил, повторюсь еще раз: есть хорошая возможность самостоятельно отслеживать последствия своих же решений в долгосрочной перспективе. То, что казалось правильным и удачным, через три-четыре года выглядело уже совсем иначе.

Кстати, это одна из причин, почему не хочется связываться с аутсорсинговыми конторами. Во-первых, там команды формируют и переформируют под заказчика. Сегодня ты работаешь над одним проектом, через полгода -- совсем над другим. Во-вторых, даже если ты оказываешься на "долгоиграющем" проекте, степень влияния на проект все равно меньше, чем в продуктовой компании, т.к. у заказчика есть свои специалисты, у которых свое собственное мнение и видение. Хотя, конечно, в продуктовой компании с давно живущей кодовой базой эта самая база будет содержать изрядное количество "говна мамонта", но, поскольку от этой базы много чего зависит, возможностей как-то повлиять на это должно быть больше (если компания живет с продукта, конечно, а не с распила средств из каких-то других источников). Ну да это уже оффтопик.

А сам доклад интересный. Десятки миллионов строк кода, история которого насчитывает 30 лет -- это внушаить. Ну и C++ жив, да еще и является основой одного из самых крупных и успешных программных проектов в истории. Что не может не радовать ;)

Комментариев нет: