ІТ в Україні: історія української науковиці Катерини Ющенко.

 

Створила одну з перших у світі високорівневих мов програмування. 

Катерина Ющенко  (1919–2001) —  українська науковиця, програмістка, яка в  1950-х роках  першою працювала над комп’ютером МЕОМ (рос. МЕСМ) — першим у СРСР та континентальній Європі електронним цифровим пристроєм обчислювальної машини. Вона була одним із ключових робітників у розробці унікального комп’ютера «Київ» та відповідала за його архітектуру та програмне забезпечення безпеки.

Авторка однієї з перших у світі мов програмування високого рівня — адресної мови , завдяки якій можна було працювати зі списками та складними ієрархічними структурами. Під її керівництвом створено державний стандарт мови Кобол, розроблено стандарти мов Фортран-2, АЛГАМС, Алгол-68, АДА, Фортран-77, Паскаль, ПЛ/1, Сі. 

Катерина Ющенко стала першим у СРСР доктором наук, який захистив роботу на тему програмування. Сьогодні її портрети висять у престижних музеях світу, а в Україні хочуть знімати серіал, де однією з ключових фігур буде відома винахідниця.

Ми поспілкувалися з сином Катериною Логвинівною Юрієм , доцентом факультету інформатики у Київо-Могилянській академії. Він розповів про повне випробування життя своєї матері, її досягнення, значення адресної мови та винайдення вказівників. Також у інтерв'ю Юрій поділився, чим насправді мріяла займатися Катерина Ющенко. 

Пам'ять про українську винахідницю: «Від журналістки дізнався, що портрет матері висить у Музеї комп'ютеризації у Блетчлі-Парк»

— Про Катерину Ющенка знають більше за кордоном, аніж в Україні?

Ні, вони знають не більше. Про що пишуть і в нас, і за кордоном? Про те, що вона була членом-кореспондентом НАН України, одним з перших програмістів, першим доктором наук у галузі програмування в Радянському Союзі, одним з авторів першого підручника з програмування в СРСР («Елементи програмування» — ред.) , який переклали угорською, словацькою, німецькою мовами, а через 14 років унікального комп'ютера "Київ". 

Ще пишуть про те, що вона запропонувала одну з перших мов програмування — адресну мову, створила школу теоретичного програмування в Союзі. Згадують, що вона мала понад 200 наукових праць. І зауважують про те, що мала такі нагороди та державні премії, що була ініціаторкою першої масштабної конференції 1968 року в Союзі, де зібралися приблизно 1500 програмістів.

Ще дуже рідко зазначають, що адресна мова була реалізована на багатьох радянських комп'ютерах: «М-20», «Урал», «Дніпро», «Мінськ». Але про те, скільки років ця мова програмування використовувалася, що її застосовували за кордоном, пишуть мало.

А ось про те, що мати була вимушена проти своєї волі сісти за арифмометр, взяти до рук логарифмічну лінійку, рахівниці, таблиці значень елементарних функцій і займатися не тим, чим мріяла, — взагалі майже ніхто не говорити.

— Зараз ви багато пишете про Катерину Ющенко, комп'ютери МЕОМ та «Київ». Коли зрозуміли масштаби досягнень своєї матері?

Звісно, я знаючи про її досягнення. Коли я закінчував навчання у школі, мати дуже багато мені розповідала про свою роботу: про відомого науковця  Сергія Лебедєва  та інших інженерів, про те, як складала програми та які вишукані методи програмування винаходила. Дуже багато говорили про унікальність створеної під керівництвом Лебедєва МЕОМ (мала електронна обчислювальна машина) та її важливість для виникнення адресного програмування та створення комп'ютера «Київ», який перевершив за архітектурою навіть комп'ютери Лебедєва «БЕСМ» (велика або швидкодіюча електронна лічильна машина). А в «М-20» відомий академік взявши ті, що вигадала мати з інженеркою Катериною Шкабарою . Розповідала, що коли мені був приблизно рік, я бачив МЕОМ.     


Коли мені було років вісім, до нас завітав сам Сергій Лебедєв. Після того, як він пішов, мати мені сказала: «Запам'ятай цього чоловіка, це велика людина! Ти маєш пам'ятати його всю свою життя. І пишатися, що побачив його». Протягом життя мати мені нагадувала, що я бачив самого Лебедєва. В одній організації вони не працювали, але зустрічалися та між ними всі життя були теплі та дружні стосунки. Катерина Логвинівна використовувала результати Лебедєва: МЕОМ та документацію до цього комп'ютера, працювала з його учнями, соратниками та друзями. А він узяв на озброєння винаходи матері та інженерки Катерини Шкабарі для «Київа», вивчивши і знавши адресну мову та її можливості.

Коли я навчався на першому-другому курсі на факультеті кібернетики Київського державного університету, мати, можна сказати, наполегливо вмовила мене вивчити адресну мову програмування. У  1977–78 роках,  коли я вже був на третьому-четвертому курсі, вийшла книжка Дональда Кнута «Мистецтво програмування» у трьох томах. Ми її розглядали на гуртку "Алгоритми на графах" в університеті. І коли я ознайомився з алгоритмами Кнута, то згадавши, що знаю їх із програм, які були написані адресною мовою програмування набагато раніше.

Я звернув увагу своєї мами на це. На той час вона знала про цю книжку, переглядала її, але після моїх слів ми вирішили скласти програми з книжок Кнута адресною мовою. Сіли писати програми обробки абстрактних типів даних, а саме дерев. Точніше, напевно, писала вона, а я підказував і з цікавістю спостерігав за процесом програмування. Призначення деревоподібних форматів Адресаної мови збігається з призначенням абстрактних типів даних, але має окремі концептуальні відмінності.

