![](https://hackyourmom.com/wp-content/uploads/2024/06/1-465x240.png)
Розповідаємо про життя і досягнення Грейс Хоппер, видатної програмістки, яка зіграла ключову роль у перетворенні комп’ютерів з важкодоступних машин на зручні для користувачів інструменти. Від створення першого компілятора до розробки мови програмування COBOL, Грейс Хоппер залишила незабутній слід у світі технологій. Дізнайтеся більше про її внесок у комп’ютерну індустрію та вплив на сучасне програмування.
Хоппер зіграла особливо важливу роль у тому, щоб зробити комп’ютерну сферу більш відкритою. З 1994 року проводиться конференція жінок-інформатиків, названа на її честь. Існує стипендіальний фонд імені Хоппер, метою якого є підтримка дівчат і жінок, які беруть участь у програмі.
Під час інтерв’ю телеведучий Девід Леттерман запитав Хоппер, як вона знає про комп’ютер. Вчена відповіла, що нічого не знає. Хоппер, одна з першопрохідців, багато в чому діяла з натхнення і абсолютно не зустрічала підтримки у свого керівництва, як на “Ентерпрайзі”, так і на флоті. Наприклад, головна мета її життя-навчити комп’ютер розуміти не тільки числові команди, а й людську мову.
Але їй це вдалося. Програмування-це все, що вимагає спеціальних навичок і підготовки, але ідея Хоппер внесла важливий внесок у полегшення роботи програміста. І звичайним людям не потрібно вивчати премудрості двійкового коду, щоб користуватися комп’ютером.
Вона вивчала математику та фізику і отримала ступінь бакалавра за цими спеціальностями в 1928 році. Потім вона вступила до Єльського університету. Так, в 1934 році вона захистила докторську дисертацію, присвячену незводимим многочленам і теорії кілець. Науковим керівником Хоппер був відомий норвезький математик Ойстер Оре.
Отримавши ступінь доктора філософії з математики, Хоппер повернулася до своєї альма-матер, університет Вассар, і розпочала освітню кар’єру. Але цей кар’єрний шлях тривав недовго-в 1939 році почалася Друга світова війна, учасником якої Сполучені Штати стали через 2 роки після нападу на Перл-Харбор.
Не відразу вдалося внести свій внесок у перемогу союзників Хоппер. У свої 34 роки Хоппер була занадто стара, щоб йти в армію. Також вченій не вистачало ваги-вона відрізнялася худорлявою статурою.
У той же час все більше і більше чоловіків йшли в армію і звільнялися з роботи. Такі області, як математика, гостро потребували кваліфікованих фахівців, які і потрапили в руки Хоппера.
У 1943 році, завдяки програмі WAVES (“жінка була прийнята в добровільну службу порятунку”), вона змогла вступити в резерв військово-морського флоту США.
Спочатку Хоппер відвідувала кадетську школу запасу в коледжі Сміта в штаті Массачусетс і закінчила її з найкращими результатами на курсі.
Після року навчання підполковник Хоппер (еквівалент нашого підполковника) був направлений до бюро проектування артилерійських обчислень Гарвардського університету для роботи над Mark I, комп’ютером з автоматичним управлінням послідовністю дій. Насправді це був перший програмований комп’ютер в Америці.
Служба в армії її не турбувала. Навпаки, вона описала цей досвід як “найповнішу свободу, яку я коли-небудь отримувала”. “Крім того, в ті роки армія, флот були найперспективнішими місцями роботи для багатьох вчених-новаторів (Привіт Оппенгеймеру!).
Хоппер назвала Марка I “вражаючим монстром” і найкрасивішим пристроєм, який вона коли-небудь бачила. Mark I був 17 метрів в довжину і 2,5 метра у висоту і займав іншу кімнату в Гарвардському університеті.
У той час не існувало терміна “комп’ютерне програмування”, але це можна назвати саме тим завданням, якою в той час займалася Грейс. Команда працювала над складними розрахунками для армії, включаючи розрахунок траєкторії польоту ракети і створення таблиці дальності стрільби для нових зенітних гармат.
Хоппер працювала під керівництвом піонера комп’ютерної інженерії Говарда Айкена. У 1946 році він доручив Хопперу відредагувати інструкцію з експлуатації та технічного обслуговування Марка I.
Протягом багатьох років роботи Mark I покладався на імпровізовані методи роботи членів команди. Перед Хоппер стояло дуже амбітне завдання-об’єднати розрізнені знання про верстаті і створити докладні професійні інструкції.
Через великий обсяг даних вчені порівняли проект зі створенням “комп’ютерної Біблії”. В результаті вийшла книга обсягом в 500 сторінок. Хоппер детально розробила усі аспекти фізичних компонентів Mark I, складність експлуатації та обслуговування.
Цей посібник включав Детальні інструкції з програмування машини, тому він став першим підручником з комп’ютерного програмування.
Після успішного виконання завдання Ейкен оцінила заслуги Хоппер і призначила її заступником. Потім вона написала кілька статей про Марка I, створив обчислювальну машину для випуску Mark II та Mark III, а Хоппер працював у його команді.
У той час Хоппер мимоволі доклав руку до появи термінів “баг” і “дебаггінг” в комп’ютерному житті. У 1947 році, під час тестування Mark II, машина вийшла з ладу через те, що в корпус комп’ютера потрапила помилка.
У перекладі з англійської баг-це помилка, або баг-недолік. Хоппер вставив цю комаху в свій технічний щоденник, згадавши про Баг і написавши: “перший випадок виявлення бага”. Але в історію цей термін увійшов саме як помилка або збій в роботі комп’ютерного обладнання.
У 1949 році Хоппер запропонували посаду головного математика в технологічній компанії Eckert-Mauchly Computer Corporation. Засновники Джон Моклі та Джон Преспер Еккерт створили комп’ютер ENIAC на замовлення Збройних сил США в 1946 році.
Хоппер була запрошена працювати над UNIVAC I, першим в Америці повністю електронним цифровим комп’ютером для спільного використання, а також для військового використання. У 1950 році компанія продала свої активи Remington Land, після чого Хоппер очолила відділ розробки автоматичного програмування.
UNIVAC I міг обробляти більше інформації, ніж Mark I, і був дуже привабливим для Хоппер. Комп’ютер виконував 455 операцій множення в секунду і міг зберігати близько 1000 операцій в пам’яті на лінії затримки Меркурія.
Крім того, вона мала більше свободи в комерційній сфері. Хоппер активно користувалася цим і експериментувала з новими способами використання комп’ютерів для кодування.
Автоматичним програмуванням зацікавилися вчені. Пізніше вона згадувала, що під час роботи їй було лінь багато разів переписувати програму для налаштування обладнання.
Саме тому в 1952 році з’явився компілятор a-0. Слід розуміти, що програма в той час являла собою набір математичних описів, які необхідно було обробити кількома іншими програмами. Це було довго і складно.
Компілятор A-0 дозволив перетворити комп’ютерну мову високого рівня в двійкову, тобто машинну мову програмування, всього за допомогою 1 програми. Паралельно з Hopper інші розробники розробляли подібні програми. Наприклад, в тому ж 1952 році в Манчестерському університеті під керівництвом Алека Глені був запущений компілятор autocode.
Але сам термін “компілятор” був створений Хоппер і її командою Remington Rand. Функціональність A-0 не зовсім відповідає тому, що означає Цей термін сьогодні. Швидше, його можна назвати завантажувачем додатків і компонувальником.
Проте, це була знакова і важлива віха в розвитку програмування. Хоппер заклала основу для створення сучасних мов програмування, які полегшують спілкування між людьми та комп’ютерами та дозволяють їм виконувати складні завдання з мінімальною кількістю команд.
Після A – 0 були випущені оновлені версії-a-1, a-2 і т.д. перші клієнти отримали компілятор a-2 до кінця 1953 року. Remington Land надала їм вихідний код для A-2 і запропонувала вдосконалення для UNIVAC.
Тим часом Хоппер продовжувала розвивати ідею написання програм словами, а не символами. На її думку, мова програмування повинна бути ближчою до повсякденної англійської, а не до двійкового коду. Це робить використання комп’ютера більш зрозумілим для звичайного користувача.
Комп’ютери тільки починали поширюватися серед звичайних користувачів, в основному в компаніях. Відсутність інженерної та математичної освіти здавалося непереборною перешкодою для використання комп’ютерів.
Хоппер побачила величезний потенціал використання комп’ютерів у бізнесі, наприклад, для оплати праці, тому продовжила свої дослідження та спроби.
Керівництво Remington Land не поділяло бачення Хоппер. Але їй було все одно. Висловлювання вчених розділені на цитати, з яких 1 говорить:”У мене на стіні годинник, який йде проти годинникової стрілки, тому що я намагаюся з цим боротися”.
У 1956 році її команда запустила FLOW-MATIC, першу мову програмування, що використовує мовні команди. Нововведенням цієї мови був синтаксис, в якому дані і операції з ними були спільними.
Тільки операція була виражена в усній формі, а дані вводилися через попередньо роздруковану форму. Основою Kobol став FLOW-MATIC.
COBOL з’явився на конференції з системних мов обробки даних, що відбулася навесні 1959 року. Це було реалізовано організацією CODASYL, основною метою якої є створення стандартизованої мови програмування для бізнесу.
Основою Kobol став FLOW-MATIC Hopper, а ще одним джерелом впливу став IBM COMTRAN.1 Kobol був створений не тільки Хоппер, а й зусиллями багатьох людей, але той факт, що її дітище було в центрі мови, приніс їй прізвисько “бабуся Кобол”..
Хоппер займалася розробкою цієї мови, як у військовій, так і в цивільній сферах. Вона також працювала над створенням компілятора для Kobol.
Мова використовує англомовні ключові слова, а його синтаксис наближений до цілісних речень англійською мовою. Серед плюсів – легка читаність програм.
Серед мінусів – громіздкість. Наприклад, те, що в сі-подібних мовах виражається як y = x;, у Коболі виглядатиме так – MOVE x TO y.
Критикували КОБОЛ і через відсутність структурованості. Нідерландський вчений і один із розробників концепції структурного програмування Едсгер Дейкстра навіть говорив , що використання Кобола «калічить мозок», а його викладання — «кримінальний злочин».
За всіх недоліків КОБОЛ набув широкого поширення в 1960-1970-ті роки. Все більше комп’ютерів блимали в кожному корпоративному офісі, як того хотіла Хоппер.
До 1980-х КОБОЛ було визнано застарілим, проте, як і раніше, зберігав популярність. За даними 1997 року, код на Коболі обробляв 90% фінансових транзакцій у світі та 75% комерційних транзакцій.
КОБОЛ використовується досі, особливо в США, переважно для підтримки існуючих додатків. У серпні 2023 року він навіть вийшов на 15 місце за популярністю серед усіх мов програмування.
Популярність мови має багато причин. Десятиліття використання зробили КОБОЛ надійним та стабільним. З його допомогою можна обробляти великі обсяги даних і при цьому не потребує дорогого обладнання. КОБОЛ сумісний з іншими мовами та технологіями, такими як Java, C#, SQL, XML і т.д.
Протягом своєї кар’єри в комп’ютерній індустрії Хоппер залишалася у військово-морському резерві. У 1966 році, коли вченій виповнилося 60 років, ВМС США запропонували їй довічний контракт. Так Хоппер спробувала вдосконалити комп’ютерну програму флоту.
Вчені висунули ідею заміни великих централізованих комп’ютерних систем мережею з безлічі невеликих комп’ютерів. Таким чином, всі користувачі зможуть отримати доступ до спільної бази даних, незалежно від їх розташування в мережі.
Це нововведення в кінцевому підсумку призвело до створення Інтернету, який спочатку розроблявся для військових потреб, у військовій сфері.
Крім того, Хоппер працювала над розробкою стандартів тестування комп’ютерних систем.
Її відданість справі заслужила захоплення підлеглих Хоппер, які називали її “дивовижною грацією”. А в 1985 році їй було присвоєно звання контр-адмірала. На той момент Хоппер було 79 років.
Хоппер продовжувала працювати і після останнього виходу на пенсію в 1986 році. Вона читає публічні лекції та надає консалтингові послуги ІТ-компаніям.
Грейс Хоппер померла в 1992 році. На той час комп’ютери вже не були рідкістю, принаймні в США. І, як мріяли вчені, вони розуміли англійську та інші людські мови.
Хоппер була відома своїм унікальним характером. Вона скептично ставилася до військової підготовки і вважала, що краще вибачитися пізніше, ніж чекати дозволу. В офісі Хоппер висів Піратський прапор-іронії додає той факт, що вона служила на флоті.
У 1986 році Хоппер була нагороджена “медаллю За бездоганну службу”. А після її смерті на честь Хоппер були названі ракетний фрегат Uss Hopper, суперкомп’ютер Clay XE6 Hopper і Єльський університет.
Хоппер зіграла особливо важливу роль у тому, щоб зробити комп’ютерну сферу більш відкритою. З 1994 року проводиться конференція жінок-інформатиків, названа на її честь. Існує стипендіальний фонд імені Хоппер, метою якого є підтримка дівчат і жінок, які беруть участь у програмі.
Під час інтерв’ю телеведучий Девід Леттерман запитав Хоппер, як вона знає про комп’ютер. Вчений відповіла, що нічого не знає. Хоппер, одна з першопрохідців, багато в чому діяла з натхнення і абсолютно не користувалася підтримкою свого керівництва, як на “Ентерпрайзі”, так і на флоті. Наприклад, головна мета її життя-навчити комп’ютер розуміти не тільки Числові команди, а й людську мову.
Але їй це вдалося. Програмування-це все, що вимагає спеціальних навичок і підготовки, але ідея Хоппер внесла важливий внесок у полегшення роботи програміста. І звичайним людям не потрібно вивчати премудрості двійкового коду, щоб користуватися комп’ютером.