Справа леді Лавлейс живе!

Леді Ада Лавлейс перша програмістка та покровителька всіх програмістів |

Чарльз Беббідж винахідник принтера |
Математик Ада Августа Лавлейс (Ada Lovelace, 1815-1852),
донька великого шотландського поета Джорджа Гордона Байрона, була першою в світі програмісткою.
Вона писала програми для аналітичної машини Чарльза Бебіджа (Charles Babbage, 1791-1871), у якій введення інформації та
програмне управління мало здійснюватися за допомогою перфокарт. Роботу машини забезпечував паровий двигун. Через смерть автора проект залишився нездійсненним,
фрагменти машини виставлено у Лондонському науковому музеї. Але програми для неї, як би ми зараз сказали, "у машинових кодах" писала та наносила на перфокарти леді Лавлейс.

Для довгих стрічок були спеціальні футляри |

А кінчики надривалися стрілочкою, щоби позначити початок і кінець |
У "домагнітну" епоху (60-70-ті роки ХХ ст.) для машинового введення-виведення інформації використовувалися
перфострічки та перфокарти. Стрічки були на пам'яті автора п'ятидоріжкові (телетайпові) та восьмидоріжкові.
Зразка телетайпової стрічки у автора немає, але роботу телетайпа можна побачити у кінофільмах про грамаданську війну ("Смольний на прямому дроті").

Дірочка це 1, відсутність 0 |
Восьмидоріжкові стрічки (на фото) мали, власне, дев'ять рядків дірок, але один, з малими дірками, був технічним
за ці дірочки колесико із зубцями протягувало стрічку через пристрій для читання. А решта вісім утворювали саме 1 байт.
На таких стрічках зберігалися і файли операційної системи, і прикладні програми. Для довгих стрічок були спеціальні футляри
круглі коробки з пластиковим кільцем всередині. На таке кільце програма накручувалася, а потім до зчитувача вставлялася прямо з цим кільцем.
Автор пам'ятає бібліотеку програм з чисельних
методів для малих ЕОМ "Мир-1", "Мир-2". Це, крім книжки з описом методів та описом реалізації, була велика коробка з рулончиками стрічок,
на яких було надписано назви процедур. Користувач мав написати головну програму з викликом процедури, набити її на стрічці,
далі ввести свою програму через считувач, ввести стрічку з процедурою та запустити на виконання. Результати друкувалися
на електродрукарській машинці.

Ялинкова прикраса серпантин |
Машини "Мир-1" та "Мир-2" на той час були явищем унікальним вони могли всі дії робити як в числах, так і аналітично.
Наприклад операції диференціювання, обчислення невизначеного інтеграла були внутрішніми операторами мови програмування цих машин.
А студенти того часу, коли персонал не бачив, розважалися тим, що, підбираючи відповідні двійкові коди,
виводили на стрічку літери та цілі слова, друковані дірочками. А поруч на фото стрічка, що реально висіла на ялинці у гурт. № 14 КПІ на Новий 1979 рік.

Одна карта на 80 колонок це один рядок програми |
На більш "дорослих" машинах серії ЕС-10хх, піратських копіях з американських IBM-360, IBM-370,
інформація вводилася з перфокарт. Стандартна карта IBM-формату дозволяла записати один рядок на 80 символів.
Саме цей стандарт і призвів до того, що екран дисплея рівно 80 позицій завширшки.

Бланк для програми |
Сьогоднішньому молодому програмісту важко собі уявити режим роботи тогочасних майстрів софту. Програми писалися вручну,
тобто на папері. Для того, щоби ввести програму у машину, її треба було написати на окремому бланку строго по одному символу у клітинці.
Далі подати до спеціальної кімнати на обчислювальному центрі (ОЦ), де з бланків оператори ОЦ програму набивали.
Далі формувалася колода перфокарт, що містила оператори програми від першого до останнього плюс спеціальні карти управління процесом.
Колоду здавали до іншого віконця, а через деякий час забирали назад колоду та роздрук на рулоновому папері.

Стосик у 4 см заввишки це біля 200 рядків тексту |
Пауза ця в залежності від степеня завантаженості ОЦ могла тривати від години до кількох днів. Далі, проаналізувавши можливі помилки,
виписували знову на бланк ті рядки програми, які треба було замінити, здавали на перфорацію, формували колоду, і знову все вспочатку.

За цим шаблоном дірочки різалися вручну |
Наслідком такого режиму роботи було те, що існувала та вважалася ознакою високої кваліфікації програміста
окрема навичка "відлагодження програми без комп'ютера", коли програміст просто вручну виконував
оператори своєї програми, виписуючи значення своїх змінних та міняючи їх "шляхом закреслювання". Таким чином вдавалося зменшити
кількість логічних помилок у програмі, а відтак зменшити кількість сеансів запуску програми.
Передруковування перфокарт з помилками також уповільнювало роботу, тому, якщо помилка зводилася до того, що треба було
змінити 1-2 символи, причому їхні коди були близькими, то подекуди доводилося вдаватися до вирізання дірочок вручну.
Для цього під рукою були таблички кодів (див.).
|