Тоді мені здавалося це трохи застарілим: в адресній мові не було гарної сучасної термінології, бо вона створювалась у  1950-х,  коли ще не було змістовних термінів: однозв'язні та двозв'язні списки, дерева тощо. Термін «опосредкована адресація» адресного програмування перетворився на загальновизнаний програмістами всього світу термін «вказівник»... Але потужність засобів самої мови я зрозумів, ще коли був студентом перших курсів.

— А коли ви вирішили серйозніше вивчати діяльність Катерини Логвинівни?

Після університету я закінчив аспірантуру, потім працював програмістом, тож у мене не було години на це. Загалом тривалий період мені здавалося, що всі знають про мамину роботу. Я зустрічався з  Борисом Малиновським  , він багато писав, зокрема про маму. Коли вона померла у 2001 році, мене почало турбувати, що про неї мало інформації в інтернеті. Але ще бракувало години взятися за це серйозно.

А у 2018 році я випадково натрапив на  статтю  програміста, блогера Альваро Відела, який зазначає, що вказівники винайшла Катерина Ющенко у 1955 році. Я став дивитися, що пишуть про це українські, радянські програмісти. Передивився все — ніхто не написав жодного слова! Мене це зачепило.

Буквально за кілька місяців після того зі мною сконтактувала знімальна група зі Сполучених Штатів Америки, яка приїхала спеціально до Києва робити документальний фільм про Катерину. Ми поспілкувалися один раз по телефону, та, на жаль, зустрітися нам не вдалося, бо я був не в місті. Але готувався для того, щоб надати їм більш правдиву та точну інформацію, і почав більше ознайомлюватись з історичними джерелами. Про долю фільму мені нічого невідомо, бо більше зі мною не зв'язувалися.

Ще за місяць на мене вийшла українська журналістка, яка писала статтю про мою матір. Від неї я дізнався, що портрет Катерини висить при вході біля павільйону історії програмування дуже престижного та відомого Музею комп'ютеризації поблизу Лондона у Блетчлі-Парк, де Алан Тюрінг розшифровував секретні німецькі повідомлення. А всередині є стенд із фотографією Катерини Логвинівни та з невеликими написами про ті, хто вона.


До речі, та стаття Альваро Відела стала сенсаційною за кордоном, було дуже багато дописів у соцмережах, де люди дивувалися з того, що прочитали. Були й такі, що зазначали, що це фейк і цього просто не могло бути. Але мати сама мені казала років за 10 до смерті, що саме вона винайшла указівники, а в світі помилково вважають, що це зробив Гарольд Лоусон 1964 року. Ось так я дійшов до того, що мене турбувало та зацікавило, і став робити дописи у Facebook та Twitter.  

Про початок кар'єри: «Деяка година у Києві мати була змушена зволікати на вокзалі з валізою»

— Ви сказали, що Катерина Лонгвінівна була змушена займатися не тим, чим мріяла. А чим вона хотіла займатися? Чому так вийшло?

Вона мріяла займатися теоретичною математикою, у неї були вагомі результати у галузі теорії імовірностей, яких вона досягла ще у Львові. Там мати мала державну квартиру від Інституту математики, майже в центрі міста. Це були післявоєнні роки. У 1950 році вона пристала на пропозицію академіка Бориса Гнєденка перевестися до Київського інституту математики АН УРСР (тепер НАН України). Вона здала державне житло та поїхала. І деяку годину була змушена зволікати на вокзалі з валізою.  

У Києві Катерина Логвинівна, коли їй було 30 років, захистила кандидатську дисертацію та мріяла далі досліджувати свою тему. Але дуже скрутне матеріальне становище змусило її погодитися на пропозицію директора Інституту математики Олександра Ішлінського очолити Лабораторію методів обчислень та розрахунків, бо той пообіцяв надати житло.  

У 1951 році вона познайомилася зі своїм майбутнім чоловіком, моїм батьком, який закінчив мехмат Київського університету. Після вишу його прирядили до лабораторії, де працювала мати; він теж писав програми на МЕОМ. Коштів у них було мало, тож довелося винаймати темну та сиру кімнату у підвальному поміщенні. 1952  -го  батьки отримали від Ішлінського кімнату в будинку Інституту математики, тобто робоче приміщення. Зручності — у кінці коридору, у кімнаті — два валізи, дві розкладачки, спіральна електроплитка, стіл із шухлядами для паперів, один стілець — більше не треба було, бо працювали у сусідньому кабінеті. Саме там народився мій старший брат. Наприкінці 1953 року батьки переїхали до Феофанії. Тут вони вже мали половину будинку: кімната, коридор, веранда, піч; зручності – на вулиці.

— Чим займалася ваша мати ці роки?

Її завдання були пов'язані з навігацією, оскільки Ішлінський займався теорією гіроскопічних систем для пароплавів, океанських та повітряних суден, а згодом балістичних та космічних ракет. Тому вже тоді мати мала доступ найвищого рівня до державної таємниці.

Наприкінці 1951-го ввели в експлуатацію комп'ютер МЕОМ. Ще до того мати знала від відомих математиків, що цю машину планують передати для обчислення їхньої лабораторії. На початку 1952 року вона стала працювати на МЕОМ. Невдовзі завагітніла першим сином, а працювати було дуже складно (на жаль, про це чомусь ніхто не пише).  

