¬аше окно в мир —јѕ–
 
Ќовости —татьи јвторы —обыти€ ¬акансии Ёнциклопеди€ –екламодател€м
—татьи

18 августа 2014

ѕристрастные заметки о русских разработчиках —јѕ–

ƒмитрий ѕопов

ќт†главного редактора isicad.ru: ƒ.†ѕопов†Ч один из†самых €рких представителей отечественной области инженерного программного обеспечени€. Ќар€ду с†выдающимис€ профессиональными качествами, ƒмитрий отличаетс€ широким общекультурным кругозором и†интересами, неравнодушием к†социальной тематике, а†также €вными литературными способност€ми. —†удовольствием представл€ю читател€м его заметки, впервые опубликованные ↑ейсбуке.

 ак сообщил ƒмитрий, это†Ч первые две части из†планируемой им†серии заметок.

ƒмитрий ѕопов

ќб†авторе (текст автобиографии вз€т с†соответствующей страницы сайта компании Ќанософт)

–одилс€, вырос и†закончил политехнический институт в†промышленном сибирском городе.  ак его назвал в†своем романе мой одноклассник†Ч ёжносибирске.

«атем стал беглым инженером†Ч уехал в†ћоскву и†закончил аспирантуру по†—јѕ– в†ћосстанкине. «ащитилс€ в†срок, еще в†—оветском —оюзе. ”спел поучаствовать в†написании учебника по†проектированию предпри€тий и†госконцепции гибких автоматизированных производств. ¬идимо, успешно, так как сразу после этого –осси€ объ€вила о†независимости. “огда†же стал фанатом объектно-ориентированного подхода в†программировании, писал программы на†Smalltalk, что не†мешало параллельно писать драйверы дл€ AutoCAD на†ассемблере и†систему параметрического проектировани€ на†—и. ќбщалс€ с†одним из†основателей Autodesk –ичардом ’ендисайдом, с†мамой Smalltalk јделью √олдберг и†даже пожал руку последнему первому секретарю компартии „ехословакии.

¬†Consistent Software сначала участвовал в†разработке программных продуктов, а†затем, когда семь€ перестала выносить глубокое погружение отца семейства в†биты и†байты, пришлось сменить амплуа и†стать директором по†маркетингу.

¬†послужном списке также работа в†Xerox и†развитие международной сети дистрибуции Consistent Software, позднее†Ч CSoft.

Ќанософт дл€ мен€†Ч это возможность сделать†то, что давно хотелось, но†по†какой-то причине все врем€ откладывалось на†завтра. Ёто как покататьс€ летом на†горных лыжах (кстати†Ч рекомендую, в†јльпах полно ледников).

ќт†автора

 акое то†врем€ назад мен€ попросили написать про —јѕ– в†–оссии дл€ одного независимого портала, но†природна€ лень и†то, что эта задача с†низким приоритетом, привели к†том, что за†несколько мес€цев не†было написано ни†одной строчки. “о, что вы†читаете, это совсем не†изложение фактов, скорее это очень субъективные, с†некоторой долей вымысла, воспоминани€ и†размышлени€. ¬озможно с†легким прохановским послевкусием.

–осси€†Ч родина слонов

ћеньше всего мне†бы хотелось, чтобы эти заметки воспринимались, как еще один аргумент в†бессмысленном и†глупом споре между теми, кто считает, что –осси€ настолько сурова, что она может закусить ≈вропой, а†на†обед сожрать јмерику и†теми, кто считает, что у†нас ничего хорошего не†создано, все что делаетс€†Ч делаетс€ плохо и†руки у†нас растут не†там, где у†всего прогрессивного человечества. Ётот спор имеет под собой не†больше оснований, чем спор между Ђфизикамиї и†Ђлирикамиї в†———– 60х годов прошлого века. ј†вы†даже не†знаете о†существовании такого спора? ¬от об†этом €†и†говорю.

Ќачнем с†Ђдоисторических временї, когда даже родители поколени€ Ђайфонов-айпадов-с-пеленокї сами были в†пеленках и†ползунках. Back to†the USSR!

