"Мы делали IE8 с книгой стандартов в руках"
"Мы делали IE8 с книгой стандартов в руках"
Автор: Бойко,Евгений
Пальцев обеих рук не хватит, чтобы пересчитать все имеющиеся на свете браузеры: Lynx, Netscape, Opera, Firefox, Safari, MyIE, Internet Explorer и т. д. и т. п… Острая конкуренция между ними принесла немало и плохого, и хорошего - как разработчикам, так и пользователям. С одной лишь разницей: первым с различиями приходится бороться, вторым - мириться.
На конференции "РИТ 2008", куда приехал Алекс Могилевский, архитектор последней версии Inter-net Explorer и один из членов CSS Working Group, мы немного поговорили о прошлом и будущем браузера Microsoft.
Алекс, ты ведь родился в России?
- Да, до 1993 года я жил в России. Учился на физическом факультете Новосибирского Государственного университета; специальность - автоматизация физико-технических исследований - одна из первых в стране, напрямую связанная с вычислительной техникой. Работал в Институте автоматики, позднее - в московской компании Paragraph International, которая занималась системами распознавания рукописного текста. В 1993-м меня пригласили в Microsoft на собеседование, а затем и на работу в корпорацию.
С чего началась твоя работа?
- С Microsoft Word for Windows шестой версии. Тогда я не очень хорошо понимал архитектуру этого программного обеспечения, так что многому учился по ходу дела. Результатом моей работы над проектом стала всем известная "красная волнистая линия", которая подчеркивает сомнительные места.
Как ты пришел в разработку IE?
- Это довольно длинная история. Как раз после Word 6 я занимался проектом, который сейчас называется InfoPath, ранее - NetDocs, а еще раньше - New Internet Application. Платформой для его разработки служил Internet Explorer 4, который хочешь не хочешь, а пришлось изучить.
Что привело к созданию более поздних версий браузера?
- Развитие Интернета, появление новых стандартов, потребность в новых возможностях… да много чего.
Чем объясняется долгий пятилетний перерыв между шестой и седьмой версиями Internet Explorer?
- Мы сделали IE5.5 и IE6, ими на тот момент пользовалось 95% владельцев ПК - ни о каком стремительном прогрессе в разработке можно было и не мечтать. В этом деле, как мне кажется, главное - конкуренция, а ее не было.
Сейчас она появилась?
- Я считаю, да. После выхода IE6 мы решили сделать небольшую паузу в разработке, чтобы люди посмотрели на другие продукты и поняли, что они хотели бы иметь в распоряжении. Сейчас обстановка стабилизируется, и у всех есть стимул для развития. Очень плохо, когда кому-то одному принадлежит подавляющая часть рынка - показатели должны колебаться на уровне 30-60% у каждого продукта: все, что больше шестидесяти, приводит к остановке развития; если меньше тридцати - пропадает интерес.
То есть вы поможете Firefox и Opera набрать хотя бы по 30%?
- (Улыбается.) Ну что значит "поможете"? Главное, что мы им не препятствуем. Мы с уважением относимся к нашим конкурентам и к тому, что они делают.
А почему на Firefox перешло так много людей?
- Если бы мы не взяли паузу, Firefox было бы гораздо труднее сделать "прорыв". Ну и конечно, нельзя отрицать, что в Firefox есть ряд возможностей, которые пришлись по нраву многим. В частности, обилие дополнений (add-on), которыми пользуются разработчики.
У последующих версий IE будут аналогичные возможности?
- Смотря о каких возможностях идет речь; кое-что мы уже сделали. Во-первых, ядро IE8 создано с книгой стандартов в руках. В нем есть мощный встроенный отладчик HTML, CSS и JavaScript, переработан интерфейс, добавлены полезные Activities и WebSlices. Но о возможностях, аналогичных по архитектуре дополнениям Firefox, пока говорить рано - сейчас главным критерием мы считаем безопасность.
Какие у тебя планы относительно IE?
- Нет ничего интереснее, чем писать серьезный софт с нуля. Я думаю, что у IE большое будущее, особенно в условиях, способствующих развитию программных продуктов. Например, в ближайшие несколько месяцев я вижу свою работу в оптимизации производительности, совместимости и отладке. IE8, презентацию которого я провел в России, - хороший продукт, но это пока лишь бета: в ней не все еще работает, и многое только предстоит реализовать.
Многих разработчиков волнует полная поддержка всех существующих и будущих стандартов. Как я понимаю, IE8 ее обеспечит?
- IE8 поддерживает стандарты настолько, насколько возможно. Мы внимательно изучили все спецификации и по всем возникшим вопросам советовались с нашими конкурентами. Однако стандарты не совершенны - в них есть "узкие места", и мы их учитываем. Есть четкие правила, определяющие то, как браузер должен обрабатывать страницы, сделанные не по стандартам. Есть множество примеров плохих, некрасивых сайтов, но сделанных в соответствии со стандартом. В то же время есть красивые и удобные сайты, работающие во всех браузерах, но которые не пройдут проверку валидатором. Я общался с Сергеем Чикуенком - техническим директором Студии Артемия Лебедева, мы пришли к общему мнению, что лучший валидатор - браузер.
А что будет с сайтами, написанными под более ранние версии браузеров?
- В IE8 сайты, сделанные для IE6 и IE7, при обработке "по стандартам" действительно могут выглядеть по-разному. Если при отображении сайта, сделанного для ранних версий, в IE8 возникают проблемы (как правило, это обусловлено использованием "хаков"), то разработчик может использовать метатеги: при обработке такого сайта браузер включит режим совместимости, например, с IE7.
Я слышал, что ты имеешь непосредственное отношение к стандарту CSS.
- Да, я чуть больше года вхожу в CSS Working Group. В нее же входят разработчики всех существующих браузеров - по несколько человек. Я один из тех, кто представляет IE. Развитие CSS определяется в основном потребностями разработчиков: делением на представление и содержание, оптимизацию кода, создание новых возможностей.
Есть CSS 2.1 и что-то слышно про CSS 3. Расскажи, пожалуйста, об этом подробнее.
- Мы ожидаем, что CSS 2.1 станет стандартом в ближайшие год-полтора. Но для этого еще нужно многое сделать. В частности, нужны тесты на совместимость (их будет около пяти тысяч), через которые должны пройти браузеры. Что касается CSS 3, это набор идей, которые хотелось бы рано или поздно реализовать, но в стандарт 2.1 они уже не попадут.
Ты слышал о желании ряда российских компаний-разработчиков иметь возможности для расстановки переносов в текстах? Когда это будет реализовано в IE?
- Трудно сказать, как скоро это сможет делать IE. Нашим браузером пользуются пятьсот миллионов человек по всему миру - все они используют разные языки. Чтобы поддерживать для всех языков функции переноса, нужно собрать все словари, написать алгоритмы… это весьма сложная задача, которая, не сомневаюсь, будет решена, но со временем.
Будут ли какие-то кардинальные изменения в пользовательском интерфейсе, возможностях для работы с графикой и анимацией?
- В IE8 почти все силы ушли на переписывание ядра браузера, поэтому работу с графикой (SVG) и анимацией мы отложили до более поздних релизов.
Когда выйдет окончательная версия браузера?
- У нас есть амбициозные планы завершить разработку IE гораздо раньше, чем через пять лет (смеется). Сказать более определенно я пока не могу.
Новое в Internet Explorer 8
Activities и WebSlices - одни из самых интересных и в то же время самых часто критикуемых нововведений IE8. Смысл Activities сводится к упрощению поиска информации: карт, переводов, товаров и многого другого. Если выделить в тексте заинтересовавший вас объект (в нашем случае это объектив Lensbaby 3G), то с помощью Activities можно без труда найти его на eBay, узнать стоимость, перейти к подробному описанию или купить, находясь на этой же странице. Если выделить адрес - можно увидеть выбранное место на карте за считанные секунды.
В рассматриваемом случае WebSlices будет хорошим дополнением к Activities.Технологически WebSlices представляют собой xml-области на страницах, которые чаще других обновляются. Браузер, подобно rss-аггрегатору, запоминает их и периодически обновляет. Закладки на области, содержащие WebSlices, находятся в панели закладок IE8. Например, на eBay мы можем добавить товар в панель закладок браузера и без труда отслеживать состояние аукциона. Добавление в список отслеживаемых "слайсов" осуществляется "в один клик" по специальной фиолетовой иконке рядом с товаром.