Добавить в корзинуПозвонить
Найти в Дзене

Ада Лавлейс, ENIAC и Фортран: три этапа рождения профессии программиста.

Кто они были: Математики и инженеры.
Что они делали: Создавали алгоритмы для механических вычислительных устройств.
· Ада Лавлейс (середина XIX века) — по праву считается первым в мире программистом. Работая с аналитической машиной Чарльза Бэббиджа (которая так и не была построена), она написала первые в истории алгоритмы для машины, включая алгоритм вычисления чисел Бернулли. Она же предсказала,
Оглавление

1. Предыстория: Первые «программисты» до компьютеров (XIX век).

Кто они были: Математики и инженеры.

Что они делали: Создавали алгоритмы для механических вычислительных устройств.

· Ада Лавлейс (середина XIX века) — по праву считается первым в мире программистом. Работая с аналитической машиной Чарльза Бэббиджа (которая так и не была построена), она написала первые в истории алгоритмы для машины, включая алгоритм вычисления чисел Бернулли. Она же предсказала, что такие машины смогут работать не только с числами, но и с любыми символами, включая музыку и текст.

2. Рождение профессии: Пионеры эпохи первых ЭВМ (1940-е годы).

Кто они были: Математики, физики, инженеры-электронщики, часто — женщины (так как изначально программирование считалось "рутинной" работой, похожей на операторскую).

Что они делали: «Общались» с компьютером на его родном языке — в кодах и переключателях.

· Программисты ENIAC (1945) — группа из шести женщин (Кэтлин Макналти, Бетти Джин Дженнингс и др.), которые программировали первый электронный компьютер общего назначения с помощью кабелей и переключателей. Они буквально «прокладывали» программу физически.

· Конрад Цузе (Германия) — не только создал первые работающие компьютеры (Z1-Z4), но и разработал первый высокоуровневый язык программирования «Планкалкюль» (Plankalkül, 1942-1945). Он опередил время, но не был реализован и оставался теоретическим до 1970-х.

Характер работы: Программирование было низкоуровневым и аппаратно-зависимым. «Код» представлял собой перфокарты, проложенные кабели или позже — последовательности двоичных кодов или мнемоник (ассемблер). Первые IT-шники были универсалами: они разбирались в архитектуре машины, логике схем и математике задачи.

3. Формирование первых языков программирования (1950-е годы).

Это был качественный скачок, который начал отделять «программиста» от «инженера по аппаратному обеспечению».

· Ассемблер (начало 1950-х): Первый шаг к абстракции. Вместо двоичных кодов стали использовать короткие мнемонические команды (например, ADD вместо 01100101). Это сильно упростило жизнь программистам.

· Фортран (FORmula TRANslator, 1957, Джон Бэкус, IBM): Первый реализованный и широко используемый язык высокого уровня. Он был создан для научных и инженерных расчетов. Ключевая идея: позволить программисту писать команды, близкие к математическим формулам (a = b + c), а не думать о регистрах процессора. Это привлекло в программирование огромное количество ученых.

· Лисп (LISt Processor, 1958, Джон Маккарти): Создан для задач искусственного интеллекта. Ввел множество революционных концепций (функциональное программирование, сборка мусора).

· Кобол (COmmon Business-Oriented Language, 1959, Грейс Хоппер и др.): Разработан для бизнес-задач (обработка данных, финансы). Его цель — быть понятным менеджменту (синтаксис близок к английскому). Грейс Хоппер, кстати, была пионером, создавшим первый в истории компилятор (программа, переводящая язык программирования в машинный код).

4. Последствия и формирование IT-профессии.

Появление языков высокого уровня привело к двум ключевым изменениям:

1. Демократизация программирования: Чтобы стать программистом, больше не нужно было быть гениальным инженером-электронщиком. Достаточно было логического мышления и знания математики/бизнес-логики. Начался приток новых кадров.

2. Разделение труда: Появилось четкое разделение между:

  · Аппаратными инженерами (hardware).

  · Системными программистами (создавали ОС, компиляторы, инструменты).

  · Прикладными программистами (решали задачи пользователей на Фортране, Коболе).

К концу 1950-х – началу 1960-х годов профессия программиста (или «computer scientist») окончательно сформировалась как отдельная дисциплина. Появились первые учебные курсы и стандарты.

Краткая хронологическая цепочка:

Ада Лавлейс (теория алгоритмов) → Инженеры-пионеры ENIAC/Z3 (программирование переключателями) → Ассемблер (первый уровень абстракции) → Фортран/Кобол/Лисп (первые высокоуровневые языки, создающие новую профессию).

Итог: Первые IT-специалисты появились как математики и инженеры, работавшие с конкретными машинами. А первые языки программирования (особенно Фортран и Кобол) стали тем инструментом, который абстрагировал их от аппаратуры, позволил мыслить в терминах задачи и, в конечном счете, сформировал программирование как массовую и самостоятельную профессию.