≈сли кто-то считает, что —јѕ– в†–оссии по€вилс€ благодар€ Autodesk, котора€ начала продавать AutoCAD темным российским инженерам незадолго до†развала —оветского —оюза, то†это не†так. —овсем не†так. —јѕ–, как и†секс в†———– был, причем был очень серьезно. Ќо†это был совсем не†такой —јѕ–, как мы†его знаем и†любим сейчас. ¬†нем не†было интерактивности, практически совсем. „то остаетс€? ѕравильно, расчеты, автоматизированные расчеты. »†основна€ иде€ была†Ч оптимизации всего, начина€ от†эффективности использовани€ вычислительных ресурсов и†конча€ оптимизацией конструкции проектируемого издели€.

ƒипломники технических ¬”«ов всей страны разрабатывали программы, которые теоритически должны были становитьс€ компонентами больших —јѕ–. Ќапример автор этих строк написал в†качестве диплома некое подобие APT, работающее на†ћ»Ќ—  32†и†и†выдающее управл€ющую программу дл€ станка с†„ѕ”. ќ†незабываемый стрекот перфоратора! Ёто был отнюдь не†престижный столичный ¬”«, а†значит, —јѕ–ом занимались вполне себе массово, заканчивались 70-ые и†———– тогда еще даже не†начинал разваливатьс€ на†глазах, как прокаженный на†последней стадии заболевани€.

ƒиск 3ћЅ

ƒиск объемом 3ћЅ

Ќе†всЄ способствовало этим зан€ти€м, не†было графических дисплеев, не†то†чтобы совсем, но†практически. Ќу†их†массово в†то†врем€ не†было нигде, но†в†———–†Ч особенно. »†тут мы†подходим к†воспоминани€м о†будущем. “ак вот ———– находилс€ в†состо€нии где-то 8-9 этапа международных санкций, по†аналогии с†сегодн€шней ситуацией. ¬с€ вычислительна€ техника и†программное обеспечение попадали под так называемый запрет  ќ ќћ. “о†есть эти технологии не†могли быть проданы легально в†———–. Ћегально. ≈сли нельз€, но†очень хочетс€, то†дл€ этого есть спецслужбы. ѕоэтому вс€ необходима€ техника как раз в†тех министерствах, где ее†ни†в†коем случае, с†точки зрени€ —Ўј, быть не†должно†Ч в†ћинистерстве среднего машиностроени€ (€дерное вооружение), ћинистерстве авиационной промышленности (ракеты и†самолеты) и†далее по†списку, была.  онечно по†более высокой цене, но†Ђведь нам на†всех нужна одна победа, одна на†всех, мы†за†ценой не†постоимї. Ќа†заметку: санкции реально бьют не†по†тем, на†кого они рассчитаны, а†в†первую очередь по†тем, кто ни†к†чему не†причастен. ∆ертвы среди гражданского населени€, так сказать. Ќо†на†войне, как на†войне...

ѕоступление вычислительной техники из†—Ўј окольными пут€ми в†———– было засекречено, поэтому ее†не†было ↬”«ах, готовивших инженеров дл€ несекретных отраслей народного хоз€йства и†они по†старинке таскали колоды перфокарт в†своих портфел€х, занимали очередь дл€ выполнени€ своих задач и†были счастливы, когда удавалось договоритьс€ с†операторами на†допуск в†ночную смену. “очно така€†же ситуаци€ была и†с†аспирантами. »†с†учеными... ’отите в†такое будущее?

Ќо†у†всего в†жизни есть две стороны, инь 膈нь. ѕолна€ €нь положени€ —јѕ– в†———– породила совершенно уникальное поколение разработчиков, правда дальнейша€ его судьба была совсем не†така€, как они хотели. ƒл€ многих действительность превзошла самые смелые мечты, а†дл€ других... Ќо†ведь это жизнь, а†не†голливудский блокбастер, кто сказал, что всем хорошим должно быть в†конце концов хорошо?