Як програмували на цьому комп'ютері? Роботу над одним завданням розбивали на багато етапів. Однією програмою було неможливо зробити весь підрахунок, частину доручали комп'ютеру, а частину виконували математики з арифмометрами. Для комп'ютера складали тільки ті програми, які треба було виконувати багато разів: немає сенсу писати програму у двойкових кодах, вводити, заводити, запоминати це все лише на один раз. Також брали програми, які мали велику трудомісткість розрахунків.

Тобто одна програма не могла розраховувати все від початку до кінця та видати відповідь. МЕОМ працювала ненадійно, рахувала з помилками, були збої. Комп'ютеру не можна було довіряти на 100 %, тому всі програми виконувалися двічі, тричі. А ще математики вручну рахували, приблизно перевіряючи, чи дає комп'ютер правильний відповідь. На МЕОМ виконували розрахунки для оборонної, космічної галузей, народного господарства.

Однак архітектура цього комп'ютера, зокрема маленький об'єм пам'яті, обмеженість його ресурсів, спонукала удосконалити технології програмування, адже потрібно було скласти програму, маючи всього 126 комірок для програми та 62 комірки для даних. При цьому МЕОМ могла опрацьовувати лише дані з фіксованою точкою. Тож серед іншого розробили вишукані методи моделювання обробки чисел із плаваючою точкою.

Складали програми багато математиків. Але Катерина Логвинівна у всьому брала участь, принаймні як консультантка, як найбільш досвідчена фахівчина у програмуванні. Вона була в курсі складнощів програмування всіх завдань, враховуючи їхню різноманітність. Це стало штовхачем до удосконалення програмування, тобто до його автоматизації. Мати неодноразово наголошувала на тому, що саме обмеженість пам'яті МЕОМ змушувала замислюватися над «хитрими» прийомами виходу зі скрутних ситуацій. Необхідність економити пам'ять спонукала писати програми, ефективні за годиною, розміром потрібної пам'яті. Це сприяло перегляду операторного методу програмування та удосконаленню засобів маніпуляції адресами.

Інструкції, які давали математики для обчислення, почали наближувати до того, що можна запровадити в комп'ютер. А з іншого боку, ті програми, які потім писали для «Київа», вводили в пам'ять комп'ютера обчислювачі, які мали розуміти програму в мнемонічних кодах і потім їх перетворювати на двойковий код. Відбувалося зближення того, що подається на комп'ютер, з тим, що видають математики. І коли воно стало ідентичним, з'явився адресний метод програмування, щоб прискорити та полегшити використання комп'ютера.

                                                                           МЕОМ. 1953/54 н.

Адресна мова програмування: «Вперше в світі були реалізовані завдання розпізнавання образів методом машинного навчання»

— Який рік вважають роком створення адресного програмування?

Це дуже складний питання. Зі слів мами можна зробити висновок, що шлях до програмування високого рівня почався ще до того, як почали використовувати комп'ютер МЕОМ. Оці інструкції, які видавали математики тим математикам, які обертали ручку арифмометра, теж програмували, але виконавцем був не комп'ютер, а людина. Це вже була майже мова програмування. Комп'ютер ще не міг її зрозуміти, але вона вже містила в собі формалізми, які увійшли до мови програмування високого рівня, зокрема до адресної. Це відбувалося настільки поступово, що неможливо вказати точну дату.

— А коли її було завершено?

Є кілька версій. Але в джерелах, зокрема в «Енциклопедії кібернетики», зазначено 1955–56, бо саме тоді вперше запрацював процесор комп'ютера «Київ». У його системі команд містилися засоби програмування високого рівня, або базису адресної мови програмування.  

Як це сталося? Передісторія така: до 1951 року Сергій Лебедєв працював у Києві, керував розробкою МЕОМ у Феофанії. Ще на початку 1948-го він запросив на науковий семінар математиків, у тому числі Ішлінського, Гнєденка тощо, які висловлювали свої пропозиції щодо системи команд, які мають бути у комп'ютері, щоб виконувати розрахунки було зручно. До системи команд додали звичайні прості можливості: розгалуження, перевірка умів, переходи, циклування для того, щоб підраховувати формули зі значками сума від 1 до n або до нескінченності чи добуток від одиниці до n. Гнєденко запропонував Лебедєву збільшити заплановану ним розрядність комірок для чисел у МЕОМ з 12 до 17. Якби такого збільшення не відбулося, то точність розрахунків із трьома десятковими цифрами зробила б комп'ютер непридатним для розв'язання реальних завдань.  

Паралельно з МЕОМ Лебедєв працював над створенням «БЕСМ», але доробляв її вже в Москві, бо там йому виділили на це помешкання та кошти. Але до кінця 1951 року академік ще приїжджав до Києва для того, щоб стежити, як завершують роботи над МЕОМ.

Коли Сергій Лебедєв поїхав, наші науковці засумували та мріяли продовжити робити київську «БЕСМ». До речі, тут залишилися навіть якісь шафи, приміщення, які готував Лебедєв, щоби зібрати «БЕСМ» у Феофанії. Отже, інженери обговорювали, що це має бути за комп'ютер, що він має робити, яка в ньому має бути система команд, але нічого реально в ящиках не паяли, не збирали.

Тож коли в 1954 році з'являється Борис Гнєденко (він якраз повернувся з Німеччини, де читав лекції), об'єднуються колишня лабораторія Лебедєва з частковим складом лабораторії, яку очолювала моя мати. Створюється нова лабораторія при Інституті математики, де офіційно проголошують початок розробки комп'ютера «Київ» — уже з розумінням головних архітектурних особливостей.

Вже 1955 року його процесор запрацював. Найважливішими в ньому були команди, які задавали цикли. Однак там були не просто цикли, а й можливість з'єднувати дані біля цепочки, складні ієрархічні структури — і це все було перераховано в системі команд комп'ютера «Київ».

