Хочешь изменить софт, которым пользуешься, к лучшему? Стань его разработчиком! Знакомьтесь, это Никита Батьянов, наш инженер-аналитик, а до недавнего времени активный пользователь КОМПАС-3D и других САПР. Пару лет назад Никита записывал «косяки» КОМПАС-3D в блокнот, забрасывал идеями и предложениями службу техподдержки АСКОН, а потом понял, что реализовывать эти идеи самому куда интереснее. Вот его история.
Знакомство с КОМПАСом
После учебы в питерском «Военмехе» я пошел работать в РКК «Энергия», одно из ведущих российских предприятий космической промышленности, прочнистом, то есть инженером по прочностным расчетам. Там я хоть и занимался моделированием, в основном в 3D, но к конструкторской деятельности имел косвенное отношение. В основном мы делали модели в системе Pro/Engineer, немного использовали САПР SolidWorks. Через полтора года я перешел на должность конструктора на предприятие в структуре Росатома. Мы с коллегами по КБ занимались проектированием детекторов ионизирующих излучений. В составе сложного оборудования эти детекторы работают в реакторной части при высоких температурах и передают высокочастотные сигналы в условиях радиации. Это ответственные конструкции, с особыми требованиями по температурной и коррозионной стойкости, гамма-устойчивости и вакуумным характеристикам. А в качестве САПР у нас использовался КОМПАС.
В одной лодке с разработчиком софта
У меня всегда было ощущение, что инструмент, в котором я работаю (а для конструктора это САПР), в чем-то зависит и от меня, что мы в одной лодке с разработчиком. И наша деятельность, в общем-то, похожа. Как и разработчик, конструктор знает, как расставляются приоритеты, что приходится чем-то жертвовать, что переделка вещей, которые немного не устраивают, может навредить и привести к потере времени. Пока твое изделие не попало к потребителям, ты уверен, что учел все сценарии работы с ним. Но некоторые нюансы всплывают только в реальной эксплуатационной ситуации. Так же я относился и к программным продуктам — если речь шла не об ошибке/вылете, а о «юзабилити», то я понимал, что нужно оценивать сценарий своей работы в системе и объяснять, почему я действую именно так, а не иначе, в общем, довести до разработчиков свою проблему.
Схожее впечатление у меня тогда сложилось о компании АСКОН: что здесь работают такие же люди, и что если я изложу им свою точку зрения через службу техподдержки, то наверняка в следующей версии КОМПАСа что-нибудь улучшится. У меня был блокнот, в который я в рабочее время записывал поток мыслей, а в пятницу вечером, когда большую работу начинать было нерационально, брал этот блокнот и начинал закидывать техподдержку уже более понятно оформленными отчетами. Это у вас плохо, неудобно, это надо делать по-другому. Так и расписывал по пунктам. Из техподдержки мне отвечали, часто пытались предложить обходные решения, и тогда я бесился — «Да я знаю, что так можно сделать, но это же неудобно!».
Вылазка в Коломну
Потом было бета-тестирование 14-й версии КОМПАС-3D, лучших бета-тестеров компания АСКОН награждала. Меня охватил азарт — я же столько мог написать, почему не написал?! Поэтому за бета-тестирование версии 15 я принялся с таким рвением, что попал в число лучших бета-тестеров. Некоторое время спустя меня за проявленную активность пригласили в Коломну, в Центр разработки КОМПАС-3D – попробовать альфа-версию КОМПАС-3D v17. Разработчики уже анонсировали ее как революционную — ожидалась полная смена интерфейса. Было жутко интересно посмотреть!
Мы с другими «избранными» пользователями, которых пригласили первыми увидеть новинки, приехали в Коломну. Нам показали совсем ранний прототип и предложили поработать с ним буквально по сценарию. Все были в восторге — куча вопросов, постоянные обсуждения. За каждым участником тестирования был закреплен аналитик КОМПАСа. Меня курировал Виталий Булгаков, ведущий инженер-аналитик КОМПАС-3D — такой компанейский, отзывчивый, мы много говорили о том, что не так, и что «должно быть». Надеюсь, он тоже узнал что-то новое о подходах, которые бывают у пользователей, не знакомых со стандартными методиками проектирования. Помню я удивлялся, как иногда приходится действовать вычурным, незапланированным образом. В итоге в 17-й версии были учтены некоторые вещи, которые казались мне странными в предыдущей версии программы.
Новый этап
За ужином после тестирования я громко возмущался: «Как вы можете так делать? В системе есть вещи, про которые я каждый раз думаю: тот, кто это придумал, сам когда-нибудь пробовал с этим работать?!». На следующий день руководитель подразделения АСКОН, которое занимается системами проектирования, Сергей Евсиков спросил: «В Коломну не хочешь перебраться?». Я еще пообщался с разработкой, выполнил несколько тестовых заданий, предложение выглядело интересно! Я тогда жил и работал в Москве и подумал: надоело ездить 1,5 часа до работы, прижатым в метро. Но было любопытно узнать, как работается в компании, прежде чем соглашаться на переезд.
Я вспомнил, что в свое время читал на сайте АСКОН статью о том, с чего начинали и о чем мечтают программисты компании — интервью с разработчиками на разные неформальные темы. Отметил для себя, что с одним из программистов у меня совпадали интересы: к разработке компьютерных игр, музыке (post-punk и dark wave). Ещё тогда я нашел его в соцсетях, хотел предложить сделать небольшую игру, но до дела не дошло. Я поднял его контакты, расспросил, узнал, что работа интересная, отношение к персоналу отличное. Это добавило уверенности. Так я очутился здесь, в Коломне.
В течение моего испытательного срока работа над 17-й версией была в самом разгаре. Новый КОМПАС-3D выглядел уже более законченным, чем нам показывали на альфа-тестировании.
Меня закрепили за определенным кругом задач. Первая «боевая» — источники освещения 3D-модели. Это была моя инициатива, в свое время я сам писал в техподдержку замечания по этому поводу. Мне предложили рассмотреть варианты, как можно расположить источники освещения модели. По результатам были выбраны несколько новых схем освещения, которые и вошли в версию 17. Надеюсь, это только первый шаг на пути к улучшению нашей отрисовки в целом.
Освещение одним источником из 16-й версии (слева) и освещение тремя источниками в 17-й версии
И новый КОМПАС
КОМПАС-3D V16 казался мне архаичным, я начинал с Pro/Engineer (его я не сильно любил) и SolidWorks. Мне казалось, что все подходы, приемы работы в том КОМПАСе очень разрозненные. В одной операции Ctrl+Z работает, не завершая из процесса, а в другой — сначала нужно выйти, потом сработает отмена, потом войти обратно, чтобы продолжить. Такие вещи раздражали. В 17-й версии почти всё привели к единому ключу, единому стилю работы. Я стал замечать, что некоторые вещи в новом КОМПАСе мне кажутся настолько удобными и очевидными, что их отсутствие в других программах мне — как пользователю, а не как разработчику — непривычно.
После разработки освещения я попал в команду Quick, которая решает ключевые задачи по ускорению всего, что делается в КОМПАСе. Там я стал аналитиком по отрисовке. Я занимался уровнями детализации трехмерной модели (LoD) — как этот механизм должен работать, до какого уровня можно упростить отображение модели и в какой момент заменить таким представлением модель, чтобы пользователю это было незаметно. А еще работал над изменением настройки точности модели. Сейчас я готовлю предустановленный набор настроек точности (пресетов): каждый пресет (preset) представляет собой сочетание максимального линейного отклонения и максимального углового. Хочу найти такие пресеты, чтобы у пользователя в большей части случаев не было необходимости изменять настройки.
Электрогитара
Быть разработчиком, оставаясь конструктором
Параллельно меня подключили к команде UI (интерфейса). После выхода 17-й версии накопилась гора информации, которую нужно было аналитически проработать. Было принято решение, что команде интерфейса требуется еще один аналитик. Вместе с дизайнером интерфейсов мы уже выпустили несколько доработок в экспресс-обновлениях и готовим следующую, 18-ую версию КОМПАС-3D. Дизайнеру предоставляю сценарии использования команд с точки зрения конструктора. На основании этого и рождаются те или иные интерфейсные решения — как выполнить эти сценарии с минимальным количеством действий и, следовательно, минимальным количеством элементов управления. При этом я продолжаю смотреть на КОМПАС глазами его пользователя-конструктора и обкатывать решения на интересных проектах. Всегда стараюсь моделировать не «на кубиках», когда решения выглядят безошибочно и красиво, а делать что-то сложное, иногда и после работы, если очень увлекаюсь. Результатом одной из таких проработок стала электрогитара (картинка выше, похожа на гитару, как у меня дома, но чуть другая).
Никита Батьянов, инженер-аналитик
Автор: kompas_3d