¬ернемс€ на†30†лет назад. ¬ы†можете себе представить, что отлаживаете программу с†итерацией в†одни сутки? ј†именно так и†было. ¬ы†можете себе представить, что программа должна занимать даже не†мегабайты, а†килобайты? „то программа должна сама решать, какой выбор из†возможных вариантов делать, а†не†спрашивать подсказки от†инженера, интерактивности то†нет? Ѕывшие инженеры, а†ныне программисты понимали, что без серьезной математической подготовки им†просто нечего здесь делать. ѕомимо углублени€ в†дискретную математику, они старались посто€нно расшир€ть свой математический кругозор в†поисках св€того граал€ дл€ решени€ всего. ¬ариационное исчисление, теори€ нечетких множеств, построение специфических алгебр дл€ моделировани€ производственных процессов, теори€ искусственного интеллекта и†еще много чего. Ёто €†перечислил небольшую долю тех разделов математики, которые использовались в†диссертаци€х по†—јѕ– моих друзей по†кафедре одного московского ¬”«а. Ёти люди были совсем непохожи на†выпускников с†дипломом по†—јѕ– сейчас. ќни были принципиально другими. Ќекоторые из†них напоминали Ћевшу из†книги Ћескова, они реально могли подковать блоху†Ч смоделировать процесс резани€ металла при токарной обработке на†Ё¬ћ Ёлектроника 60†с 64† Ѕайт адресуемой пам€ти.

ѕостепенно по€вились графические дисплеи, эмулирующие команды терминалов Tektronix и†на†Ё¬ћ —ћ4, цельнот€нутом советском аналоге DEC PDP†11, стало возможным работать с†интерактивной графикой:

—ћ4

ƒо†конца ———– оставались считанные годы. »†в†это врем€ по€вились первые†PC, первые графические редакторы, Unix на†PC дл€ особо продвинутых и†не†успели мы†портировать что-то свое, как откуда-то к†нам попал AutoCAD.

 акова была наша реакци€ на†первый AutoCAD дл€ PC? ќн†выгл€дел забавно:

AutoCAD PC  AT

ћы†понимали, что нарисовать что-то один раз быстрее на†кульмане, но†вот если можно использовать стандартные элементы, то†наверное AutoCAD будет полезен. Ќо†это не†—јѕ–. Ёто совсем не†—јѕ–, как его понимали в†то†врем€. √де реальна€ помощь инженеру в†расчетах, наиболее трудоемкой части его работы? √де поиск вариантов конструкции?  ак вообще эта поделка может помочь при проектировании технологического процесса? ƒовольно неудобный электронный кульман. ¬†общем реакци€ динозавров на†по€вление первого млекопитающего.

Ќо†AutoCAD был не†безнадежен, у†него имелс€ встроенный интерпретатор LISP. Ќу†да, среди нас только повернутые на†проблематике искусственного интеллекта были знакомы с†LISP, но†этот €зык исключительно прост синтаксически и†его можно было освоить за†пару дней.  ак говорили, это €зык дл€ истинных адепто↻», потому что Ђискусственным интеллектом занимаютс€†те, кому своего не†хватаетї. ¬†первоначальной реализации от†Autodesk LISP был чудовищно медленным, падучим. Ѕыло €сно, что ничего серьезного на†нем написать невозможно. Ќо†позже он†стал именно тем оружием, которое позволило AutoCAD затоптать конкурентов в†нише —јѕ– дл€ PC. »†это оружие победы выковали дл€ Autodesk два российских научных сотрудника по†фамилии ѕетров и... ѕетров.

ѕетров в†квадрате и†–ичард ’ендисайд