Львів, 1946 р. На світліні Б. Гнєденко та брат Катерині Володимир (крайній поруч із Катериною)

Під час своїх досліджень я ознайомився з мовою програмування німецького інженера Конрада Цузе — Планкалкюль , яка є першою мовою високого рівня. У  1940-х вона не була реалізована, але у  2000-му створили її компілятор — просто заради демонстрації її працездатності як історичну реліквію, бо для практичного використання вона непридатна. Мене здивувало, як Конрад Цузе подивився у майбутнє, застосувавши головні можливості програмування високого рівня. Він міг на Планкалкюлі представляти навіть позицію шахової дошки. У мові були структури, але елементарні: з'єднувати дані можна було тільки в осередках, жодних списків, указівників чи чогось схожого не було.   

— У чому полягає важливість створення адресної мови?

На комп'ютері «Київ» за допомогою адресної мови зробили першу в світі табличну базу даних реляційного типу, щоб можна було з'єднувати довільним потрібним чином дані між собою. Завдяки тому, що в адресній мові є вичерпні засоби декларативного програмування, нею можна зафіксувати розв'язки задач, які записуються основними конструкціями мови SQL — JOIN. У реляційних базах є ключі: FOREIGN KEY, PRIMARY KEY, а в Адресній мові програмування їхню роль виконують адреси, які зв'язують згруповані дані.

Адресною мовою програмування вперше в світі були реалізовані завдання розпізнавання образів методом машинного навчання. Це кінець 1950-х – початок 1960-х! Комп'ютер «Київ» навчили розпізнавати друковані та рукописні літери та цифри.    

