Апорт, МЕТА, Рамблер, далее — везде. Интервью с Андреем Коваленко

— Первый вопрос — как точно называется твоя должность и какие вопросы относятся к твоей компетенции?
— Официально — “ведущий программист”. Сфера деятельности — вся лингвистика и вот собственно те самые алгоритмы ранжирования, которые обсуждаются на форуме.
— “ведущий программист” чего?
— На визитке так написано 🙂 Вообще же в Рамблере нет столь жесткой иерархической структуры в сфере разработки. Руководитель же всего подразделения разработки — Дима Хрусталев.
— Как становятся разработчиками поисковиков?
— Ты знаешь, наверное, точно так же, как приходят в любую другую область. Жизнь так складывается. Я же бывший химик, раньше занимался на кафедре ВМС Химфака матметодами в химии полимеров. Потом настали новые времена, ушел в тогда еще кооператив “Агама”.
Иогда у нас работала группа Пархоменко (ныне — ИПС “Артефакт”), и мы сделали первый русский спеллер под Windows. Я там занимался тогда вкручиванием его в разные офисные приложения. А потом по ряду причин Пархоменко и компания ушли в другую компанию, и Агама осталась без лингвистических технологий. Вот тогда я и сделал первый шаг к Рамблеру 🙂 Собственно, тогда я занялся прикладной лингвистикой и сделал первый морфологический анализатор из того самого семейства, которое и по сей день является фактическим стандартом и работает в куче мест. Потом мы отделились от кооператива, организовав фирму Агама. А чуть позже открыли для себя Интернет, где была Альтависта и Рамблер Димы Крюкова.
— Андрей, а мы — это кто? Понятно, что ты точно…
— Агама тогда состояла из Сергея Королева, Жени Киреева (потом — директор Апорта), Жени Бондаренко (он же — Василий Девятый) и меня :-). Вот тогда я и занялся проектированием своего первого поисковика — системы Апорт. Потом по ряду причин я покинул компанию, передав бразды правления Женьке Бондаренко и тогда уже начавшему работать у нас Мише Костину.
— Давай параллельно пройдемся по тогдашним наработкам. Что было в том Апорте, который ты сделал?
— Собственно, Василий, он же — Женя Бондаренко, и сделал Апорт из игрушки поисковой системой, а Миша Костин с Женей Киреевым чуть позже сделали его таким, какой он есть. Масштабируемый и т. д. В том Апорте сразу, изначально, была заложена поддержка многих языков и полноценная лингвистическая платформа для русского. Должен отметить, что Миша с Женей Киреевым не просто развили Апорт, а сделали много нового, чего там изначально не было, при этом не испортив того, что было. Именно мультиязыковость его позволила на движке Апорта образца 98’го года запустить украинскую поисковую систему .
— А что за ряд причин, по которым ты покинул Агаму?
— Ряд причин? Да самые обычные причины 🙂 Я тогда женился, сын скоро должен был родиться, деньги нужны были 🙂
— И ты ушел в “МедиаЛингву” к Ашманову…
— Я вообще-то собирался идти в bit software, ныне abbyy, мы с Давидом Яном тогда договорились встретиться у них на стенде, на WinExpo, в Манеже. Но по пути меня перехватил Игорь и, выяснив, куда я иду, сказал: “Да не ходи ты туда, пойдем ко мне, в МедиаЛингву” 🙂
— а чем соблазнил?
— Предложил ЗРЯплату адекватную, а я — человек на деньги падкий 🙂 Ну и те проекты, которые можно было реализовать там, тоже сыграли не последнюю роль 🙂 редставь себе, тебе дают свободу действий и ждут лишь классного продукта 🙂
— Да, ситуация заманчивая. Потом вы вместе, как я понял, ушли в Рамблер? А те проекты, что нарабатывались в “МедиаЛингве”, как-то использовались в Рамблере?
— Да, в Рамблер мы уходили практически вместе. С интервалом где-то в неделю :-). Проекты как таковые — естественно, нет. Но ведь знание того, как что-то делать — его же не оставишь. Мы тогда официально лицензировали у второго правообладателя — издательства “Русский язык” — право публикации электронных словарей в Сети, о чем потом было аж судебное разбирательство с МедиаЛингвой, однако суд признал лицензирование законным. Речь идет о словарях на Рамблере.
— Да, я помню, даже форум успел эту тему зацепить. А собственные наработки — морфоанализатор, к примеру, ты принес в МедиаЛингву?
— Морфоанализатор — это зарегистрированная программа, лицензию на использование которой я предоставил МедиаЛингве, заключив соответствующий договор.
— Ладно, будем считать, что по хронологии мы добрались до Рамблера и с историей почти закончено…Чем был поиск Рамблера в момент твоего прихода, какие мысли тогда возникли?
— На тот момент это была система, разработанная Димой Крюковым. Система, которая работала, однако по ряду причин заметно отставала и отАпорта, и от набиравшего силы Яndexа.
— Мразу возникли идеи по переделке?
— Нет. О переделках не могло быть и речи. Изначально нас пригласили, чтобы делать новый большой поисковый движок.
— И вы его делали год с лишним, кажется?
— С января-февраля двухтысячного я начал проектировать новую систему. Были семинары, беседы с Олегом Бартуновым, Димой Хрусталевым, с Игорем… Где-то в феврале я начал писать индексатор и поисковое ядро. Где-то к лету 2000 года поисковик уже был оформлен в виде cgi, позволявшей экспериментировать с ранжированием. Тогда в Рамблер был приглашен Влад Шабанов, с которым мы также ранее бок о бок работали в МедиаЛингве. И тут начался второй этап проектирования — проектирования всей той технологической обвязки, которая и делает “искалку” поисковиком. Потому как одно поисковое ядро — это, возможно, хорошая тема для диссертации, однако поисковик состоит еще из целой кучи компонентов.
Короче говоря, где-то в районе нового года все это было выкачено в бой. Причем, что интересно, не на “честных”, координатных индексах, а на конвертированных из старого индекса Рамблера.
— Кстати, Андрей, сейчас крутится все тот же движок, что разрабатывался в 2000 году или выкачен абсолютно новый?
— Да нельзя сказать, что тот же, и нельза сказать, что другой. Движок же эволюционирует… Непрерывно что-то дописывается, что-то переписывается, что-то ломается 🙂
— Да, мы тогда много обсуждали грамотно пропиаренный Ашмановым поиск. А в чем была загвоздка с переиндексацией?
— Ну, во-первых, не было снарядов 🙂
— т.е.?
— Не хватало техники, причем сильно не хватало… Координатный индекс, то есть индекс, где для каждого слова известно не только то, что оно есть в некотором документе, но и то, где и в какой форме оно встречается — он же несколько более пухлый, чем бескоординатный 🙂
— Мне Игорь рассказывал как раз в неделю садился админ и начинал по кускам обновлять индекс, который целиком не помещался нигде…
— Всякое было… И такое тоже… Игорь несколько утрировал, но проблемы с местом тоже были. Приходилось идти на разные ухищрения. Собственно, и сейчас мы регулярно делаем что-то, что позволяет, например, сократить размеры индекса на несколько процентов без потери информации.
— Но все же выкатили… Андрей, а из каких соображений делался новый поиск — сделать, чтоб не хуже, или реализовывая какие-то свои представления о совершенстве?
— Понимаешь, Рамблер — это первая поисковая машина Рунета. Это, наверное, даже символ. И у людей он даже сейчас, будучи мощным порталом (не люблю это слово), ассоциируется именно с поиском. И делался он, конечно, именно из представлений о том, как оно должно быть.
— А отдельные части? Т.е., чисто технически, определяли ли, что надо приложить какие-то вещи, существующие в других поисках, или была поставлена цель — сделать лучший (это естественно, никто не ставит обратную цель) и шли к ней своими методами?
Я почему спрашиваю — наложение рейтинга не делал никто, так это была единственная такая придумка или нет?
— С подмешиванием top100 изначально-то очень смешно получилось 🙂 Индекс тогда, как мы уже обсудили, обновлялся очень редко, и Игорь с Николем Хариным, также работавшим тогда в Рамблере, предложили подмешивать в выдачу несколько сайтов из top100, чтобы создавать иллюзию “свежести” выдачи :-). А уж повышение релевантности выдачи на первой странице за счет этого подмешивания было, наверное, вторично :-). Потом уже сознательно подвергали это подмешивание тюнингу. Да, впрочем, и сейчас, бывает, рукояточки подкручиваем 🙂
— Ну, эти рукояточки, точнее, результат подкручивания мы видим периодически. Я полгода наблюдал ссылку на результаты поиска Апорта, причем без параметров запроса…
— Кстати, первое подмешивание было реализовано не на новом движке, а еще на том, который сделал Дима Крюков.
— Так идея была создать иллюзию свежести?
— Изначально — да. Саша Михайлов, тоже из нашей команды, собранной еще в МедиаЛингве, кажется, это реализовывал. Ну и некоторую накачку релевантности тоже. Сам знаешь, когда “качаешься” — все средства хороши, кроме, пожалуй, стероидов :-).
— А когда Рамблер заработал на новом индексе?
— А вот где-то в начале 2001 года. Точно не помню, но был соответствующий пресс-релиз, тогда еще Миша Ханов президентом компании был.
— Погоди, так ты ж сказал, что новый движок начал работать на конвертированном индексе? Я говорю о новом индексе, а не движке…
— Там интервал несколько месяцев был. Новый движок на конвертированном индексе запустили около Нового года, а через несколько месяцев уже поехали на координатном индексе. Кстати, совсем недавно мы удаляли рудименты кода, оставшиеся от бескоординатного индекса, того самого, конвертированного 🙂
— Давай пропустим весь период тюнинга и подкруток. Влад на форуме говорил о выкатке осенью нового движка. Он уже выкачен?
— Я уже сказал чуть раньше, что движок эволюционирует, добавляются новые алгоритмы, делается учет новых факторов, влияющих на ранжирование. Периодически сумма этих изменений, прошедшая тестирование, выкатывается “в бой”. Скажем, нынешняя система уже сильно отличается от той, что была год назад. Да и это невооруженным глазом заметно.
— Слушай, а почему вы предпочли PageRank’у (в любом виде) примесь из топ100?
— Вопрос поставлен некорректно. Это же абсолютно разные вещи, ортогональные. Использование примеси из top100, равно как и учет посещаемости при построении выдачи, вовсе не исключает использования алгоритмов типа PageRank, и наоборот.
— Это я понимаю. Но в тексте, опубликованном в “Вебпланете”, прямо противопоставляются PageRank и ваш “коэффициент популярности”
— Давай тогда начнем с того, что PageRank — это алгоритм “раздачи” авторитетности, алгоритм описанный, который сейчас уже никем, в том числе, наверное, и Google, в чистом виде не используется. И Яndex тоже использует не PageRank, взвешенный индекс цитирования 🙂 Противопоставления как такового там нет, в этом тексте. Да, действительно, PageRank есть рейтинг предпочтений web-мастеров. С этим ведь не поспоришь 🙂 А Сеть существует все-таки не для них, а для тех пользователей, которые ищут, и — в особенности — для тех, кто кликает на баннеры 🙂 Таким образом, если бы у нас был счетчик, например, top100, на каждой странице Рунета, мы бы имели реальную меру популярности страниц Рунета.
— Совершенно верно. Кстати, Яндекс как раз сейчас, кажется, в связи с этим колбасит немного. Но показатель “посещаемость”, тем более так, как он определяется Рамблером, еще легче накручивается, чем ссылки. Особенно в условиях полной анархии в топ100.
— Встречный вопрос. Ты пробовал накручивать счетчик top100? :-). Мне все-таки кажется, что “накрутить” его так, чтобы не вылететь из рейтинга — задача несколько сложнее, чем скриптом на бесплатных хостингах насоздавать сайтов, ссылающихся на твою страничку :-).
— Неа. Я на релевантности описания в топ100 вылезаю в поиске. И довольно неплохо.
— Ну так это же классно 🙂 Ресурс-то у тебя — профильный, и корректный :-)(это комплимент). А еще мне очень нравится Ресурс Удава :-).
— Я понял.:) Но, с другой стороны, скриптом же отсеять ссылки с бесплатного хостинга легче, чем отсеивать сайты, участвующие в системах обмена визитами, которые при этом очищают referrer :).
— Так здесь же во весь рост встает задача отделения овнов от козлищ. На бесплатных хостингах вполне приличные люди встречаются, и всех одним махом не учитывать как-то жестоко.
— Тоже логично. Но давай спорить на форуме. А здесь еще куча вопросов ждет 🙂
— Давай.
— Как выглядит обычный рабочий день ведущего программиста Рамблера? В чем повседневные обязанности заключаются?
— Ну как… Чайку попить, девушкам поулыбаться :-). А если серьезно — повседневные обязанности сложно перечислить. Много их и разные они. Разрабатываем способы автоматического отлова спама, накручиваем парсер html, тюнингуем ранжирование, придумываем и обсуждаем, как бы еще насолить нашим пользователям :-). Посетить searchengines.ru, опять же, равно как и любимую конференцию на авто.ру :-).
— А у вас это, как и в Яндексе — увидели какой-нибудь кошмар в выдаче и вручную подправляете, или сразу садитесь писать код, который бы это выправлял?
— Ну если экстренно надо кого-то выкинуть — так для этого банлисты есть 🙂 Вручную в банлист его 🙂 А алгоритмы — они на автоматический отлов какого-либо распространенного явления делаются. Хотя и без “программ-однодневок” не обходится, когда программка пишется для исправления какого-нибудь глюка.
— Кстати, а как в Рамблере относятся к участию разработчиков в дискуссиях с оптимизаторами?
— Рамблер — вообще в этом плане достаточно демократичная компания. Кроме того, находясь в здравом уме и трезвой памяти, вряд ли кто-нибудь из разработчиков станет сообщать лишнюю информацию оптимизаторам, потому как это создаст, мягко говоря, много дополнительной работы потом, когда оптимизаторы впитают и начнут эту информацию использовать. С другой стороны, какой-либо дельный совет и владельцам сайта на пользу, и нам не во вред. Отчего же не помочь людям?
— А ты ходишь форум отвечать на вопросы или подсматривать тайные технологии оптимизаторов?
— Прежде всего отвечать на вопросы. Ведь тайные технологии оптимизаторов — они делятся на две группы. Те, которые работают, и те, которые очень похожи на настоящие, но только не работают :-). Вторые волнуют нас не очень сильно, а первые, если срабатывают — так мы это сразу же и так видим. Ну и исправляем помаленьку :-). А потом, ну где еще в Сети можно пообщаться с умными, образованными людьми 🙂
— Оставим поисковики в покое. Как начинается обычный день Андрея Коваленко?
— Ну, для начала я тяжело просыпаюсь 🙂 Потом идет пробежка в заповедник с собакой (я живу за городом), где-то минут на сорок. Потом — понятно, завтрак, скажем, омлет или яичница из четырех-пяти яиц, ну грамм 200 — 300 творожной массы 🙂 Дальше — обязательная утренняя сигарета в состоянии покоя. В это время прогревается салон машины 🙂 Дальше — полуторачасовой путь по пробкам с Ярославского шоссе на Автозаводскую, на работу.
— Про работу мы уже говорили — чайку попить, поулыбаться… А после работы?
— После работы? Три дня в неделю — тренировки, в субботу — баня в компании с батей и с сыном, на неделе в оставшиеся дни — девушки и походы в места, где можно вкусно поесть :-). Последнее время нравится кухня в Байк-Центре на Нижних Мневниках.
— А чем тренируешься?
— Циничный “кач”, тягаю железо :-). Его еще “бодибилдингом” называют, но мне слово “кач” больше нравится. Тренируюсь под руководством Леонида Остапенко.
— Куришь?
— Вот сейчас как раз гашу окурок :-)… и выпить тоже люблю 🙂
— А я сейчас возьму новую… А что любишь выпить?
— Знаешь, у меня, наверное, гены бушуют. Сейчас любимый напиток — украинская горiлка, медовая с перцем, от Nemiroff 🙂 Пивко в бане потягиваем 🙂 А вот с коньяками, виски, джином и т. д. у меня как-то не сложилось. Массандровские портвейны люблю 🙂 Впрочем, против “Русского Стандарта” и “Флагмана” тоже ничего не имею 🙂
— Какая музыка у тебя сейчас играет?
— Сию секунду — никакая, но вообще я “русский жанр” люблю. В машине — “Радио Шансон”, “Радио Тройка”, “Русское 2”.
— “Русский жанр” — это что? Песни на русском языке или что-то специфическое?
— Ну, во-первых, на русском, а во-вторых — со смыслом. Скажем, сейчас вот купил очередной альбом Анатолия Полотно и группы “Лоцмен”. До этого с большим удовольствием слушал Валеру Коротина. Помнишь — “спрячь за высоким забором девчонку…”.
— Вот неа… :). Во-первых, у меня очень замшелые вкусы, что-то новое долго в них пробивается. А новое — это все, что появилось раньше 91-го года…
— Эта песня появилась несколько раньше 🙂 Сильно раньше, чем фильм “неуловимые мстители”, где Яшка-цыганок ее пел 🙂 Так что я тоже “замшелый”, как и ты 🙂
— А! примерно понятно. Не, я менее… Если не считать коллекцию классики. Твое самое типичное состояние?
— Весело улыбающийся :-). И в прекрасном расположении духа :-). А вечером еще и слегка попахивающий спиртным :-))).
— Лежишь, сидишь, танцуешь?
— Сейчас вот сижу 🙂 Неудобно, знаешь ли, за компом, да стоя…
— Вопросы закончились…
— Ну и отлично 🙂 Пойду, чего-нибудь в себя закину, и спать 🙂

Основатель Searchengines.ru. С 2005 по 2014 год работал генеральным директором компании "Яндекс.Украина". Основатель и директор крупнейшего коворкинга Одессы — "Терминал 42". Ведет блог, участвует в подкастах. Больше ничего не умеет.