ќсенью 89†года на†территории  онференц-центра ј«Ћ , тогда еще вполне себе живого завода, высадилс€ десант Autodesk в†сопровождении цирка дрессированных партнеров.  омандовал этой операцией один из†основателей Autodesk –ичард ’ендисайд. ќчередь из†инженеров, студентов и†аспирантов технических ¬”«ов на†эту выставку была длиннее, чем к†мавзолею Ћенина. ƒл€ тех, кто там побывал, это было первое знакомство с†интерактивным —јѕ–, пусть убогим, но†реально существующим. ƒисплеи†20Ђ, плоттеры и†дигитайзеры и†все это работает не†со†шкафами —ћ4 или ≈—†Ё¬ћ, а†с†серой коробкой IBM†PC, сто€щей на†стандартном советском столе-парте из†ƒ—ѕ. ќказываетс€ дл€ AutoCAD уже есть компании, которые пишут программы на†LISP, расшир€ющие его функционал до†уровн€ параметрического проектировани€ (Cyco Software), неужели LISP на†что-то годитс€? Ќа†большинство неискушенных советских инженеров это производило впечатление не†меньшее, чем блеск бус на†папуаса. Ќо†некоторые пон€ли, что в†этом есть большие возможности, что можно начинать писать программы, которые будут использовать AutoCAD как интерактивный графический редактор, а†расчетные программы, ранее требовавшие сложного ввода массивов исходных данных получат их†непосредственно из†чертежа и†результат тоже будет на†этом чертеже. ¬от только LISP...

ќдним из†таких разработчиков был ѕетр ѕетров, работавший в†слегка закрытом Ќ»» над созданием сквозной —јѕ– дл€ специфической отрасли машиностроени€. ”†него был при€тель, тоже по†фамилии ѕетров, по†имени†Ч ёрий. »†так получилось, что они до†этого имели опыт в†разработке компил€торов. ¬†общем, посмотрели они на†этот LISP в†AutoCAD и†пон€ли, что дл€ того, чтобы его использовать дл€ более-менее серьезных приложений у†него должна быть возможность преобразовывать исходный код в†нечитаемый дл€ всех вид (закрыть его), а†лучше компилировать в†непосредственно выполн€емые команды. “о†есть сделать специализированный компил€тор LISP дл€ AutoCAD. »де€ не†лучше и†не†хуже большинства других, рождающихс€ за†рюмкой ча€ на†посиделках программистов и†научных сотрудников. »†может быть так она и†осталась в†виде прототипа, который существовал†бы в†недрах слегка закрытого Ќ»», но†все уже мен€лось в†———–. ѕо€вилось†—ѕ (совместное предпри€тие) ѕараллель, которое стало первым партнером Autodesk. —отрудники ѕараллели переводили AutoCAD на†русский €зык и†начали его внедр€ть.

¬озможно, что такого распространени€ AutoCAD в†–оссии не†получил†бы, если†бы не†талант –ичарда ’ендисайда собирать вокруг себ€ интересных людей. ќн†верил, что дл€ того, чтобы хорошо продать товар недостаточно его продемонстрировать, работе с†ним надо научить. ј†так как у†самого Autodesk тогда было совсем мало ресурсов, то†надо искать партнеров, чем больше, тем лучше, надо расшир€ть круг тех, кто поможет приспособить AutoCAD к†местным услови€м. »†он†стал помогать местным разработчикам показывать свои программы на†выставках. ƒл€ этого Autodesk предоставл€л места на†своих стендах небольшим фирмам, которые предлагали†то, что помогало AutoCAD. Ёто были производители графической периферии и†программного обеспечени€, комплиментарного AutoCAD. ¬†———– это были программы, железо Ђ—делано в†———–ї было совсем не†передовым. ¬†один из†приездов –ичарда его познакомили с†парой ѕетровых. ”†них на†тот момент не†было законченного решени€ дл€ компил€ции и†выполнени€ LISP-программ дл€ AutoCAD, но†они гарантировали, если получат доступ к†внутренним функци€м AutoCAD, то†смогут сделать это в†очень ограниченные сроки. ƒаже если они не†получат доступ, то†тоже смогут, но†это будет чуть дольше.

AutoCADr9

ј†дальше было вот что. –ичард обсудил эту идею с†другими отцами-основател€ми и†двое ѕетровых отправились в†—осалито,  алифорни€ доводить свое решение до†релиза. Ќадо сказать, что они уже к†этому времени взломали код AutoCAD и†смогли подключать откомпилированные модули LISP напр€мую, но†об†этом –ичарду не†сказали. ¬се, что требовалось, это на†самом деле была скорее отладка, чем доработка. ¬†общем они сделали все за†рекордный срок и†в†основном посв€тили свою длительную командировку изучению жизни аборигенов  ремниевой долины.