Нею розробили першу у світі розумну річ. Це була розумна домна у місті Дніпродзержинськ (тепер — Кам'янське). Тобто комп'ютер був у Києві і він керував технологічним процесом виплавлення сталі за 500 кілометрів звідси. Сигнали з датчиків доменної печі передавались телеграфними лініями до столиці на комп'ютер «Київ», а керівні сигнали, коли треба щось виключати, підливати, підмішувати, з «Київу» передавались тими самими лініями до цеху. Тут трохи відчувається технологія Internet of Things.

Дуже важливим є питання, пов'язане з адресною мовою програмування — це емуляція (відтворення програмними або апаратними засобами роботи інших програм  — ред.) . На машині «Київ» розробили програму, яка повністю емулювала комп'ютер «Дніпро». Для чого? «Дніпро» кілька років перебував у розробці, і потрібно було підготувати програмне забезпечення для того комп'ютера, який ще не зібрали. Тому на цьому емуляторі створили компілятор адресної мови програмування для комп'ютера «Дніпро». Це було дуже важливо, оскільки щойно комп'ютер був зібраний, він одразу почав працювати і з нього могли робити серію.  

Адресною мовою програмування написали систему автоматизованого проектування електричних плат. Ці плати були потрібні для створення військових приладів та техніки, побутової техніки, а також самих комп'ютерів. Комп'ютери «Дніпро», «Промінь», МІР-1 робили за допомогою цієї системи. Адресна мова вплинула на комп'ютери "М-20" ("БЕСМ-3", "БЕСМ-3М", "БЕСМ-4"), "Урал", "Мінськ".

Несподівана заборона: «Адресна мова програмування нібито була дуже складною для розуміння, але я не сприймаю цього»

— У Вікіпедії написано, що конструкції адресної мови «увійшли до складу сучасних мов» — про що саме йдеться?

Вважають, що Lisp — перша мова обробки списків. Вибачте, але в 1955 році була вже адресна мова, яка мала всі ці можливості обробки спискових ланцюгів. При цьому 1958 року Lisp була лише запропонована на папері (коли її реалізували, мені достеменно невідомо). Адресну ж мову програмування одразу використовували. Ще у «удосконаленій» мнемонічній мові для МЕОМ з'являються конструкції та засоби майбутньої адресної мови. Це одна з причин, чому не можемо вказати точної дати її винайдення.

Базова частина адресної мови – це система команд комп'ютера «Київ». Але для зручного використання програмістами мали бути збільшені конструкції системи команд, і вони мали наблизитися до математичних позначок. Спочатку на «Урал-1» інженери писали адресною мовою, а потім програми адресною мовою «перекладалися» в машинні програми. У першій монографії Катерини Ющенко «Адресне програмування та особливості вирішення завдань на машині УРАЛ» детально описані інструкції для такого перетворення.

Тепер про те, як конструкції адресної мови увійшли до інших мов. Почну з України. Мова програмування високого рівня, яку розробили для машин «Промінь», мову програмування для МІР-1, автокоди для «Дніпро-2» — спадкоємці адресної мови. А компілятор «Т4» для «Дніпро-2» — реалізація засобів адресної мови, але без використання цієї назви та посилання на неї. Річ у тім, що у 1965 році за рішенням вченої ради адресну мову заборонили.

Є така серія мов програмування, які називають автокодами. Їх вважають машинозалежними мовами програмування чи порівнюють, ототожнюють із Асемблером. Частково це так. Але вони мають засоби високого рівня програмування. І автокод для радянських комп'ютерів «Дніпро-2», «Мінськ», «Мінськ-22» — це машинозалежні мови, подібні до асемблерів, але з можливостями високорівневого програмування, які містили потужні засоби адресації програмного забезпечення: опосередковану адресацію, списки та складні ієрархічні структури.

Скажу кілька слів про те, як адресна мова вплинула на програмування у СРСР. У 1963 році тут ще не було абстрактних типів даних, указівників. Відомий у всьому світі програміст Андрій Єршов створивши мову Альфа для комп'ютерів Лебедєва "М-20" ("БЕСМ-3", "БЕСМ-3М", "БЕСМ-4"). Для БЕСМ-6 було реалізовано систему Альфа-6. Опис мови Альфа використовує термінологію Адресної мови, а в можливостях визначати та оброблювати структури даних відчутний вплив адресного методу програмування.  

У Києві розробили мову А-Кобол — вперше в світі до Коболу додали вказівники та можливість обробки складних ієрархічних структур (тих можливостей, до яких призвичаїлися київські програмісти під час програмування на адресному мові). За кордоном до мови Кобол вказівники були додані пізніше ніж у нас.

Щодо можливостей обробки списків. Був такий видатний наук Анатолій Кітов  — начальник обчислювального центру Міністерства оборони Радянського Союзу, який відносив адресну мову програмування до мов обробки списків — Lisp тощо. У 1963 році він вперше опублікував концепцію «асоціативного програмування» і виступив із нею на конференції. Мати мені казала: «Ознайомся з цим програмуванням — і ти побачиш адресну мову». У своїй книжці «Програмування інформаційно-логічних завдань», опублікованій у 1967 році, Кітов визнає, що використавши метод адресного програмування, і навіть вказує, що саме — адресацію вищих рангів та адресних функцій.   

У 1963 році в США видають додатки до першого підручника «Елементи програмування». А там є опис архітектури комп'ютера «Київ». Якби досвідчений програміст проаналізував ці додатки, то побачивши б указівники та складні ієрархічні структури. У 1964 році винаходять указівники у США.

— Ви вже згадували про заборону адресної мови програмування у 1965 році. У чому полягала причина? Чи припинився взагалі розвиток цього напряму?

Тому що була комуністична влада. Якщо є тоталітарний режим, то рішення ухвалюється єдино зверху. Адресну мову було заборонено частично. Наприклад, не можна було більше публікувати статті, монографії з неї, виступати з цією темою на семінарах, конференціях. Перестали реалізовувати мову на нових комп'ютерах. Наприклад, вже на стадії завершення зупинили розробку компілятора адресної мови для комп'ютера «БЕСМ-6». Лебедєв приїжджав до Києва, щоб переконати українську владу, що розробку компілятора для БЕСМ-6 потрібно завершити. Але йому не вдалося нічого змінити.

Адресна мова працювала на комп'ютерах, які виготовляли у Радянському Союзі до середини 1970-х років. Комп'ютер "Дніпро" був у виробництві до 1971 року, комп'ютери серії "Урал" - до  1975-го.  

— Які є версії, чому її заборонили?

Було проголошено перехід на мови Фортран, Кобол та Алгол-60, які почали використовувати за кордоном. І була потреба швидко навчити багато програмістів. На думку Катерини Ющенка, хибно вважали, що адресна мова складна для розуміння. Адже запис програм на цих мовах не складніший за їх запис на адресній мові.

— Чому ви вважаєте, що ця позиція була неправильною?

Так, Фортран та Алгол красиві, їхній синтаксис не дуже відрізняється. В обох мовах є цикли, оператор, присвоєння. Адресна мова містила інший синтаксис. Вона не мала гарних слів BEGINNING, END, FOR, IF, TO, але всі ці прості засоби та можливості у ній були. Адресна мова суттєво потужніша за Фортран, Кобол та Алгол-60, бо мала можливість визначати спискові структури, складні ієрархічні структури. Так, з першого погляду може здатися, що адресну мову програмування складніше зрозуміти, ніж інші, але вона писалася для математиків і містила багато математичних термінів. Якщо мова чимось і складніша, то через широкі можливості. Просто небо і земля, якщо її порівнювати з Алголом та Фортраном.

— Як би могла розвиватися історія українського програмування, якби не було обмежень з боку уряду та заборони на адресну мову програмування?

Якби не було цієї залізної завіси, Холодної війни, то всі досягнення, зроблені в Києві, були б доступні за кордоном. Це прискорило б розвиток тих самих абстрактних типів даних, технологій програмування. Усі найважливіші винаходи та досягнення у тоталітарній державі зрештою приречені на провал.

Зустріч із Норбертом Вінером: «Він був здивований, що ламповий комп'ютер „Київ“ настільки зручний для програмістів»

—  У статті  про Катерину Логвинівну на сайті «Дзеркало тижня» є такі слова: «Коли батька кібернетики Норберта Вінера 1964 року попросили оцінити стан обчислювальної техніки в СРСР, порівняно зі США, він сказав, що в Союзі вона трохи відстає, хоч і не набагато. Але СРСР випереджає нас у розробці теорії автоматизації. Відділ автоматизації програмування Інституту кібернетики очолювала К. Ющенко!» У чому саме ми випереджали США?

Так, Норберт Вінер потрапив сюди випадково. Він був на конференції в Москві і просто вирішив приїхати до Києва, бо, здається, у нього є українське коріння. Він чув про наші досягнення у галузі програмування, тому звернувся до Академії наук, і йому одразу знайшли аспіранта, який знав англійську мову. Звичайно, його привели й на Лісогірську до обчислювального центру при Академії наук. Він зустрічався з ученим Віктором Глушковим , Катериною Шкабарою та, звісно, з Катериною Ющенко. Вінер був здивований, що ламповий комп'ютер «Київ» (у них вже були напівпровідникові) настільки гарний, зручний для програмістів, що на ньому розв'язуються завдання розпізнавання простих геометричних фігур, рукописних та друкованих літер та цифр. Сам процес автоматизації програмування його вразив. Тож він зазначав, що в США елементна база комп'ютерів краща, але в програмуванні вони відстають від нас. 

Це відставання можна у цифрах. Указівники за кордоном винайшли на дев'ять років пізніше. Абстрактні типи даних (у нас це деревоподібні формати в адресній мові) — приблизно на 10 років пізніше. Перші бази даних (наскільки це зараз важливо!) створили у Києві на рубежі 1950–1960-х років. При цьому вони не дуже відрізнялися від реляційної бази даних, яку запропонував британський учений, співробітник IBM Едгар Кодд у  1970-х.

Ще є така сучасна архітектура комп'ютера – RISC. Я в процесорах не фахівець, але спеціалісти стверджують: у комп'ютері «Київ» була застосована технологія RISC-процесора, а це на кілька десятиліть раніше, ніж взагалі цей термін з'явився у світі.

— Чи ще спілкувалася Катерина Ющенко з іноземними науковцями?

За кордон вона не їздила: не можна було, адже в неї був найвищий рівень доступу до державної таємниці. Але вона таки була в Угорщині та ще, здається, у Східній Німеччині чи Чехії, тобто в соціалістичних країнах.

— А про що вони тоді спілкувалися з Вінером, якщо багато чого не можна було згадувати?

Вона розповідала про програмування, що вони роблять, які завдання розв'язують, але то були завдання, не пов'язані з оборонною промисловістю, і ті, що не були під грифом державної таємниці.

                                         Норберт Вінер в обчислювальному центрі АН УРСР. 1960 р.

Діяльність після 1965 року: «Як такого кар'єрного зростання у матері не було»

— Після 1965 року чим найбільше займалася ваша мати?

Найбільше вона програмувала у  1950-ті.  Потім мати перестала кодити, вона керувала розробкою програмних систем. І все розуміла до найдрібніших операторів. Писала підручники з програмування та складала державні стандарти мов, консультувала щодо наукових робіт з ІТ, долучалася до найважливіших розробок. Вона всю життя посвятила програмуванню.

— А як щодо кар'єрного зростання?

У 1950 році вона очолила Лабораторію методів обчислення і розрахунків і фактично нею керувала всю подальшу життя (лабораторію кілька разів переорганізували та 1962 року перетворили на відділ № 145 з автоматизації програмування Інституту кібернетики). Захистила у 1965 році докторську дисертацію. Ще її вибрали у члени-кореспонденти за видатні успіхи у розвитку науки, почесні академіки міжнародних організацій з інформатики...

Як такого кар'єрного зростання у матері не було. Керівну роль їй запропонували один раз та всупереч її мріям і вподобанням. Життєві обставини змусили її погодитись очолювати лабораторію з арифмометрами та «забути» про теорію імовірностей — галузь, у якої мати досягла суттєвих результатів, які знайшли застосування у квантовій механіці. Мати не була кар'єристкою та засуджувала кар'єристів. Її цікавила наукова діяльність, а не керівні посади.

Здобуття ступеня доктора наук є фіксацією її наукових досягнень. Після цього їй, серед іншого, підвищили зарплату. Мати жила скромно, не прагнула розкішного життя. Утримувала трьох дітей, свою маму та свекруху. Батько отримував не дуже високу зарплатню доцента.

Бути справжнім керівником наукового проекту — не кар'єра, а велика відповідальність. Це не висока посада, а тяжка праця. Бути формальним керівником, отримувати всі лаври легко. Катерина такою ніколи не була. Саме тому всі її шанували. Вона ділилася своїми ідеями, всім йшла назустріч, намагалася допомогти. Ось таким є її «кар'єрне зростання».

— Катерина Ющенко стала першим у СРСР доктором фізико-математичних наук у галузі програмування. Наскільки це було складно, враховуючи, що процес таких захистів ще не був налагоджений?

Не було вченої заради захисту наукових досягнень у галузі інформаційних технологій та програмування, що спричиняло складнощі. Тому мати пройшла за математичною спеціальністю. Це була перша дисертація у Союзі, яку захищали з програмування.

                                                  Колаж з обкладинок книг з описом адресної мови

— Мабуть, ваша мати відкрила шлях для наступників, які теж хотіли захиститися з цієї теми?

Так вона відкрила шлях іншим. За три роки, у  1968-му,  другу в СРСР докторську дисертацію з програмування захистив уже згаданий Андрій Єршов. Мати була оппонентом понад 40 докторських робіт з програмування та підготувала майже 60 кандидатів наук (у джерелах пишуть 47) та 11 докторів наук. Багато з її учнів стали відомими вченими, академіками та членами-кореспондентами.

— Ще читала, що ваша мати була професором в Університеті ім. Шевченка...

Так, вона читала лекції там після того, як  1957  чи 1958 року це перестав робити Володимир Королюк . Мати викладала в університеті до  1980-х. Працювала за сумісництвом спочатку на факультеті мехмату, потім на факультеті кібернетики (брала участь у його створенні).  

— Цікаво, що ще до Другої світової саме з цієї віші Катерину Логвинівну виключили...

Так, у  1936-му  вона вступила на механіко-математичний факультет університету Шевченка, склала зимову сесію на відмінно, але її відрахували як «дочку ворога народу». Тієї години її батька арештували та звинуватили у «буржуазному націоналізмі», а відтак ув'язнили. Коли Катерина про це дізналася, то сама розповіла на університетських зборах. Наступного дня її виключили з вішу.

— Ваша мати ніколи не проводила паралелей, які колись її виключили з університету Шевченка, а потім вона там викладала?

Ні, вона розуміла, що це був такий, на жаль, страшний годинник. Нарешті вона вивчала математику в Узбецькому державному університеті в Самарканді, який під час війни об'єднали зі Середньоазійським державним університетом у Ташкенті. І закінчила цю вішу  1942-го.

— Чим займалася Катерина Логвинівна останні роки в часи незалежності? До якого віку працювала?

До смерті. Вона очолювала відділ автоматизації програмування в Інституті кібернетики приблизно 34 роки. Але вже останніми роками передала керівництво своїй учениці Ользі Перевозчиковій. А мати перевели на посаду радниці дирекції: вона працювала з документами вдома, до неї приходили співробітники... Їй складно було їздити громадським транспортом, тому, коли збирали вчені заради, заради захисту кандидатських і докторських дисертацій, за нею приїжджала автівка та відвозила її на роботу, а потім назад додому. До речі, свого часу мати керувала найбільшим підрозділом в обчислювальному центрі АН УРСР, який налічував 40 співробітників, що становило приблизно половину штату всього центру.

Про особисте: «Тримає в руках дисертацію, гортає сторінки та змастити млинці»

— Якою людиною була ваша мати? Як устигала займатися і батьківщиною, будинком, коли у неї було троє дітей?

По-перше, вона лягала спати останньою, а просиналася першою. Завжди була зайнята якимось трудом, не мала спочинку. Яскравий приклад: ми приїжджаємо на дачу, і поки розвантажуємо з багажника речі, мати вже сапою поле грядки.

Наш колишній декан Микола Глібовець , з яким я разом навчався, згадував: «Приходжу я до Катерини за відгуком, бо вона була моїм оппонентом на захисті кандидатської. Вона зустрічає мене на кухні, тримає в руках дисертацію, читає, гортає сторінки та жарить млинці». 

Ще одне спогад: відпочиваємо в Алушті, живемо біля кімнати сімферопольського спортивного табору з п'ятьма ліжками. Режим дня: мати прокидається о  5-й  ранку, з 5:30 до 6:30 йде на пляж, стоїть на сонечку, купається і приходить ще до завтраку.

Поснідали. Тоді ми, діти, з батьком ідемо на пляж до обіду, а мати кидає матрац із ліжка на підлогу, бо там не так жарко, обкладається книжками та паперами, щось читає, пише, пише... Вона завжди брала з собою у відпустку повний чемодан книжок і документів. Після обіду ми знову йдемо на море, повертаємось увечері, а мати продовжує читати. Іноді ближче до вечора вона ходила на пляж, підставляла обличчя сонечку та купалася. Бувало, приєднувалася до нас вдень, але на пляжі під тентом вона знову розкладала навколо себе папери та придавлювала їх камінцями. Пом'ятаю, одного разу, коли вона так працювала, подувши вітер — і папери розлетілися по всьому пляжу, тож ми, діти, бігали та їх збирали. Отакий «відпочинок».

Мама писала поеми, вірші, дуже гарно малювала. Саме вона привила мені любов до образотворчого мистецтва, зацікавила канонами композиції, розповіла про золоте перетинання. Коли вона була дитиною, то брала долю у шкільних постановках, писала сценарій для вистави. У неї було багато друзів. Так, з однією подругою з Чигирина вона переписувалася до останніх днів: ці листи, написані рукою матері, зберігаються зараз у місцевому музеї.

— Читала, що ваш батько дуже підтримував Катерину Логвинівну, щоб вона могла поєднувати сім’ю та роботу?

Так, ще бабусі допомагали. Також у нас була няня Паша. Батьки взяли її з села з родини, де було понад 10 маленьких дітей, які недоїдали. Їй було 14–15 років. Вона допомагала доглядати нас, водила на прогулянки до лісу. Ця дівчина стала нам рідною.

Батько дбав, щоб удома були продукти, а також робив дрібний ремонт у квартирі: все міг власноруч полагодити. Крім того, водив нас у поліклініку — цим мати займалася дуже рідко. Якось вона прийшла зі мною чи сестрою до лікаря. Медсестри, дізнавшись, що вона є нашою мамою, переглянулися між собою, сказали: «А ми думали, що діти — напівсироти, що у них є тільки батько».

— Читала спогади онучки Анни, вона казала, що бабуся в неї асоціювалася зі святом. Також дивилася єдине відео з Катериною Логвинівною, де якраз зняте родинне свято. А з чим у вас асоціюється мати?

Так, це спогади моєї племінниці. Пригадую, коли ми були дітьми, на Новий рік мати ходила до сусідів, переодягалася в Діда Мороза: надягала білу бороду, червоного капелюха, одягала світлий халат. І ми вдавали, ніби віримо, що це справжній Дід Мороз. Нас дуже веселило, що батьки думали, ніби ми не впізнали мати :)

