Жизненный цикл программиста
Всемирную известность Донскому принесла победа программы "Каисса" в первом чемпионате мира среди шахматных программ в 1974 году. В России Донской был известен также как разработчик системы управления базами данных ИНЕС, автор и соавтор многих иных крупномасштабных IT-проектов.
Донской был лауреатом всех профессиональных опросов "Top-100 Российского компьютерного бизнеса". Он возглавлял компанию ДИСКо, работающую на рынке интернет-технологий с 1996 года.
Михаил Донской закончил механико-математический факультет МГУ, он имел степень кандидата физико-математических наук по специальности "теоретическая кибернетика".
Как пишет Infox.ru, Донской считался своего рода культовой фигурой среди специалистов IT, его работы, связанные с разработкой компьютерных алгоритмов, оказали большое влияние на развитие отечественной кибернетики и информатики.
А рассуждения гражданина просто смешны. Застрял человек в своем времени, не смог перестроиться к новым реалиям IT.
А рассуждения гражданина просто смешны.какие именно из них? Некоторые выглядят вполне здраво.
Я бы не сказал что они смешны. И не сказал бы, что он не смог перестроиться.
Но кое-где он действительно промахивается, например, говоря, что умирают последние люди в стране, способные написать ОС.
вот это вот утверждение в наше время неверно. а порой и убийственно для проекта.
Одним из важнейших принципов программирования для меня является необходимость создания собственного инструментария для любого проекта, начиная с проектов средней величины. Это мы красиво называли созданием специализированного (для проекта) языка программирования, включавшего специфичные структуры и классы данных и базовые процедуры. Крупные проекты требуют параллельной разработки специфических (для проекта) отладочных средств. Все это не исключает, а даже предполагает создание абстрактных библиотек, а также инструментальных и отладочных средств, используемых во всех проектах. В сущности, только последнее и делает ремесло программиста или бизнес фирмы по разработке программ, прибыльным делом.
"создания собственного инструментария для любого проекта"...
столько велосипедов насмотрел за свою жизнь, что плакать хочецо.
а реалии современной жизни нам говорят как раз обратное: мы не сталько богаты для "создания собственного инструментария для любого проекта".
есть куча достойного софта, причем свободно распространяемого.
в нетривиальных проектах (читай крупных) возникают нетривиальные вещи, криво решающиеся известным набором инструментов
в этот момент ты и начинаешь писать свой "велосипед", который велосипедом перестанет являться, как только позволит решить задачу правильно
А то так, знаете ли, можно много всего полезного в велосипеды записать. Например git, с которым так носится Линус, яркий пример такого "велосипеда".
Сейчас профессия осталась, но, как и профессия шофера, она не требует творчества и особых знаний, а только определенных навыков. Программирование из искусства становится ремесломВ обеих профессиях есть и было место как искусству, так и ремеслу. Просто на начальном этапе доминирует первое, по мере развития набирает силу второе. Но первое при этом не исчезает. Оно меняется, но, к сожалению, автор этого не заметил.
вобщем, может грубо будет, но походу дядька много "Я"кает непонятно к чему и занимается самолюбованием.
его заслуг как алгоритмиста никто не отменяет, но как разработчик коммерческого ПО он чо-то какую то херь городит.
мне, например, все эти завывания насчет микрасофта уже много говорят о нем, как об IT спеце.
ещё умилило то, что в юникс системах мол не развит графический интерфейс
он бы на компиз вглянул для начала. виста с своим аэро на его фоне - унылое гавно.
ещё мол он мега архитектор и всё такое. а почему про паттерны проектирования ни слова? чему он учит приходящих к нему "молодых ребят"?
кароче от этой статьи сквозит лишь тем, что чел осознал что он устарел и не соответствует времени. но он вывод не тот
сделал. надо было сказать, что мол "да, признаю, я не в теме. время другое. всё изменилось." а он пытается принизить молодых. мол их не так и не тому видите ли учат.
PS GIT форева. тока до него дорасти надо. имхо следующий шаг СКВ. но тоже некоторая культура нужна.
тока до него дорости надо.до точки зрения дядьки, видимо, тоже дорасти надо
вы просто зря пытаетесь все там описанное как абсолютное воспринимать
если воспринимать как просто чей-то опыт, по-моему вполне нормально
В обеих профессиях есть и было место как искусству, так и ремеслу. Просто на начальном этапе доминирует первое, по мере развития набирает силу второе. Но первое при этом не исчезает. Оно меняется, но, к сожалению, автор этого не заметил.Первое не исчезает, но на фоне второго становится незаметным =)
Он собственно и написал, что его поколению на ходу приходилось писать алгоритмы, которые потом становились базовыми, и теперь мы все их гуглим.
Понятно, что и сейчас такие вещи/алгоритмы пишутся и придумываются (мап-редьюсы какие-нибудь и прочие глупости но их процент на общем фоне мизерен. А значит и романтизм из профессии ушел.
до точки зрения дядьки, видимо, тоже дорасти надода я понимаю вдоль и поперек.
у меня тоже есть опыт общения со старперами, которые все пытаются свой программисткий авторитет подтвердить периодически.
тока почему то несколько минут ищут файл на своем рабочем столе в так ими любимом видоуз.
всё на самом деле проще. на западе есть такое понятие как IT-индустрия. и ей уже много десятков лет. со всеми вытекающими.
в этой отрасли крутятся очень серьезные деньги. люди эти деньги счиатают и умеют зарабатывать.
а где серьезные деньги - там и уровень спецов соответвующий.
а ни в Союзе не в прости господи "Современной" России такой индустрии как не было так и нет.
как нет индустрии микроэлектроники и ещё много чего.
тока почему то несколько минут ищут файл на своем рабочем столе в так ими любимом видоуз.А ты пишешь безграмотно. И что?
А значит и романтизм из профессии ушел.Романтизм ушел для тех, кто не хочет его искать. Несмотря на то, что в работе программиста сейчас много рутины (а разве ее было меньше? Битые перфокарты, перегорающие лампы, набивание килобайтов кода и т. п. время от времени возникают и интересные задачи, и красивые решения, которые не найдешь в гугле, - чем не романтика? А если человек таких задач не замечает, то, может, он и как программист не очень?
Романтическая профессия - это какие-нибудь пожарники сейчас, или космонавты. У них тоже полно рутины, но образ у народонаселения вполне себе романтический. Голубоглазые высокие блондины, спасающие людей из огня, итп.
А если ты скажешь кому-нибудь из народонаселения "программист", то он представит себе небритого волосатого дядю срадающего аутизмом с пивным пузом и пустой коробкой из-под пиццы. Романтично? =)
а ни в Союзе не в прости господи "Современной" России такой индустрии как не было так и нет.возможно просто ты ей не нужен? =)
Поэтому, когда я говорил о романтике, я имел в виду свое отношение к своей профессии. Донской, мне кажется, говорил об этом же. Хотя, конечно, вопрос спорный, о чем он там говорил...
Он собственно и написал, что его поколению на ходу приходилось писать алгоритмы, которые потом становились базовыми, и теперь мы все их гуглим.Ну и чего? Я бы даже сказал, что концентрация на алгоритмах (тех, что тогда создавались, т.е. околоматематических) - это признак примитивности и неразвитости отрасли. Знать их надо, безусловно, но особой роли в современном мире они уже не играют (зашиты давно в библиотеки). Гораздо важнее уметь создавать сложные распределенные програмные системы, а это задача уже не математическая, а инженерная.
Ну и чего? Я бы даже сказал, что концентрация на алгоритмах (тех, что тогда создавались, т.е. околоматематических) - это признак примитивности и неразвитости отрасли.Так громко "признаком" я бы на твоем месте не ругался, а вообще согласен, так обычно и бывает, что как только куда-то набегает толпа народу, то весь романтизм моментально улетучивается.
Гораздо важнее уметь создавать сложные распределенные програмные системы, а это задача уже не математическая, а инженерная.Гораздо важнее? С чего бы это?
И почему задача исключительно инженерная? Хотя, конечно, если считать, что тебе всегда, даже в случае сложных распределенных систем, дают готовую либу на тарелочке, то твоя задача действительно всегда вырождается в инженерную, или как я их называю, "обезьянью".
И почему задача исключительно инженерная?потому что, в первую очередь, текущие задачи решаются сборкой из готовых кусочков.
и в первую очередь требуются программисты-"сборщики", чем программисты-"математики".
мне, например, все эти завывания насчет микрасофта уже много говорят о нем, как об IT спеце.если ПО микрософта такой плохое, то почему тогда он не бедный?
чел все правильно говорит, разработка на микрософте и дальнейшие сопровождение обычно дешевле, чем на *nix-ах.
тут как раз все минусы микрософта: монолитность, система как черный ящик и т.д. - идут как плюсы, т.к. разработке и экспллуатации необходимо разобрать и поддерживать лишь малое кол-во вариантов.
потому что, в первую очередь, текущие задачи решаются сборкой из готовых кусочков.То, что программистов-"сборщиков" надо больше, это понятно.
и в первую очередь требуются программисты-"сборщики", чем программисты-"математики".
Но не будешь же ты утверждать, что они важнее? Или что программисты-"математики" не нужны совсем?
Гораздо важнее? С чего бы это?Важнее для общества, поскольку ему очень нужны простые алгоритмически, но сложные технически программы.
Инженерная в том смысле, что нужно сделать конкретную вещь в конкретный срок. Не надо никаких вдохновений, изощренных алгоритмов и т.п. - надо чтобы, например, система управления поездами заработала через 2 года. И нужны люди, которые в такой срок ее спроектируют и напишут.
Но не будешь же ты утверждать, что они важнее? Или что программисты-"математики" не нужны совсем?сейчас программисты-математики нужны уж в очень редких случаях
на данный момент: это что-нибудь типа разбора графических и видео изображений, и соответственно, само мат. моделирование
антивирусы, распознавание текста, ОС-ы, коммерческий учет, поиск и т.д. - вся математика уже есть, и здесь для прорыва важнее собрать правильный комплекс, чем придумывая какую-то новую математику.
сейчас программисты-математики нужны уж в очень редких случаяхНу-ну.
Просто чел в СССР занимался разработкой научного софта, а в России — коммерческого.
А обобщил кривовато.
В 70-х на Коболе тож немало писали.
сейчас программисты-математики нужны уж в очень редких случаяхТы как то так от души провел грань между программистом-"сборщиком" и программистом-"математиком".
на данный момент: это что-нибудь типа разбора графических и видео изображений, и соответственно, само мат. моделирование
Да и саму применимость математики приуменьшил. Например машграф - одно сплошное поле для математики.
На мой взгляд все сложнее. Например, написание любой либы не является работой исключительно в стиле "собрать готовые кирпичики". Надо подумать об назначении, обобщить его, придумать интерфейс, итд итп.
Это уже не обезьянья работа, и встречается в повседневной жизни программистов-"сборщиков" утт и там, и я бы не назвал ее инженерной.
антивирусы, распознавание текста, ОС-ы, коммерческий учет, поиск и т.д. - вся математика уже естьЭвристические алгоритмы поиска виров, построение любых нейронных сетей далеко не тривиальная задача, в ОСях полно мест которые надо втискивать в определенные временные рамки, в которых как следствие всегда идет борьба за алгоритм, поиск с его гиперкубами.
Математики там полно, и куда расти тоже полно.
и здесь для прорыва важнее собрать правильный комплекс, чем придумывая какую-то новую математику.саксесса, а не прорыва =)
для прорыва, может статься, математика будет как раз важнее.
Не надо никаких вдохновений, изощренных алгоритмов и т.п. - надо чтобы, например, система управления поездами заработала через 2 года. И нужны люди, которые в такой срок ее спроектируют и напишут.Их не надо именно потому, что до тебя и за тебя обо всем этом кто-то подумал, обобщил, построил, и дал тебе в руки готовый инструмент.
Теперь, на данном этапе, разумеется, осталось только тупо научиться им пользоваться.
И теперь давай вернемся к первоначальному - к важности. И подумаем, что же важнее в целом, в перспективе? Мы, кажется, говорим об этом.
И, мне кажется, гораздо важнее, чтобы "отрасль" не погрязла целиком в том инженерно-прикладном программировании, о важности которого говоришь ты. Гораздо важнее, чтобы мы не растеряли людей, способных построить ОС. Способных придумать мап-редьюс. Автор статьи говорит о том же, только вот он считает, что мы уже многое порастеряли.
Например машграф - одно сплошное поле для математикиэто в какой момент?
когда в 3dmax-е рисуешь модельку, или когда через directx/opengl эту модельку показываешь?
Гораздо важнее, чтобы мы не растеряли людей, способных построить ОС.Я вот способен Так что можешь не переживать, еще лет 40-50 не растеряем.
наверное когда свой движок пишешь
наверное когда свой движок пишешьи много ты знаешь программистов, которые пишут коммерчески успешный движок?
Сообщение удалил
и любого готов обучить
обучите меня. а то понятия не имею как это все делается. а самому с нуля войти в это дело мне кажется сложным
Зашел разговор о важности. Я и говорю, что считаю чрезвычайно важным наличие этого слоя, двигающего ИТ вперед.
Найн и Даркгрей пишут, что стадо обезьян, двигающее его вширь, важнее.
Если уж на то пошло, то я не считаю, что все такие люди перемерли. Более того, я не вижу никаких предпосылок к тому, что они перемрут.
Найн и Даркгрей пишут, что стадо обезьян, двигающее его вширь, важнее.для общества, конечно, важнее.
сравни как много сделал для общества какой-нибудь леонардо да винчи, или тысяча инженеров хорошистов текущих.
ps
в тоже время я с тобой полностью согласен, что такие люди есть и будут, и они тоже важны, также как важны какие-нибудь физики-струнщики.
но только это все завтрашняя польза для общества, а сегодняшную пользу куют то самое "стадо обезьян" как ты их назвал.
А то так, знаете ли, можно много всего полезного в велосипеды записать. Например git, с которым так носится Линус, яркий пример такого "велосипеда".Причём он имел в виду не только внешние по отношению к проекту средства, но и внутренние - наборы библиотек, интерфейсов и тому подобное. Например в том же ядре линукса при сборке есть куча дебажных опций, которые включают работу именно таких околопроектных средств, и без этого никак. Сами же по себе они не несут никакой полезной нагрузки, только инфраструктурную.
Но кое-где он действительно промахивается, например, говоря, что умирают последние люди в стране, способные написать ОС.Если они живы, то почему загнулся проект отечественной ОС, превратившись в цирк?
мне кажется что под этим скорее понимают людей, которые могут эффективно осуществить проект допустим уровня 1000-10000 человеколет и более.Гораздо важнее, чтобы мы не растеряли людей, способных построить ОСвот этого не понимаю категорически.
все примеры, которые, ты привел - это проекты уровня 1-10 человеколет, может 100 человеколет, но не больше.
psНу да. Я просто хотел сказать, что они в первую очередь важны, ибо без них не будет базиса, на котором стадо сможеть ковать.
в тоже время я с тобой полностью согласен, что такие люди есть и будут, и они тоже важны, также как важны какие-нибудь физики-струнщики.
но только это все завтрашняя польза для общества, а сегодняшную пользу куют то самое "стадо обезьян" как ты их назвал.
В общем ладно, замяли.
ЗЫ И не обижайтесь за "стадо обезьян". Это такое метастадо =)
Думаю, каждому прогеру приходится бывать обезьяной. Лично я занимаюсь обезьянством не менее половины своего рабочего времени, а то и гораздо больше.
Если они живы, то почему загнулся проект отечественной ОС, превратившись в цирк?Видимо, там не было правильных людей.
Или, что более вероятно, эта ОС никому не нужна настолько, чтобы довести ее до релиза.
ОС-ы, коммерческий учет, поиск и т.д. - вся математика уже естьну например в плане обеспечения безопасности этого дела математика есть не вся, в результате чего (хотя и не только этого) утечка персональных данных сейчас - обычное дело
Если они живы, то почему загнулся проект отечественной ОС, превратившись в цирк?Деньги распилены на начальных этапах, ещё не доходя до собственно разработки.
ну например в плане обеспечения безопасности этого дела математика есть не вся, в результате чего (хотя и не только этого) утечка персональных данных сейчас - обычное делоНо вымерли всё-таки ещё не все - как минимум сотня человек в Microsoft Research сидит.
1000-10000 человеколет
минус миллион градусов по цельсию. Ага
Таким же запугиванием числами занимаются наши современные любители псевдонаук по типу (тьфу, произносить страшно) уфологии, астрологии и физики тонкого мира.
И, кстати, у тебя там отличие на порядок, сразу видно, что ты хорошо себе представляешь эти числа.
И, кстати, у тебя там отличие на порядок, сразу видно, что ты хорошо себе представляешь эти числа.это количество ресурсов(причем скорее нижняя граница оценки которое вбухано в текущие ОС: windows и *nix
1000 человеколет - это кстати не так уж и много:
10 лет по 100 человек.
10000 человеколет - это 20 лет на 500 человек.
или у тебя какие-то другие цифры о том, сколько ресурсов ушло на производство этих ОС?
И, кстати, у тебя там отличие на порядок, сразу видно, что ты хорошо себе представляешь эти числа.отличие на порядок - это нормально для оценки, потому что обычно всегда непонятно что именно стоит включать в оценку.
например, в данном случае, стоит или не стоит включать, например, время бетатестеров - сходу не понятно.
а время локализаторов? и т.д.
время бетатестеровпод никсами половина пользователей сидит на нестабильных архитектурах.
под никсами половина пользователей сидит на нестабильных архитектурах.так значит они бетатестерами и являются. разве нет?
так значит они бетатестерами и являются. разве нет?именно на это я и намекал. Я хотел тем самым показать, что бетатестеровских человеко-часов получается слишком много.
ну например в плане обеспечения безопасности этого дела математика есть не всяа какой математики не хватает?
В 70-х на Коболе тож немало писали.Хм в Википедии есть ссылка на американсую книжку где утверждается, что до 2002-го года больше всего кода было написано именно на Коболе. Этот код и сейчас работает и поддерживается.
Да ABAP/4, являющийся наследником Кобола, является распространённым языком. (Спросите у SAPёров)
Деньги распилены на начальных этапах, ещё не доходя до собственно разработки.Деньги пилят везде и не только у нас в стране. Почему нефтяникам можно пилить бабло, а производителям ОС нет ?
В 2006-2007 у них был проект на тему прикрутить к этому ядру на Коболе современные интерфейсы (веб-интерфейс, SWIFTNet но о замене самого ядра даже и речи не шло.
Такая же ситуация в большинстве развитых стран...
Дык там же кода больше чем во всей винде.
Оставить комментарий
psihodog
Жизненный цикл программистаСтатья известного российского системного программиста, зав. лабораторией Института системного анализа РАН, члена Российской академии интернета, автора шахматной программы «КАИССА» (первого чемпиона мира среди шахматных программ президента компьютерной фирмы ДИСКо, лауреата всех профессиональных опросов «Top-100 Российского компьютерного бизнеса», Михаила Донского.
У каждой профессии есть свой романтический период и есть период, когда она превращается в рутинную. Быть шофером в начале прошлого века было трудно и почетно. Сегодня автомобиль может водить любой желающий, а в большинстве районов США жизнь без автомобиля практически невозможна. Так профессия шофера прошла полный цикл от интеллектуальной и романтической до бытовой и повседневной за какие-то 60 лет.
Цикл профессии авиапилота тоже близится к окончанию и займет те же 60 лет.
Но время ускоряется, и новые профессии имеют гораздо более короткий цикл. Особенно это верно по отношению к профессиям, связанным с информационными технологиями.
Так получилось, что время моей жизни практически совпало с жизненным циклом моей профессии. Я – программист. Сами компьютеры появились в 40-х годах (и не надо здесь вспоминать ерунду про дочку Байрона то есть в то же десятилетие, когда я родился.
В этой статье я хочу, вспоминая свою профессиональную жизнь, напомнить, как менялась профессия программиста.
Когда я школьником учился программировать на М-20, в СССР программистами были известные математики, на ходу выдумывавшие то, чему сейчас учат в школе.
В группе программистов Института Теоретической и Экспериментальной Физики, где для вычислительных работ ядерной физики стояла эта самая М-20, придумали массивы, списки, необходимость использования подпрограмм и многое другое. Один из моих учителей, Г.М. Адельсон-Вельский придумал хэш память. Подробности можно найти в книге другого моего учителя – А.С. Кронрода «Беседы о программировании». Еще до Дийкстры основные принципы структурного программирования были изложены А.Л. Брудно в книге «Программирование в содержательных обозначениях». Там же была создана первая шахматная программа.
А ведь в то время программировали в кодах, память под программы и переменные распределяли своими руками, и известны случаи, когда на одно и то же место грузились разные подпрограммы, и всегда работала только последняя. Всерьез была распространена так называемая «польская игра», когда надо было уложить заданный алгоритм в минимальное число ячеек памяти.
В итоге тогда шахматная программа ИТЭФ, предшественница «Каиссы», умещалась в памяти М-20, а именно в 4096 ячейках, каждая из которых имела 48 разрядов (теперь это называют битами). Где-то рядом уже существовал Алгол-60, но им «настоящие» программисты не пользовались, поскольку техники отладки практически не было. Чуть позже большую популярность получила статья «Почему настоящие программисты не пишут на Фортране».
Мои студенческие годы пришлись на целый ряд советских машин – Раздан-3 , Минск 1, 2, 22, 32, Урал-14, все из которых имели пульт, за которым сидели программисты, а программы и данные вводились с перфокарт или с перфолент. АЦПУ - устройство «широкой» печати - появилось только в конце 1960-х.
Для того чтобы быстрее писать программы для этих машин мы сами разрабатывали операционные системы. Тут уже требовалась высокая техника программирования, поскольку эффективность операционной системы была необходима для самой возможности ее использования.
Рассказывают, что в операционной системе «Пульт», написанной в Вычислительном Центре АН СССР для БЭСМ-6, был счетчик ошибок оператора, и при достижении некоторого порога система выдавал «вежливое» сообщение «А если ты – дурак, то не садись за “Пульт”». Когда директор ВЦ академик А. Дородницын инспектировал систему, он понажимал несколько раз случайные кнопки и был крайне огорчен полученным результатом.
О серьезности задач, которые тогда приходилось решать на тогдашних компьютерах, говорит то, что одним из моих проектов в студенческое время была система инверсного поиска патентов для экспертов. Кстати, ВМК еще не было, было отделение вычислительной математики на мех-мате, но я учился на отделении математики. Сдавая зачет по программированию, я должен был аппелировать к своему профессору М.Р. Шуре-Буре, поскольку его аспиранты, принимавшие зачет, программировать почему-то не умели. И вообще на мех-мате программирование считалось чем-то вроде предательства чистой математики, и всерьез на моем курсе им занималось не больше десятка человек. Была даже частушка: «Меня милый не целует, не садится близко, говорит “я – математик, а ты – программистка”». А потом 90 процентов выпускников с моего курса пошло-таки работать программистами.
Мне посчастливилось заниматься в семинаре по эффективным алгоритмам, на котором моими сокурсниками было придумано несколько классических алгоритмов. М. Кронрод построил оптимальный алгоритм упорядочения, Е. Диниц и А. Карзанов создали целую серию алгоритмов по потокам в сетях. А. Карзанов потом стал автором классических работ по линейному программированию. Мой диплом представлял оптимальный алгоритм решения задачи о назначении и состоял из полутора страниц.
Конец моих студенческих времен совпал с революцией в компьютерах. Появились компьютеры «общего пользования с системами разделения времени. Это IBM 360, ICL 4-70, ЕС ЭВМ. Писать в кодах для таких машин стало принципиально невозможно, и на передний план вышел (как наименьшее зло) язык ассемблера. Были и другие языки программирования (Фортран, Кобол, Алгол, PL-1 но они не позволяли эффективно контролировать оттранслированный код. Мой сосед по кабинету в ИПУ М. Фурман, на мой изумленный вопрос, как ему удается программировать на PL-1, просто заметил, что он в уме транслирует все операторы, прежде чем написать их.
За 15 лет работы с ассемблером мы общими усилиями овладели этим языком так, что он стал языком более высокого уровня, чем все выше перечисленные. Под термином «овладеть языком» я имею в виду не то, что мы досконально знали его синтаксис и семантику, а то, что были наработаны библиотеки подпрограмм, приемы программирования, идиомы и многие специфические приемы, так что программы писались легко и свободно. И, главное, еще легче отлаживались и адаптировались. Те, кто писал на Фортране, оценят последние свойства.
Именно за эти годы мною и моими товарищами по работе под руководством В. Арлазарова были написаны «Каисса», «ИНЕС», АСУ МНТС (Международного научно-технического сотрудничества для ГКНТ СССР) и много конкретных прикладных систем. Где-то в это время нам пришлось расстаться с привычными перфокартами и пересесть за дисплеи, между прочим, – алфавитно-цифровые.
Сделанная в ИПУ «Каисса» стала первым чемпионом мира среди шахматных программ. Кроме удовлетворения амбиций, она принесла мне еще много друзей по всему миру, поскольку в те времена создание хорошей шахматной программы было делом сложным, и сформировался своего рода теневой клуб авторов и знатоков шахматных программ.
Среди них были зна