Интервью с Брайан Харри: о Visual Studio 2010 и не только

Microsoft
Брайан ответил на вопросы, заданные читателями блога и, так уж вышло, что рассказал он не только о Visual Studio 2010. Мы с удивлением узнали, что вице-президент Microsoft по технологиям, руководитель такого масштабного проекта - на самом деле фермер без высшего образования*. Шокирующие подробности - в тексте интервью.

- Каковы основные преимущества новой Visual Studio?
- Первое и главное - это производительность. Сейчас это самое производительное средство разработки на планете.
Второе преимущество состоит в том, что Visual Studio 2010 обеспечивает возможность создания разнообразных приложений на основе одного набора навыков. Если вы посмотрите на конкурирующие технологии, то увидите, что их использование требует значительно больше навыков. Если вы используете, например, PHP для создания веб-сайта, необходимы знания и умения, отличающиеся от тех, которые требуются для Flash. Microsoft предоставляет унифицированный пакет, который позволяет использовать один и тот же набор навыков для всех типов приложений.
И, наконец, третье преимущество - это средства, предназначенные для организации командной работы, лучшие в своем классе.
- Каков ваш вклад в Visual Studio? Вы сами написали какой-либо фрагмент кода?
- Я не участвовал в написании кода для Visual Studio 2010. На мне лежит управление многочисленной командой, и эта работа не оставляет времени для написания кода.
Если подумать, мой основной вклад состоит в том, что я играл роль пользователя. Я использовал продукт по одному из возможных сценариев и передавал команде информацию о функциональности и недостатках.
Что касается моих личных разработок, то я обычно занимаюсь созданием программ, не привязанных к какому-либо графику или проекту. Например, я разработал некоторые средства Power Tools, которые поставляются вместе с Visual Studio 2010. Но я не создал ни одной функции, которая включена непосредственно в продукт.

- В чем различие между облачными и обычными приложениями для разработчиков?
- Различия в навыках или принципах работы минимальны. Однако, все разработчики, создающие приложения для облачных вычислений, учитывают новые возможности, требования и специфику их использования.
Например, они хотят, чтобы их программные продукты были доступны во всем мире. Вы создаете приложение, и им пользуется 1000 человек. Приложение работает, и эти 1000 пользователей вполне им довольны. Внезапно приложение становится очень популярным, и у вас уже 1000000. Важно, чтобы приложение автоматически реплицировалось, масштабировалось для большего количества средств аппаратного обеспечения и могло удовлетворить запросы всех этих пользователей.

- Какие новые функции предусмотрены для корпоративных разработчиков?
- Когда речь идет о корпоративных разработчиках, мы, скорее, обсуждаем средства управления жизненным циклом приложения и инструменты совместной работы. Тестеры, менеджеры проектов, бизнес-аналитики и сотрудники, связанные с процессом производства ИТ-продуктов, работают в одной команде. Таким образом, мы говорим о средствах ALM, а точнее - о новых средствах тестирования.
И здесь важно отметить, что наши средства тестирования позволяют прекратить противоборство разработчика и тестера. Одна из самых распространенных жалоб при совместной работе заключается в следующем: разработчик пишет код и передает его тестеру, тот прогоняет код через свои тесты и возвращает найденные ошибки разработчику, и вот здесь начинаются трудности. Зачастую разработчик не может воспроизвести код. Тестер обнаруживает ошибку, разработчик, пробует ее устранить, но не находит. В чем проблема? Причин может быть много. Тестер может тестировать версию ПО, которая отличается от версии разработчика. Возможно, он выполнил действия, которые незначительно отличались от тех, о которых он заявил. Или ошибка появляется не каждый раз. Часто это приводит к конфликтным ситуациям. Тестер злится на разработчика, потому что думает, что ему нет дела до качества. Разработчик злится на тестера, потому что думает, что тот просто тратит его время, сообщая о несуществующих ошибках. Основной задачей для нас стал поиск оптимальных путей решения этих проблем и обеспечения эффективной совместной работы тестера и разработчика. Для этого мы предоставили тестерам все средства, необходимые для воспроизведения ошибки. Теперь после фиксирования ошибки, они могут передать разработчику все, что нужно для ее определения, включая видеозаписи всех действий, совершенных тестером, доступ ко всем тестовым примерам, скриншоты конкретных проблем. Плюс есть еще одна функция - IntelliTrace, которая позволяет тестеру протоколировать все этапы работы приложения. Разработчик может открыть протокол в отладчике и просмотреть любое место кода, чтобы определить, какую операцию код выполнял во время прогона тестового примера.
Также мы проделали огромную работу для облегчения работы менеджеров проектов: улучшенные средства отчетности, кворум, трассируемость, интеграция с Microsoft Project.

- Каков жизненный цикл Visual Studio?
- Он не фиксирован. Жизненный цикл для Visual Studio колеблется от выпуска к выпуску. Мы, как правило, стремимся выпускать новую версию каждые два года, иногда интервал немного меньше, иногда - немного больше. От предыдущего выпуска версию 2010 отделяет два с половиной года, но это очень серьезный выпуск. Сейчас мы думаем о том, каким станет следующий. С определенной долей уверенности могу сказать, что он будет анонсирован через 2 года.

- Вы сотрудничаете с российскими разработчиками?
- Да, конечно! У нас много партнеров в России. ReSharper - отличный пример очень популярной надстройки, созданной в России. Есть и другие примеры, сейчас вот так навскидку и не вспомню, но у нас довольно много партнеров в вашей стране. На самом деле в нашей команде довольно много россиян. Два разработчика, например, работают прямо за соседней перегородкой - они помогли создать Team Foundation Server.

- Вы собираетесь выступить с лекцией в Высшей школе эконимики. Какой теме она будет посвящена?
- Я хотел бы поговорить о сложностях, с которыми разработчики ПО сталкиваются помимо написания самого кода. Мы много внимания уделяем процессу разработки, особенно в вузах, где разработчики получают профессиональные навыки. И на самом деле написание кода - важная часть процесса, но далеко не весь процесс. Я хочу, чтобы выпускники вузов подумали обо всех составляющих разработки программного обеспечения. Например, о том, как принимается решение о создании конкретной программы, как проверяется соответствие того, что создано, собственным требованиям разработчика, какие навыки и знания нужны для управления проектом. И я хотел бы рассказать им о том, как выглядит наш процесс разработки: как мы решаем те или иные задачи, какие уроки мы вынесли, как планируем строить нашу работу в будущем.

- Как вы опишите свои ощущения, после того, как продали свою компанию Microsoft. Наверное владеть собственным бизнесом и быть частью большой корпорации - совсем разные вещи?
- Самая главная особенность управления небольшой компании состоит в том, что вы занимаетесь всем: разработкой, продажами, технической поддержкой, документацией. Знаете, я вспоминаю, как мы собирались вместе на <упаковочные> мероприятия: тиражировали диски, вкладывали их в коробки, затем конверты, приклеивали этикетки.
Первое, что меня поразило, когда я попал в Microsoft, это намного более высокий уровень специализации: разработчик занимается разработкой, он никогда не занимается упаковкой. Но вы также никогда не сталкиваетесь с продажами или поддержкой клиентов. Особенно в середине 90-х, когда Microsoft была очень специализированной компанией. Я думаю, что где-то в 2000 или 2002 году мы поняли, что слишком раздроблены: в каком-то смысле наши команды разработчиков утратили контакт с клиентами. Поэтому мы старались задействовать разработчиков в работе с потребителями, начали подталкивать людей к взаимодействию с новостными группами, посоветовали им быть более открытыми, разговаривать с людьми, отвечать на вопросы.
На фоне этих перемен, я с самого начала пытался применить опыт, полученный во время управления собственной небольшой компанией. Например, перенести отношение к клиенту и способы мотивации сотрудников, характерные для маленькой ИТ-компании, - в Microsoft.

- Как бы вы описали свой баланс между работой и личной жизнью?
- В последние несколько лет моя жизнь стала более сбалансированной, хотя в основном она по-прежнему состоит из работы. Несколько лет назад я купил ферму: 65 коров, куры, собаки, ослы, свиньи: Словом, довольно большое хозяйство. И мы с моей женой, без посторонней помощи, управляем всем этим. Это моя работа вне работы. Я получаю огромное удовольствие от ведения фермерского хозяйства - это возможность вырваться из города, полезная физическая нагрузка, к тому же я люблю работать с животными. Это позволяет расслабиться и отвлекает от основной работы.

- Расскажите о вашем образовании - какой университет вы окончили?
- Ха-ха. Хотите поставить меня в неловкое положение? Проблема в том, что у меня нет законченного высшего образования. Я поступил в колледж, но как-то устал от учебы и решил пойти в старт-ап, так что не закончил образования: Отучился четыре года, но не сдавал экзамены. При этом, мою учебу в колледже нельзя назвать стандартной: Знаете, на втором курсе я начал посещать занятия для старшекурсников, так что к четвертому году обучения прошел весь курс информатики, магистерскую и докторскую подготовку. И в итоге решил, что больше мне там делать нечего.

- Что бы вы посоветовали молодым специалистам или студентам, которые только собираются стать программистами?
- Знаете, есть программисты, которые выбрали для себя это занятие, потому что оно приносит доход, и это неплохая мотивация: Но есть люди, которые занимаются этим, потому что получают удовольствие от процесса создания программ, они просто любят писать что-то, видеть как это работает, показывать друзьям. Это те самые разработчики, которых мне хотелось бы видеть у себя в компании. Они работают, потому что разработка программ для них удовольствие. Никогда не упускайте это из виду и не позволяйте себе скучать, даже если создаете приложение, которое вам неинтересно. Научитесь находить то, что вам действительно нравится.

* Разумеется, это шутка. Брайан Харии - один из наиболее компетентных специалистов в своей области. И лучшим доказательством тому может стать Visual Studio 2010 - прекрасный инструмент для разработки приложений, созданный под его руководством.
Источник ms4press.ru

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

avatar
<Брайан Харии - один из наиболее компетентных специалистов в своей области>

А ведь тоже без вышки как и БГ :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.