Про життєві випробування: «Праця на бавовняних полях в Самарканді та небезпечна робота запальником у шахті»

— У вашій родині багато було математиків або програмістів?

Чому взагалі мама так зацікавилася математикою? Тут «провина» бабусі — Ксенії Рвачової. Бабуся виховувалася без матері, а її батько був лісничий. Звісно, школи у лісі не було. Якось до них приїхав знайомий і подарував їй книжку — задачник з математики, показав, як читати літери. Через деякий час приїжджає, питає: «Ну що, навчилася читати? Тепер навчу тебе розв’язувати задачі». — «Я вже всі задачі розв’язала». — «Як це? У тебе ж нема ні аркуша, ні олівця, ні ручки! Ти не могла цього зробити!» — «А я паличкою біля річки на пісочку писала».

Потім через скрутне матеріальне становище бабуся пішла працювати до заможних людей домробітницею, а там були діти, які мали проблеми з математикою. Вона почала їх підтягувати. І так вдало, що її стали рекомендувати, тож вона заробляла репетиторством. Ці люди дозволяли їй користуватися бібліотекою, бабуся розповідала, що траплялися дуже цікаві математичні книжки, зокрема східних авторів про головоломки, логічні задачі. Вона все це опанувала та закінчила гімназію екстерном. Тут теж була цікава історія: вона збирала кошти, щоб скласти іспити, але за тиждень до екзаменів у неї вкрали гроші з матраца, де вона їх ховала. Дівчата з гуртожитку швиденько зібрали потрібну суму та подарували їй, бо бабуся завжди всім з радістю по дружбі допомагала.