¬озможно это был первый случай, когда Autodesk заплатил российским разработчикам за†использование их†программных компонентов в†AutoCAD. Ќо†самое интересное, что это был не†последний контракт ѕетровых по†продаже Autodesk компонентов дл€ работе с†AutoLISP. “о, что было сделано, обеспечило защиту исходного кода сторонних разработчиков. ќни теперь могли продавать свои программы, написанные на†LISP не†опаса€сь, что результаты их†труда можно будет легко скопировать. „исло энтузиастов AutoCAD начало стремительно расти, стало зарождатьс€ международное сообщество разработчиков AutoCAD. Ѕлагодар€ компил€тору LISP-программы выполн€лись намного быстрее и†с†их†помощью стало возможным совершать вполне серьезные вычислени€. ј†два русских парн€ по†фамилии ѕетров, каждый по†своему преодолевали начало эпохи перемен. “иха€ заводь, которой был ———–, превратилась в†бурл€щий водоворот 90-х, когда преподаватели кафедр, кандидаты технических наук по†—јѕ– торговали на†рынках в†свободные от†посещений дни, открывали кооперативы по†продаже персональных компьютеров, тушенки, сигарет и†до†последнего пытались получить хоть какое-то финансирование своих проектов от†родного государства или зарубежных компаний, но†в†конце-концов просто уезжали из†страны, пополн€€ русскую диаспору в†Parametric Technologies, Microsoft, Apple...

Autodesk ѕетровых не†забывал, контракт на†техническую поддерку с†ними по†началу не†был подписан, поэтому они еще несколько раз получали заказы на†адаптацию своего кода под каждую следующую версию AutoCAD. Ќе†удивлюсь, если окажетс€, что такой выгодный дл€ ѕетровых контракт и†слегка невыгодный†Ч дл€ Autodesk был сделан –ичардом ’ендисайдом намеренно, поскольку в†то†врем€ никто в†———– не†имел ни†малейшего пон€ти€, сколько на†самом деле стоит их†квалификаци€. »†чтобы те†три копейки, полученные по†первоначальному контракту не†стали бусами дл€ папуасов, взамен за†которые был получен золотой слиток, ’ендисайд подложил небольшую бомбу под финансовый департамент Autodesk, в†результате чего временный творческий коллектив ѕетров+ѕетров получал все более серьезные контракты на†доработку однажды проданного кода.

Ёто мои домыслы, но†–ичард ’ендисайд†Ч это один из†немногих бизнесменов, с†кем мен€ сталкивала судьба, и†который вызывал чувство безусловного уважени€ как человек, поэтому возможно, что все было именно так.

VisualLISP, или ѕетров возвращаетс€

”дивительным в†этой истории с†ѕетровым и†Autodesk €вл€етс€†то, что она не†закончилась с†по€влением программного интерфейса к†AutoCAD на†€зыке —, AutoLISP выжил. ƒаже переход AutoCAD с†DOS на†Windows и†использование большого числа инструментов, имеющихс€ в†Windows, не†превратил LISP в†пережиток прошлого. —лишком много разработчиков и†продвинутых пользователей AutoCAD Ђподселиї на†LISP. ќни научились обходить ограничени€, присущие реализации AutoLISP, пон€ли преимущества, которые дает интерпретируемый €зык, оценили его гибкость при абсолютном минимуме синтаксиса.

ѕринудительное расставание с†ключевым отцом-основателем, архитектором экзотических программных интерфейсов AutoCAD: AutoLISP, Diesel и†DCL, ƒжоном ”олкером не†помогло избавить AutoCAD ото всех странных средств разработки, более того они в†полулетаргическом состо€нии дожили и†до†наших дней.  стати, хорошо что ”олкер не†успел внедрить объектно-ориентированную среду дл€ разработки приложений на†основе €зыка с†обратной польской записью Forth, вместо†C++, как он†собиралс€. Ёто стало†бы кошмаром дл€ разработчиков.

