Старинный голландский город Лейден знаменит не только одноименным сыром и банкой (первым в мире электрическим конденсатором), но и тем, что в нем родился Рембрант Харменс ван Рейн, величайший в истории живописного портрета мастер светотени. Именно в Лейдене жили 10 лет в эмиграции английские пилигримы, прежде чем отплыть к берегам Нового света на корабле «Mayflower», чтобы основать там первое английское поселение Плимут. Еще одна достопримечательность Лейдена (наряду с неизбежными в этой части Европы каналами и ветряными мельницами) — старейший в Голландии университет, в котором учились известные каждому математику-программисту Рене Декарт и Эдсгер Дейкстра. (Впрочем, даже тот, кто их не знает, успешно пользуется Декартовой системой координат для моделирования геометрических объектов и алгоритмом Дейкстры для поиска кратчайшего пути в графе.) С 26 по 29 апреля в Лейдене состоялась международная конференция Альянса по Открытому Проектированию (англ. Open Design Alliance, или для краткости — ODA), собравшая в отеле Holiday Inn около 100 участников из самых разных стран мира — Австралии, Бельгии, Великобритании, Германии, Голландии, Канады, Китая, России, Словакии, США, Франции, Японии. Что заставило их всех заплатить за регистрационный взнос по 350 долларов и отправиться на три дня в Голландию? Чтобы понять это, придется вкратце пересказать историю Альянса.
Началась она ровно тридцать лет назад в 1979 г., когда Майком Ридлом (Mike Riddle) была создана программа Interact, ставшая первой в мире системой автоматизации черчения для микрокомпьютеров (все другие существовавшие в ту пору САПР, включая CADDS3, над которой Майк работал в компании Computervision, выполнялись только на мейнфреймах и миникомпьютерах). Архитектура системы Interact и формат ее файлов DWG (от англ. DraWinG — чертеж) легли в основу программы AutoCAD, выпущенной в 1982 г. небольшим калифорнийским старт-апом Autodesk. Грамотно выбранная платформа (ею стала мало кому известная в то время IBM PC) предопределила дальнейший успех AutoCAD и Autodesk. Когда другие разработчики САПР перешли на PC (это произошло в 1990-х гг. с появлением рабочих станций Windows), AutoCAD уже стала «стандартной» программой черчения. Этот стандарт закрепился и в бинарном формате файлов DWG — ведь чем больше инженеров, архитекторов, строителей применяли AutoCAD (в 2008 г. Autodesk сообщила о 9 млн. своих клиентов, большинство из которых используют AutoCAD), тем большее количество DWG-файлов они создавали, и очень быстро для всех других производителей встал вопрос о возможности загрузки и записи файлов в этом формате в своих системах.
Важную роль в развитии дальнейших событий вокруг формата DWG сыграла сама компания Autodesk, которая скрывала его бинарную структуру от своих конкурентов, не позволяя им пользоваться собственными библиотеками для чтения DWG-файлов. Логичным следствием такой позиции (надо признать, нередкой на рынке ПО) стали многочисленные попытки разных компаний заняться реверс-инжинирингом этого формата. Autodesk прилагала специальные усилия для затруднения деятельности этих разработчиков — стала шифровать данные в DWG-файлах, часто менять их бинарный формат. Такие действия Autodesk привели к тому, что в 1998 г. компании-разработчики независимых средств чтения/записи DWG решили объединить свои усилия, создав некоммерческую организацию OpenDWG Alliance. Цель Альянса была сформулирована достаточно просто — с выходом каждой новой версии AutoCAD как можно скорее предоставить своим членам доступ к библиотекам, которые способны читать и писать соответствующие DWG-файлы. Члены Альянса, которые хотели использовать эти библиотеки в своих коммерческих продуктах, просто платили Альянсу определенную (весьма незначительную) сумму каждый год (членский взнос). Эти деньги тратились на разработку новых версий библиотек и административные расходы. Вскоре Альянс решил поддерживать библиотеки для чтения DGN-файлов (формат данных системы MicroStation компании Bentley Systems), в связи с чем изменил свое имя на Open Design Alliance. Сами библиотеки тоже расширялись функционально. В настоящее время это уже не просто набор функций для доступа к DWG/DGN-данным, но полноценная платформа для создания собственного приложения CAD — с возможностями визуализации и развитым API, включающим средства создания пользовательских объектов, что открывает путь для интеграции с компонентами третьих поставщиков. Кроме технологической эволюции библиотек было введено несколько уровней членства в Альянсе — от привилегированных членов (называемых founding members, члены-основатели) с правом участия в принятии решений и доступом к исходному коду библиотек Альянса (включая их модификацию в своих интересах) до ассоциированных членов, которые могли бесплатно использовать библиотеки для разработки при условии нераспространения производных продуктов в коммерческих целях. Такая политика быстро привела Альянс к популярности — в лучшие годы он насчитывал до 5000 организаций-членов (в настоящее время в альянсе числятся около 2000 организаций — это стало следствием в том числе и введения символической платы — 100 долларов в год — за ассоциированное членство). Среди членов-основателей альянса в настоящее время числятся такие уважаемые компании как Adobe, Bentley Systems, McNeel & Associates, Nemetschek, Siemens PLM Software, SolidWorks. Российское представительноство в Альянсе также весьма внушительно: CSoft, Нанософт, АСКОН, Топ Системы.
Все изменилось в 2005 г., когда Альянс столкнулся с внутренними проблемами, вызванными растратой 600 тыс. долларов, собранных с членских взносов. Это привело к отставке тогдашнего президента альянса Эвана Яреса (Evan Yares) и выборам нового — Арнольда ван дер Вайде (Arnold van der Weide), до этого занимавшего пост президента IntelliCAD Technology Consortium — некоммерческого альянса разработчиков приложений, функционально аналогичных AutoCAD, на основе библиотек ODA. Новый президент взялся энергично реформировать структуру альянса, введя должности office manager (ответственного за юридическую часть), financial manager (финансовые расчеты), CTO (технологическое развитие) и предложив прозрачную структуру управления. Едва Альянс оправился от внутренних потрясений, как последовал новый удар — на этот раз со стороны Autodesk, которая подала в суд на ODA за неправомерное использование слов «Autodesk» и «AutoCAD» в генерируемых библиотеками Альянса файлах и (спустя почти четверть века!) решила зарегистрировать DWG как свою торговую марку. В результате Альянсу пришлось отказаться от поддержки TrustedDWG (нехитрой метки, позволяющей Autodesk отличить «собственные» DWG-файлы от «чужих») и потратить основную часть членских взносов на адвокатов. К счастью, судебные тяжбы позади, и в настоящее время развитию Альянса ничто не угрожает.
Собственно, об этой предыстории и напомнил собравшимся на первую за 11 лет существования Альянса конференцию его членов президент ODA Арнольд ван дер Вайде. В результате реформ соотношение расходов на разработку к расходам на административную поддержку удалось довести с 2.2 до 8.5. В 2008 годовой доход альянса вырос на 11% (впервые за 10 лет), и рост этот продолжился в первом квартале 2009 г., несмотря на мировой финансовый кризис. В заключение своего выступления Арнольд ван дер Вайде анонсировал обширные планы по разработке — от расширения поддерживаемых платформ (очередная цель — Android) и поддержки новых форматов (прежде всего — PDF) до активного сотрудничества с поставщиками компонент и улучшения ситуации с тестированием. Президент подчеркнул новое позиционирование Альянса как поставщика платформы для разработки приложений технической графики. Была провозглашена и цель конференции в Лейдене — улучшение коммуникаций между членами альянса, его менеджментом и разработчиками, а также поставщиками технологических компонент, интегрированных с библиотеками ODA. Альянс видит свое будущее в партнерстве, а не в оппозиции к Autodesk.
Программа конференции оказалась достаточно насыщенной — два полных дня докладов и еще полдня тренингов. Все доклады можно поделить на три части. К первой отнесем доклады разработчиков ODA под руководством CTO Нила Петерсона (Neil Peterson). Надо отметить, что на конференцию прибыли все сотрудники ODA в количестве 21 человека, большая часть которых проживает в Санкт-Петербурге. Вторая группа (весьма немногочисленная) — доклады членов альянса о своих продуктах. И, наконец, третья (напротив, весьма представительная часть докладов) — сообщения разработчиков сторонних технологических компонент об их интеграции с библиотеками ODA.
Начнем с докладов разработчиков ODA. Директор Альянса по технологиям Нил Петерсон сделал два доклада — в первом он описал историю разработки библиотек и последние достижения в этой области, а во втором анонсировал планы на будущее. На последних хочется остановиться подробнее. Наиболее актуальная задача на текущий момент — поддержка DWG-файлов, созданных в AutoCAD 2010 — версии, поставки которой начались всего месяц назад. Самое существенное нововведение, которое предстоит поддержать — это геометрические и размерные ограничения. Задача осложняется тем, что в версии 2010 Autodesk в очередной раз изменила бинарный формат DWG-файлов, но для разработчиков Альянса это не является непреодолимым препятствием — на конференции всем присутствующим была продемонстрирована возможность чтения простых чертежей, созданных в AutoCAD 2010. Альянс планирует выпустить новые версии своих библиотек с поддержкой этого формата уже в этом году в два этапа. Другие актуальные задачи — выпуск .NET-версии библиотеки DWGdirect, поддержка новой платформы Android и интеграция с продуктами третьих компаний — ACIS/Parasolid в области BRep-моделирования, HOOPS/Redsdk в области рендеринга в реальном времени и DCM/LGS в области решения геометрических и размерных ограничений.
Другие доклады разработчиков ODA были техническими — поясняющими отдельные аспекты функциональности различных библиотек, разрабатываемых Альянсом. В этом ряду стоят доклады «Библиотеки DWGdirect и DGNdirect» Сергея Слезкина и Михаила Кузинеца, «ADTdirect и фасетный моделер ODA» Вадима Косарева, «Поддержка твердых тел» Алексея Румянцева. Доклады разработчиков сопровождались иллюстрациями кода и демонстрацией работы приложений. Сергей Слезкин подробно остановился на средствах исправления ошибок в DWG-файлах (в этом аспекте альянсу удалось превзойти Autodesk). Вадим Косарев рассказал об архитектурных объектах, которые поддерживаются в расширении ADTdirect (стены, крыши, двери, окна, лестницы и проч.), а также представил библиотеку BRep-моделирования с поддержкой всех основных операций твердотельного моделирования.
Забегая вперед, скажу, что в третий день конференции разработчики проводили тренинги по программированию для представителей компаний-членов альянса. Пользуясь случаем, автор отчета подробно разузнал о средствах консольного ввода и возможностях по отслеживанию системных событий, связанных с редактированием встроенных объектов. Подобные консультации из первых рук бесценны, и автор выражает признательность разработчикам ODA за потраченное на разъяснение время.Доклады членов альянса о своих продуктах на основе DWGdirect/DGNdirect были немногочисленными, но очень содержательными и интересными. Директор по технологии немецкой компании Gräbert Роберт Грэберт (Robert Graebert) выступил с докладом «Мобильный DWG». Основанная в 1994 г. компания выпускает продукты под маркой PowerCAD (а скоро выведет на рынок свой новый бренд - ARES) и кроме обычных десктопных платформ Windows XP/Vista поддерживает и мобильные устройства на основе Windows Mobile 6. Каждый присутствующий на конференции получил компакт-диск с оценочными версиями PowerCAD для разных платформ (впрочем, эти же версии любой желающий может загрузить с вебсайта www.graebert.com), и автор настоящего обзора лично протестировал версию PowerCAD CE на своем телефоне Samsung i900 WiTu. Подтверждаю, это действительно полноценный аналог AutoCAD с возможностями черчения и трехмерной визуализации, полностью совместимый с форматом DWG. Специалисты Gräbert видят серьезное применение САПР в пока незанятой нише мобильных устройств, имея в виду сценарии такого типа: архитектор приходит на объект с лазерным измерителем, измеряет все требуемые размеры и тут же создает чертеж на своем PDA/телефоне, после чего работает над ним в офисе уже на персональном компьютере, благодаря полной унификации версий PowerCAD для разных платформ. Все это и было вживую продемонстрировано аудитории (те из читателей, кто имел личный опыт общения с дизайнерами интерьера и изготовителями мебели по индивидуальным проектам, наверняка оценят идею Gräbert — когда все измерения делаются сначала на бумаге, а лишь потом в офисе переносятся на компьютер, ошибки неизбежны).