Потім вона познайомилася у Чернігівській області з майбутнім чоловіком, і вони переїхали у Чигирин, де бабуся працювала у школі. Усі її діти стали математиками чи фізиками, це взагалі відома батьківщина в Україні. У Чигирині є вулиця сім'ї Рвачових. Брат матері Володимир Рвачов  — академік, був ректором Харківського інституту радіоелектроніки, вигадавши відому у всьому світі R-функцію . Інший брат Олексій був видатним фізиком, який всю життя очолював кафедру в Харківському авіаційному університеті.  

— У вас є  відео  на YouTube про біографію Катерини Логвинівни, в описі якого зазначаєте, що це ролик про скрутну життя винахідниці вказівників. Що ваша мати вважала найбільшою перепоною, випробовуванням для себе?

Репресія батьків та відрахування з університету Шевченка. Ще працю під палячим сонцем на бавовняних полях неподалік Самарканду. Також коли вона була студенткою, то виконувала дуже небезпечну роботу запальником у шахті.

— Це під час війни?

Так, під час війни, коли завершила навчання в університеті. Потім вона ще працювала на заводі з налагодження прицілів для танків, причому вони мали справу з дуже шкідливими для здоров'я речовинами: якщо потрапляло на шкіру — виїдало повністю, щось значно сильніше, ніж сірчана кислота.