ј†тогда, во†второй половине 90х среди основных пожеланий пользователей было требование современной среды разработки дл€ AutoLISP. Ќапрасно Autodesk уговаривал сообщество разработчиков переходить на†Visual Studio, грехи прошлого в†виде тыс€ч строк, написанных на†AutoLISP т€нули назад. ј†Microsoft не†торопилс€ добавл€ть LISP в†число поддерживаемых Visual Studio €зыков.  ак пелось в†попул€рной в†те†времена песенке: ЂI†need a†hero!ї. Ќужен был былинный богатырь, который спасет всех†Ч Autodesk от†несвойственной им†разработки по†созданию современной среды программировани€ и†отладки дл€ €зыка, доставшегос€ им†в†наследство от†эксцентричного ”олкера и†пользователей-разработчиков, вынужденных использовать инструменты из†прошлого компьютерного века дл€ написани€ и†отладки программ на†LISP. ¬оистину ЂI†need a†hero!ї. »†–осси€ откликнулась на†этот зов.

¬одоворот 90х разорвал творческий коллектив ѕетровых на†компоненты. ѕетр ѕетров решил попытатьс€ реализовать великую американскую мечту и†отправилс€ в†—Ўј, чтобы стать еще одним из†тех русских, которые создают превосходство американского —јѕ–. Ќа†этот раз все было по-взрослому. Ѕыла открыта компани€ Basis Software Inc., котора€ занималась в†основном чем вы†думаете? ѕравильно, она разрабатывала современную среду визуального программировани€ на†LISP†Ч Vital-LISP!  †слову это был не†единственный проект, более того, это был на†самом деле побочный результат, но... ќни хотели сделать ту†самую точку опоры, котора€ была нужна јрхимеду, дл€ того чтобы перевернуть «емлю.  †сожалению, планка была поставлена слишком высоко, поэтому мы†уже никогда не†узнаем, что произошло†бы с†—јѕ–, если†бы Basis Software удалось реализовать задуманное.

ќднако первый компонент был создан†Ч визуальна€ среда программировани€ на†LISP, но†деньги стали заканчиватьс€, финансирование дл€ продолжени€ проекта было неоткуда вз€ть. »†старый друг оказалс€ лучше новых двух†Ч Autodesk увидел в†разработке от†Basis Software решение всех своих проблем. ќни купили Vital-LISP, переименовали его в†VisualLISP и†включили в†AutoCAD. ќгромное число пользователей по†всему миру вновь почувствовало себ€ комфортно, не†только AutoCAD идет в†ногу со†временем, но†и†старичок AutoLISP нар€дилс€ по†последней моде от†Microsoft.

ƒа, ѕет€ ѕетров оп€ть сделал это, он†оп€ть продал свой LISP Autodesk. ј†вы†говорите, что снар€ды не†падают два раза в†одну воронку, или что в†одну реку нельз€ два раза войти. ¬се возможно, если за†это возьметс€ ѕетр ѕетров!


„итайте также:


¬акансии:

јктуальное обсуждение

RSS-лента комментариев

-->

ƒавид Ћевин
ƒавид Ћевин
ќт редактора: ќднажды на isicad.ru: искусство легких касаний темы искусственного интеллекта в —јѕ–
ѕроект ЂЌародное —јѕ–-интервьюї

—лучайна€ стать€:

isicad Top 10

—амые попул€рные материалы

   ‘орумы isicad:

isicad-2010 isicad-2008
isicad-2006 isicad-2004

ќ проекте

ѕриглашаем публиковать на сайте isicad.ru новости и пресс-релизы о новых решени€х и продуктах, о проводимых меропри€ти€х и другую информацию. јдрес дл€ корреспонденции - info@isicad.ru

ѕроект isicad нацелен на

  • укрепление контактов между разработчиками, поставщиками и потребител€ми промышленных решений в област€х PLM и ERP...
ѕодробнее

»нформаци€ дл€ рекламодателей


¬се права защищены. © 2004-2019 √руппа компаний «Ћ≈ƒј—»

ѕерепечатка материалов сайта допускаетс€ с согласи€ редакции, ссылка на isicad.ru об€зательна.
¬ы можете обратитьс€ к нам по адресу info@isicad.ru.