Particular notes about Russian CAD developers

    One of the co-founders of Nanosoft CJSC, Dmitry Popov , wrote on Facebook a note from the CAD in Russia series ... It’s clear that it’s biased, without claiming historical accuracy. But it seemed to us that it was interesting and quite suitable for Habr’s mood for Friday: someone will learn something new, someone will remember, and someone will understand that it’s not the Gods who burn pots. We share the note in the “as is” mode ...

    From the author

    Some time ago I was asked to write about CAD in Russia for one independent portal, but natural laziness and the fact that this task is of low priority led to the fact that not a single line was written in a few months. What you are reading is not a statement of facts at all, rather it is very subjective, with some fiction, memories and thoughts. Perhaps with a slight prokhanovsky aftertaste.

    Russia is the birthplace of elephants

    Least of all, I would like these notes to be perceived as yet another argument in a pointless and stupid dispute between those who believe that Russia is so harsh that it can bite Europe and gobble up America for lunch and those who believe that nothing good has been created, everything that is being done is being done poorly, and our hands do not grow where all progressive humanity has. This dispute has no more basis than the dispute between “physicists” and “lyricists” in the USSR of the 60s of the last century. And you don’t even know about the existence of such a dispute? That's what I’m talking about.

    Let's start with the “prehistoric times”, when even the parents of the generation of “iPhones-iPads-with-diapers” themselves were in diapers and sliders. Back to the USSR!

    If someone believes that CAD in Russia appeared thanks to Autodesk, which began selling AutoCAD to dark Russian engineers shortly before the collapse of the Soviet Union, then this is not so. Not at all like that. CAD, like sex in the USSR, was, and was very serious. But it was not at all such a CAD system as we know and love it now. It was not interactivity, almost completely. What is left? That's right, calculations, automated calculations. And the main idea was to optimize everything, starting from the efficient use of computing resources and ending with the optimization of the design of the designed product.

    Graduates from technical universities throughout the country developed programs that theoretically should become components of large CAD systems. For example, the author of these lines wrote as a diploma a kind of APT running on MINSK 32 and issuing a control program for a CNC machine. Oh unforgettable chatter of a punch! It was by no means a prestigious metropolitan university, which means CAD was completely engaged in mass activities, ended in the 70s and the USSR did not even begin to fall apart before our eyes, like a leper at the last stage of the disease.

    Not everything contributed to these activities, there were no graphic displays, not quite, but practically. Well, they weren’t mass at that time anywhere, but especially in the USSR. And here we come to the memories of the future. So the USSR was in a state somewhere around the 8th-9th stage of international sanctions, by analogy with the current situation. All computer equipment and software fell under the so-called COCOM ban. That is, these technologies could not be sold legally in the USSR. Legally. If you can’t, but really want to, then there are special services for this. Therefore, all the necessary equipment just in those ministries where, in no case, from the point of view of the United States, should not be - in the Ministry of Medium Engineering (nuclear weapons), the Ministry of Aviation Industry (rockets and aircraft) and further on the list. Of course at a higher price, but "because we all need one victory, one for all, we will not stand the price." Note - sanctions do not really hit those for whom they are intended, but primarily those who are not involved in anything. Civilian casualties, so to speak. But in war, as in war ...

    The receipt of computer equipment from the USA by roundabout routes to the USSR was classified, so it wasn’t in universities that trained engineers for unclassified branches of the national economy and they used to carry punch cards in their portfolios in the old way, they took turns to complete their tasks and were happy when they managed to agree with operators for admission to the night shift. Exactly the same situation was with graduate students. And with scientists ... Want a future like this?

    But everything in life has two sides, yin and yang. A complete yang of CAD position in the USSR gave rise to a completely unique generation of developers, though his further fate was not at all what they wanted. For many, reality surpassed the wildest dreams, but for others ... But this is life, not the Hollywood blockbuster, who said that everything good should be good in the end?

    Let's go back 30 years. Can you imagine that you are debugging a program with iteration in one day? And it was just that. Can you imagine that a program should occupy not even megabytes, but kilobytes? What should the program decide for itself, what choice of possible options to make, and not ask for hints from the engineer, is there no interactivity? Former engineers, and now programmers, understood that without serious mathematical preparation, they simply had nothing to do here. In addition to deepening into discrete mathematics, they tried to constantly expand their mathematical horizons in search of the holy grail to solve everything. Variational calculus, the theory of fuzzy sets, the construction of specific algebras for modeling production processes, the theory of artificial intelligence and much more. This I listed a small fraction of those branches of mathematics that were used in the dissertations on CAD of my friends in the department of one Moscow university. These people were completely unlike graduates with a CAD degree now. They were fundamentally different. Some of them reminded Levsha from Leskov’s book; they could really forge a flea - to simulate the process of metal cutting during turning on Computer Electronics 60 with 64 KB of addressable memory.

    Gradually, graphic displays emulating the Tektronix terminal commands appeared and on the CM4 computer, a seamless Soviet analogue of DEC PDP 11, it became possible to work with interactive graphics. Until the end of the USSR there were only a few years. And at that time the first PCs, the first graphic editors, Unix on the PC for the most advanced appeared, and before we managed to port something of our own, AutoCAD got to us from somewhere.

    What was our reaction to the first AutoCAD for PC? He looked funny. We understood that drawing something once is faster on the culmination, but if standard elements can be used, AutoCAD will probably be useful. But this is not CAD. This is not CAD at all, as it was understood at that time. Where is the real help to the engineer in the calculations, the most time-consuming part of his work? Where is the search for design options? How can this craft help in designing a process? Pretty inconvenient electronic culman. In general, the reaction of dinosaurs to the appearance of the first mammal.
    Один из первых интерфейсов AutoCAD - меню справа, курсор управляется с командной строки...

    But AutoCAD was not hopeless, it had a built-in LISP interpreter. Well, yes, among us, only those who turned to the problems of artificial intelligence were familiar with LISP, but this language is extremely simple syntactically and could be mastered in a couple of days. As they said, this is a language for true adherents of AI, because "those who lack theirs are engaged in artificial intelligence." In the initial implementation by Autodesk, LISP was monstrously slow, nasty. It was clear that nothing serious could be written on it. But later it became exactly the weapon that allowed AutoCAD to trample competitors in the CAD niche for PC. And these weapons of victory were forged for Autodesk by two Russian researchers named Petrov and ... Petrov.

    Petrov Squared and Richard Handyside

    In the fall of 89, the Autodesk assault landing accompanied by a circus of trained partners landed on the territory of the AZLK Conference Center, which was still quite a living factory. Autodesk co-founder Richard Handyside commanded this operation. The line of engineers, students and graduate students of technical universities at this exhibition was longer than to the Lenin Mausoleum. For those who visited there, it was the first acquaintance with interactive CAD, albeit wretched, but really existing. 20 ”displays, plotters and digitizers, and all this does not work with CM4 or EC computer cabinets, but with a gray IBM PC box, which stands on a standard Soviet desk-desk made of chipboard. It turns out that for AutoCAD there are already companies that write programs on LISP, expanding its functionality to the level of parametric design (Cyco Software), is LISP really good for something? For most inexperienced Soviet engineers, this made an impression no less than the sheen of the beads on the Papuan. But some people realized that there are great opportunities in this, that you can start writing programs that will use AutoCAD as an interactive graphic editor, and calculation programs that previously required complex input of arrays of source data will receive them directly from the drawing and the result will also be in this drawing. That's just LISP ... previously required complex input of arrays of source data will receive them directly from the drawing and the result will also be in this drawing. That's just LISP ... previously required complex input of arrays of source data will receive them directly from the drawing and the result will also be in this drawing. That's just LISP ...

    One of these developers was Petr Petrov, who worked in a slightly closed research institute to create end-to-end CAD systems for a specific engineering industry. He had a friend, also by the name of Petrov, by the name of Yuri. And it so happened that before that they had experience in developing compilers. In general, they looked at this LISP in AutoCAD and realized that in order to use it for more or less serious applications, it should be able to convert the source code to a form that is unreadable for everyone (close it), and it is better to compile it into directly executed commands . That is, make a specialized LISP compiler for AutoCAD. The idea is neither better nor worse than most others that are born behind a glass of tea on gatherings of programmers and researchers. And maybe that’s how it remained in the form of a prototype, which would exist in the bowels of a slightly closed research institute, but everything was already changing in the USSR. Parallel JV (joint venture) appeared, which became Autodesk's first partner. Parallel employees translated AutoCAD into Russian and began to implement it.

    It is possible that AutoCAD would not have received such a distribution in Russia if it had not been for Richard Handyside’s talent to gather interesting people around him. He believed that in order to sell a good product it is not enough to demonstrate it, you need to learn how to work with it. And since Autodesk itself had very few resources then, you need to look for partners, the more, the better, you need to expand the circle of those who will help adapt AutoCAD to local conditions. And he began to help local developers display their programs at exhibitions. To do this, Autodesk provided space at its booths to small companies that offered what AutoCAD helped. These were manufacturers of graphics peripherals and AutoCAD complimentary software. In the USSR, these were programs; the “Made in the USSR” hardware was not at all advanced. On one of Richard's visits, he was introduced to a couple of Petrovs. At that time, they did not have a complete solution for compiling and running LISP programs for AutoCAD, but they guaranteed that if they got access to the internal functions of AutoCAD, they could do it in a very limited time. Even if they don’t get access, they can, too, but it will be a little longer.

    And then there was this. Richard discussed this idea with the other founding fathers and the two Petrovs went to Sosalito, California to bring their decision to release. I must say that by this time they had already cracked the AutoCAD code and were able to connect the compiled LISP modules directly, but Richard was not told about this. All that was required was actually debugging rather than revision. In general, they did everything in record time and basically devoted their long business trip to studying the life of the Silicon Valley natives.
    Примерно такие виды изучали Петровы, гуляя по Сосалито

    Perhaps this was the first time that Autodesk paid Russian developers for using their software components in AutoCAD. But the most interesting thing is that this was not Petrov’s last contract to sell Autodesk components for working with AutoLISP. What has been done has provided third-party source code protection. They could now sell their programs written in LISP without fear that the results of their work could be easily copied. The number of AutoCAD enthusiasts began to grow rapidly, and the international community of AutoCAD developers began to emerge. Thanks to the compiler, LISP programs were executed much faster and with their help it became possible to perform quite serious calculations. And two Russian guys by the name of Petrov, each in their own way, overcame the beginning of the era of change. The silent backwater that the USSR was

    Autodesk Petrov did not forget, the contract for technical support was not signed with them at first, so they received orders several times to adapt their code for each next version of AutoCAD. I would not be surprised if it turns out that such a contract is beneficial for Petrov and slightly disadvantageous for Autodesk was made intentionally by Richard Handyside, since at that time no one in the USSR had the slightest idea how much their qualifications actually cost. And so that those three pennies received under the initial contract did not become beads for the Papuans, in exchange for whom a gold bullion was received, Handyside planted a small bomb under the Autodesk financial department, as a result of which the temporary creative team Petrov + Petrov received more and more serious contracts for revision once code sold.

    These are my speculations, but Richard Handyside is one of the few businessmen whom fate has faced me, and which evoked a sense of unconditional respect as a person, so it is possible that everything was just that.

    VisualLISP or Petrov returns

    The amazing thing in this story with Petrov and Autodesk is that it did not end with the advent of the program interface to AutoCAD in C, AutoLISP survived. Even the transition from AutoCAD DOS to Windows and the use of a large number of tools available in Windows, did not turn LISP into a relic of the past. Too many AutoCAD developers and advanced users are hooked on LISP. They learned to circumvent the limitations inherent in AutoLISP implementation, understood the advantages that the interpreted language provides, appreciated its flexibility with an absolute minimum of syntax.

    Forced separation from the key founding father, the architect of the exotic AutoCAD programming interfaces: AutoLISP, Diesel and DCL, John Walker did not help save AutoCAD from all the strange development tools, moreover, they have survived to the present in a semi-lethal state. By the way, it’s good that Walker did not manage to implement an object-oriented environment for developing applications based on the Forth reverse Polish language, instead of C ++, as he was going to. This would be a nightmare for developers.

    And then, in the second half of the 90s, among the main wishes of users was the requirement of a modern development environment for AutoLISP. In vain Autodesk persuaded the developer community to switch to Visual Studio, the sins of the past in the form of thousands of lines written in AutoLISP pulled back. And Microsoft was in no hurry to add LISP to the number of languages ​​supported by Visual Studio. As they sang in a popular song in those days: “I need a hero!” We needed an epic hero who would save everyone - Autodesk from an unusual development for them to create a modern programming and debugging environment for a language inherited from an eccentric Walker and users - developers forced to use tools from the past computer age to write and debug LISP programs. Truly “I need a hero!” And Russia responded to this call.

    The 90s whirlpool tore Petrov’s creative team into components. Peter Petrov decided to try to realize the great American dream and went to the USA to become one of those Russians who create the superiority of American CAD. This time it was like an adult. Basis Software Inc. was opened, which mainly dealt with what do you think? That's right, she developed a modern visual programming environment on LISP - Vital-LISP! By the way, this was not the only project, moreover, it was actually a by-product, but ... They wanted to make the very fulcrum that Archimedes needed in order to turn the Earth over. Unfortunately, the bar was set too high, so we will never know what would have happened with CAD if Basis Software managed to implement its plan.

    However, the first component was created - a visual programming environment on LISP, but the money began to run out, funding for the continuation of the project was nowhere to take. And an old friend turned out to be better than the new two - Autodesk saw Basis Software developing a solution to all of its problems. They bought Vital-LISP, renamed it VisualLISP, and included it in AutoCAD. A huge number of users all over the world felt comfortable again, not only AutoCAD keeps up with the times, but the old AutoLISP dressed up in the latest fashion from Microsoft.

    Yes, Petya Petrov did it again, he again sold his LISP Autodesk. And you say that the shells do not fall twice in the same funnel, or that you cannot enter the same river twice. Everything is possible if Peter Petrov takes it!

    Also popular now: