Технология “Объектная поверхность”
О разработке этой фирмы - сервере приложений Baikonur - когда-то много писала компьютерная пресса. После кризиса наступила довольно длинная пауза. И вот сегодня мы снова беседуем о новом технологическом прорыве фирмы Epsylon Technologies с ее генеральным директором Александром Сергеевым.
Александр Сергеев
PC Week: Насколько я понимаю, сервер приложений - это программа, которая на сервере предоставляет доступ к какому-то приложению, так?
Александр Сергеев: Да, это многопользовательская программа, которая умеет запускать на сервере приложения и позволяет удаленному пользователю взаимодействовать с ними. Мы сделали сервер приложений, библиотеку разработчика, методику разработки; при помощи этой технологии удаленный пользователь может взаимодействовать с приложением, находящимся под управлением нашего сервера приложений. Кроме того, мы создали технологию скоростной разработки таких приложений (Rapid Application Development, RAD). Самая первая технология, Baikonur, которую мы еще в 1996 г. выпустили (это был второй в мире Web Application Server, после WebSpeed от Progress Software), представляла собой HTML-сервер приложений, позволяющий удаленному пользователю работать c приложением через браузер. Сейчас этим никого не удивишь, а тогда это был последний писк моды - все поражались, что так быстро можно разрабатывать HTML-приложения. Еще одна наша технология - аналогичная разработка для сотовых телефонов. То есть это WAP’овский сервер и WML-компоненты. А третья - это Taxxi. Все три технологии - HTML, WML и Taxxi - идут в комплекте поставки одного продукта Baikonur SuperServer.
PC Week: А что такое технология Taxxi?
А. С.: Она создавалась вот для чего. В случае с HTML клиентским терминалом является браузер, в случае с XML - сотовый телефон, в случае с Taxxi - обычный десктоп. То есть серверное приложение, сделанное по технологии Taxxi, выглядит и ведет себя так же, как локальное приложение, хотя вся работа осуществляется удаленно, через модем или Internet. Самое главное достижение - в том, что нет никакой разницы между работой даже на плохих российских линиях с приложением из Владивостока или же из Москвы. Примеры таких систем уже есть.
PC Week: Если это типичная корпоративная система, то для нее браузер будет не нужен?
А. С.: Корпоративные пользователи привыкли работать с системой не через браузер, это слишком медленно и неудобно, они хотят работать с тем Windows-интерфейсом, к которому уже привыкли. Интернет дает компании возможность организовать региональные офисы, так как сейчас при ее росте корпоративная структура становится большой и распределенной. С другой стороны, браузеры, на которых можно работать с приложением через Интернет, не дают той реактивности, того, к чему привык пользователь в локальной сети. Нет многих возможностей, например, чтобы при перемещении мышки в какое-то поле выплывала подсказка. На самом деле это можно делать и для обычных браузеров, но сложно, муторно, и все это работает не очень адекватно.
PC Week: Российские компании используют эту технологию?
А. С.: Сейчас очень многие ее используют. Например, “Интел-Групп” в корпоративной системе “Тектон”. Эту технологию применяют “Никлас”, “Атлант-Информ”, недавно появились у нас корпоративные разработчики из Гонконга. Для них пришлось вставлять поддержку китайского языка. Поскольку для него применяется двухбайтовая кодировка, то были определенные сложности. На самом деле системы с удаленным доступом, сохраняющие пользовательский интерфейс, известны. Это РС Anywhere, Remote Anywhere, Centrics. Но у них принципиально другой подход. Они работают с экранной поверхностью, состоящей из пикселов. А мы работаем с экранной поверхностью, состоящей из объектов. Это уже объектная технология.
Идея состоит в том, что в нашей технологии экран представляет собой поверхность, состоящую из объектов, между которыми курсируют XML-сообщения. Задача заключается в следующем: при начале соединения на клиенте нужно создать точную копию серверной объектной поверхности, а потом всего лишь синхронизировать между ними состояние объектов. То есть неважно, происходят события на клиенте или на сервере, в любом случае после события сервер и клиент немедленно синхронизируют свои состояния.
PC Week: Что значит быстрая разработка таких приложений?
А. С.: Это означает, что если мы, например, возьмем Delphi, возьмем стандартные компоненты и начнем разрабатывать, скажем, клиент-серверные приложения, то через некоторое время создадим систему. Другими словами, мы бросаем компоненты на форму и получается интерфейс пользователя. Так вот, способ разработки удаленного приложения точно такой же, как клиент-серверного. Те же самые компоненты, стандартные борландовские компоненты, нет разницы.
PC Week: То есть, по существу, вы поставляете некие схожие с Borland библиотеки?
А. С.: Нет, мы поставляем специальную библиотеку, которая расширяет Borland, поэтому используются стандартные компоненты Borland и разницы в проектировании вообще никакой. Отсюда еще одно интересное следствие. Это означает, что существующие приложения (например, так было в случае системы “Тектон”) нужно только взять и+ как в известном фильме, “брюки превращаются в элегантные шорты”.
PC Week: Это касается только тех, кто писал на Delphi; а с майкрософтовскими языками что делать?
А. С.: Вообще это большая проблема, скорее исторического характера. Мы делали эту технологию и “вылизывали” ее в тот момент, когда здесь был кризис, и мы вынуждены были сосредоточиться на той технологии, которую нам было проще реализовать. Поэтому мы взяли борландовские средства разработки, а поскольку у нас исторически сложилось сотрудничество с Borland, мы партнеры, то нам было проще взять Delphi. Что касается Microsoft, то, когда мы участвовали на выставке в Лос-Анджелесе, хотя это была борландовская конференция, нас очень много спрашивали, можем ли мы разработать аналогичную технологию для Visual Basic. Мы сделали демонстрационную версию технологии, показали, что это возможно, но между первой демонстрацией и промышленным использованием проходит, как правило, очень много времени. На самом деле эта технология возможна и для Microsoft.
PC Week: То есть для разработки нужен конкретный заказ?
А. С.: Во всяком случае, мы готовы. Мы работаем над этим и, наверное, в этом направлении будем двигаться.
PC Week: Про конференцию хотелось бы поговорить немножко подробней. Что показалось интересным?
А. С.: Многое. Были очень детальные разговоры с разработчиками, которые туда приехали. Обсуждалось много достаточно любопытных проектов. Например, проект корпоративной системы на 700-800 пользователей, которая уже написана на Delphi, но сама архитектура этой системы с большим трудом работает при таком количестве пользователей. А корпорации растут, возникают региональные, европейские и азиатские отделения, и они хотят работать в единой системе, поэтому интерес к нашей технологии был большим. Более того, не одни мы в этом направлении движемся. Сейчас есть несколько конкурентов, но оказалось, что у нас самое сильное из представленных решений. Интересный факт: приходит заказчик и просто прыгает от радости, видя что что-то такое существует, что можно взять и потестировать, и быстро перевести уже имеющийся проект под новую Taxxi-технологию.
Один из очень перспективных заказчиков делает вот что. Он находится в центре страны, в центре США, имеет больше тысячи пользователей, которым поставляются различные финансовые, учетные системы, т. е. типичная система для корпоративной автоматизации. Все его заказчики - очень крупные компании, где количество работающих превышает 500 человек. Соответственно систему используют одновременно в среднем 500-700 пользователей. Все эти клиенты имеют представительства в Европе, в Азии, и они хотят просто работать в рамках единой системы. Мы показали, насколько быстро можно перевести уже существующий многоформенный, сложный проект на технологию Taxxi и сразу после этого получить систему, работающую через Интернет. Наш заказчик был весьма впечатлен. И дальше началось довольно тесное сотрудничество, такое же, как с российскими разработчиками. Конечно, в работе не обходится без подводных камней. Я уже говорил, что самое главное в технологии - это синхронизация между двумя идентичными наборами объектов с серверной и клиентской стороны. Наша библиотека поддерживает особенности этих объектов. То есть мы работаем с предопределенным набором объектов, в случае с Delphi - это стандартный дельфийский набор, в случае с Visual Basic - стандартный набор Visual Basic. И для Delphi, и для Visual Basic имеется рынок третьих фирм, которые поддерживают специальные компоненты. Еще два месяца назад у нас не было поддержки для них, но как раз на выставке мы продемонстрировали решение поддержки разработчиков компонентов.
PC Week: Вы как-то выбирали из этих третьих фирм ?
А. С.: Нет, у нас общее решение для поддержки любых компонентов третьих фирм. Для разработчиков компонентов это представляет огромный рынок, потому что вместо того, чтобы писать на Delphi только клиент-серверные системы, а в общем, Интернет-системы не очень получалось делать на Delphi, теперь открывается возможность участия в огромных проектах и лицензирования своих компонентов разработчикам, которые занимаются такими проектами.
PC Week: Для этого они должны у вас покупать лицензии?
А. С.: На самом деле данная технология совсем свежая, мы только-только начали это делать, в общем, лицензии не нужны. Просто есть методика, как это делать, и мы готовы сотрудничать с такими разработчиками, не требуя от них покупки нашего продукта. Для России это особенно интересно, потому что на этом рынке компонентов третьих фирм Россия занимает достойное место и ими занимается очень много маленьких региональных компаний. Например, в Нижнем Новгороде, Новосибирске, Калуге, Питере, Москве есть люди, которые делают свой специфический набор компонентов и продают их большей частью не в России. Появление такой технологии означает открытие нового очень емкого рынка для таких разработчиков. В связи с этим мы начинаем сейчас сотрудничество с лидерами рынка компонентов. Есть несколько явных лидеров - компании Woll2Wall, Developer Express и др. Предварительные переговоры прошли, вероятно, так или иначе их компоненты будут поддержаны, потому что спрос на это есть. В одной канзасской компании нам говорили, что 90% разработчиков в Америке, работающих на Delphi, используют компоненты третьих фирм. На нашем стенде можно было наблюдать два типа поведения посетителей. Одни говорили, что это слишком хорошо, чтобы быть правдой, а если это все-таки правда, то отлично. Это как бы недоверчивая часть. Другие, более доверчивые, удивлялись, почему о нас не слышно, почему про нас никто не знает и почему мы не такие богатые.
PC Week: А почему вы не такие уж богатые, какие проблемы?
А. С.: Проблемы были в том, что как только мы начали выходить на зарубежный рынок в 1998 г., грянул российский кризис и отрезал нам будущее. Мы просто упали на колени и некоторое время пытались вытащить себя за волосы. К счастью, это удалось.
PC Week: Спасибо за беседу.