Повелителька чисел, або Хто написав першу в світі комп'ютерну програму?
Спочатку давайте визначимо, коли з'явився перший комп'ютер. Все-таки програмування - наука прикладна, а «прикладається» вона до обчислювальної техніки.
Першим у світі комп'ютером вважається «Аналітична машина» Чарлза Беббіджа, яку він задумав в 1833 році. На відміну від першої розробки Чарлза, «різницевих машини» (1822 рік), новий агрегат повинен був робити обчислення по заданих ззовні вказівкам. Чарлзу так і не вдалося побудувати таку машину в реальності, в основному через недостатні технічних можливостей.
На технологічній виставці в 1834 році Беббідж зробив доповідь про свою першу машині, і яке ж було його здивування, коли зовсім юна дівчина закидала його питаннями, які показують, що вона дуже добре розібралася в пристрої його винаходу ... З тих пір почалося плідне співробітництво Беббіджа з його «феєю» ...
Хто ж була ця фея?
Ада Августа Лавлейс, уроджена Байрон, народилася 10 грудня 1815 в сім'ї поета лорда Байрона і його дружини Анабелла. Коли дівчинці було 2 місяці, лорд Байрон покинув сім'ю і ніколи більше дитини не бачив.
Анабелла зробила все можливе, щоб її дочка ніколи не стала поетесою. Вона доклала всіх зусиль, щоб зацікавити Аду математикою і музикою, і цілком в цьому досягла успіху, наймаючи дочки видатних в той час вчителів. Навіть під час хвороби Ада, на три роки втратила здатність ходити, продовжувала свої заняття.
У 1935 році Ада виходить заміж за лорда Кінга, який згодом отримав титул графа Лавлейс. Протягом наступних трьох років у них народилося два сини і дочка, але ні діти, ні чоловік, ні світське життя не могли відірвати Аду від її улюбленої математики. Не дарма її називали «Володаркою чисел»!
Пристрасність батька передалася їй у повній мірі, просто додаток її виразилося в іншій області, області чисел, цифр і функцій. В одному з листів до Беббідж вона писала: «Клянуся Дияволом, що не пройде і десяти років, як я висмокчу деяку кількість життєвої крові з загадок всесвіту, причому так, як цього не змогли б зробити звичайні смертні уста і розум. Ніхто не знає, яка жахлива енергія і сила лежать ще невикористаними в моєму маленькому гнучкому істоті ». Що найцікавіше, вона виявилася права.
У 1842 році італійський вчений Луїджі Менабреа познайомився з машиною Беббіджа і написав її опис французькою мовою. Беббідж попросив Аду перекласти це опис на англійську. У процесі перекладу Ада додала свої зауваження і пояснення, так що врешті-решт її робота за обсягом перевищувала роботу Менабреа в два з половиною рази. Вона була опублікована в серпні 1843 і містить 7 приміток Ади.
У своїх примітках вона описує можливості обчислювальних машин, причому зазначає, що «аналітична машина являє собою втілення науки про операції, створеної спеціально для дій над абстрактними числами як об'єктами цих операцій».
Ада вводить такі поняття, як цикл, робоча змінна, сховище (пам'ять), «млин» (процесор), а також висловлює абсолютно дивовижне для 19-го століття висновок - машина не може створити нічого принципово нового, а тільки лише виконати команди, визначені людиною. Але при цьому обчислення - не єдине застосування для подібного роду машин, вони зможуть створювати, наприклад, музику, вважала Ада.
Крім того, вона написала три програми (рішення системи двох лінійних алгебраїчних рівнянь з двома неізвестнимі- обчислення значень тригонометричної функції з багаторазовим повторенням заданої послідовності обчислювальних операцій- обчислення чисел Бернуллі).
У 1978 році в Дубні на обчислювальній машині БЕСМ-6 був проведений експеримент - програма Ади була закодована на Фортране. При налагодженні була знайдена всього одна помилка і одна помилка, крім того, її програма вимагала мінімальної кількості перфокарт і забезпечувала економію пам'яті!
Ада Лавлейс померла в 36 років, як і її батько, і була похована у фамільному склепі поруч з ним. Її роботи були на якийсь час забуті, однак з початком розвитку комп'ютерів та комп'ютерного забезпечення її ім'я спливло з небуття. У 1980 в США була розроблена мова програмування АДА, названий на честь графині Лавлейс, першою програмістки у світі, а день її народження, 10 грудня, відзначається в усьому світі як День програмістів.