Потім випробуванням стало те, що вона, приїхавши до Києва та не маючи крыши над головою, не могла повернутися до Львова. Тож у неї було два варіанти: або знову викладати математику у школі у Стрію, де вона працювала до Львова, або погодитися працювати у Києві та обертати ручку арифмометра. Для неї це було страшне рішення, бо руйнувало її мрії продовжувати дослідження з теорії ймовірності, вона всю життя про це шкодувала.

Якщо ще казати про перепони, то мати часто казала, що чоловіки — негідники, кар'єристи, зрадники. Мати мала на увазі, що чоловіки не дають жити та просуватися жінкам. Але при цьому і виправдовувала їх, бо «чоловік має годувати сім'ю, заробляти гроші, щоби забезпечити дружину та дітей».

У нашої сім'ї мати була головою у всьому. І не тому, що заробляла більше, ніж батько, а тому, що була авторитетом, мудрою, завжди ухвалювала більш виважені рішення. Батько водночас при вирішенні сімейних питань не вважав себе другорядним, бо мати завжди знаходила лагідні та переконливі аргументи та підтримувала його авторитет перед дітьми. Він відчувся на одному рівні з мамою.


— Ви сказали, що Катерина Логвинівна всю життя шкодувала про те, що їй не вдалося реалізувати мрії щодо продовження досліджень у теорії ймовірностей. Це при тому, що вона досягла таких висот у галузі програмування?

Так, жалкувала, що не пішла тим шляхом, про який мріяла з дитинства. Говорила, що її частка склалася б інакше, якби вона продовжувала дослідження з теорії ймовірностей. Я двічі гостював у Бориса Гнєденка у Москві. І він про мою матір казав так: «Це невтомна, талантлива та неймовірно скромна людина. Їй не годний у слід ступити жодний з моїх учнів».

Гнєденко пояснив, що за кілька місяців мати розв'язала дуже складне завдання, яке він поставив перед нею. І це вона змогла зробити завдяки підготовці високого рівня у галузі комбінаторного аналізу у Середньоазійському університеті. І моя мати, і бабуся розповідали, що у Середній Азії заклади, де здобувають математичну освіту, можуть дати фору європейським вішам.

І Гнєденко, котрий під час Другої світової сам захистив кандидатську дисертацію у Ташкенті, мені сказав: «Я знаю, як готують у середньоазійських університетах, тож щойно я побачив, що у твоєї матері диплом із відзнакою, зрозумів, що переді мною талантливий математик».

– А як ваша особлива людина пов’язана з пам’яттю вашої матері? Чого б ви хотіли зараз?

Тож вони встановили пам'ятник на її честь, як його встановили за кордоном усім піонерам ІТ: Аді Лавлейсу, Чарльзу Беббіджу, Конраду Цузе тощо. Назвали на честь матері одну з вулиць та проспектів під Києвом. Хай інформатики додадуть інформацію про Катерину Ющенко. А ще щоб поспала державна премія її імені...

Наразі у всіх закордонних джерелах та майже у всіх вітчизняних першими мовами програмування називають Фортран, Кобол та Алгол-60. При цьому адресна мова, створена на кілька років раніше, за своїми можливостями перевершує їх. Тому Україна має донести світовій спільноті про винайдення і першої мови програмування, яка мала велике практичне значення, і вказівників, списків, складних ієрархічних структур та декларативних засобів програмування. І пишатися досягненнями наших науковців у сфері ІТ.

 Авторка інтерв`ю: Eleonora Burdina журналістка












Коментарі

Популярні публікації