Создатели языков программирования

1920x1080 Создатели языков программирования (1).png

Рассказываем о людях, которые внесли свой значительный вклад в развитие мира интернет-технологий, а именно о разработчиках и энтузиастах, которые создали свои языки программирования.

Гвидо ван Россум: от набора юного электротехника до пожизненного диктатора

Гвидо ван Россум, родившийся в Нидерландах в 1956 году, стал настоящим архитектором цифрового ландшафта, создав один из самых известных языков программирования в мире — Python.

В одном из своих интервью Гвидо рассказал журналистам, что с самого детства был «ботаником». Когда ему было 10 лет, родители подарили набор юного электротехника, который произвел на него сильнейшее впечатление. С тех пор он стал увлекаться всем, что связано с физикой и цифровой электроникой.

Гвидо ван Россум поступил в Амстердамский  университет на специальность «математика и информатика». Там он впервые столкнулся с удивительным устройством со множеством проводов. Это был мейнфрейм — большой высокопроизводительный сервер, с помощью которого студенты изучали программирование. Гвидо стал подолгу изучать машину и ее возможности. Сначала он хотел изобрести вычислительное устройство, но понял, что мейнфрейм и его возможности — это уникальное средство, которое поможет создать не только калькулятор, но и другие удивительные вещи.

IBM System 360.jpg
IBM System/360 — компьютеры класса мейнфреймов. Были впервые анонсированы в 1964 году

В Национальном исследовательском институте математики и информатики Гвидо ван Россум принимал участие в разработке нового языка программирования ABC. Он использовал многие принципы ABC для Python, но реализовал их иначе. Также в процессе разработки Гвидо учитывал решения Pascal и Modula-3, находя в них вдохновение для создания своего уникального проекта.

Python был создан с нуля за три месяца. Первую версию языка Гвидо показал своим коллегам, которые не только высоко оценили его, но и в течение года помогали доработать и улучшить. Свое название он получил в честь любимого комедийного сериала Гвидо — «Monty Python's Flying Circus», который был популярен в 70-е годы прошлого века.

После своего первого релиза Python быстро стал набирать популярность среди программистов. Им нравилась гибкость и простота нового языка. Python строится на принципах опенсорса, где каждый может создать для него свою библиотеку, что значительно облегчает работу программистов. Если для какой-то задачи требуется определенный набор модулей, их не потребуется заново «изобретать». Достаточно заглянуть в библиотеку, где уже есть готовое решение.

В современном мире Python стал языком, который используют в самых разнообразных областях — от веб-разработки до искусственного интеллекта. За годы своего существования Python неоднократно попадал на первые позиции самых популярных языков программирования в мире, а в 2022 году возглавил этот рейтинг. Сегодня многие новички начинают свое изучение кода именно с него.

Гвидо ван Россум влиял на развитие Python вплоть до 2018 года. Для этого ему была отведена специальная роль — «великодушный пожизненный диктатор», что давало право принимать окончательные решения в сложных вопросах, когда это было необходимо. После многих лет «диктатуры» и ухода на пенсию, Гвидо оставил за собой право быть обычным разработчиком.

ввв.jpg

 


Бьярне Страуструп, который не интересовался языками программирования и создал один из самых популярных в мире C++

По мнению многих начинающих специалистов, созданный Страуструпом язык сложен в изучении. На что сам Бьярне как-то ответил следующее: «Если вы считаете, что C++ труден, попытайтесь выучить английский».

Бьярне родился 30 декабря 1950 года в небольшом датском городке Орхус. В детстве он мало чем отличался от сверстников и не проявлял особого интереса к школьным предметам, но при этом был отличником. По прошествии времени, Бьярне узнал, что учился в одной из худших школ города. Его родители не были богаты или чем-то известны. Именно с таким набором стартовых данных началось восхождение на вершину Олимпа ИТ-индустрии у создателя C++.

Фотография Бьярне Страуструпа
Бьярне Страуструп

В начале своей карьеры Страуструп работал в исследовательской фирме Bell Labs. Там он столкнулся с необходимостью разработки специализированных программ для моделирования распределенных вычислений. Для решения такой задачи в то время использовался объектно-ориентированный язык программирования SIMULA-67. Это был бы идеальный инструмент, если бы не его существенный недостаток — низкая скорость выполнения программ.

Бьярне Страуструп решил, что нужно создать собственный язык программирования. Этот шаг стал отправной точкой для создания C++ — языка, который впоследствии стал одним из наиболее влиятельных и широко используемых в мире программирования. Например, на нем написан браузер Google, а также операционные системы Windows и OS X, многие игры, такие как World of Warcraft и Counter-Strike.

Забавный факт: перед тем, как Бьярне решил создать собственный язык программирования, он не интересовался разработкой языков. Его всегда привлекало  микропрограммирование, архитектура вычислительных и виртуальных машин. При этом Страустрап знал и имел опыт работы с более чем двадцатью различными языками программирования, но ни одним из них не интересовался серьезно.  

Одной из ключевых особенностей C++, которую ввел Бьярне Страуструп, стало введение концепции классов и объектно-ориентированного программирования. Это  позволило разработчикам эффективнее структурировать и организовывать свой код, делая его более модульным и легким для поддержки и модификации. Кроме того, C++ включает в себя множество других инноваций, таких как шаблоны, перегрузка операторов и обработка исключений.

Язык C++ был разработан как расширение языка программирования C. C++ включает в себя все функциональные возможности C, а также предоставляет возможности для более высокоуровневого и структурированного программирования с использованием классов.

Несмотря на сложность изучения, C++ остается одним из самых востребованных языков программирования в мире. В 2004 году Страуструп был избран членом Национальной Академии Инженерии в США «за создание языка С++». Также он получил награду американского научно-исследовательского сообщества и награду авторитетного сообщества IEEE.

 


Джеймс Гослинг: вдохновляющие трудности и Java

Следующий герой нашей рубрики — Джеймс Гослинг. Он с детства увлекался программным обеспечением и математикой. Ходили слухи, что в юности Гослинг искал в мусорных баках университетской компьютерной лаборатории списанную и вышедшую из строя технику. Что из этого всего вышло — читайте далее.

Джеймс Гослинг родился 19 мая 1955 года в Канаде. Уже в младшей школе он начал писать программное обеспечение для анализа данных. Для его родителей не стало неожиданностью, что Гослинг хочет поступить в университет информатики.

Задолго до создания нового языка программирования Джеймс Гослинг сталкивался с ситуациями, решения которых так или иначе повлияли на будущее Java. Во время учебы в университете, он работал над программой обработки данных с канадского спутника ISIS 2. Джеймса часто отвлекали коллеги и просили добавить недостающие элементы в программу. В конечном итоге ему это надоело, и он решил сделать так, чтобы люди могли самостоятельно вносить нужные им изменения.

Гослинг вдохновился текстовым редактором TECO, где можно было создавать макросы — мини-программы для решения самых разных задач.

То небольшое открытие спасло Джеймса Гослинга от назойливых просьб и заложило основу будущего проекта.

После университета Гослинг работал над адаптацией софта и все глубже изучал вопросы, которые помогут разработчикам не зависеть от железа. Он устроился в компанию Sun Microsystems, где снова возникла вдохновляющая на инновационные решения проблема. В этот раз Джеймс столкнулся с тем, что ему нужна была программа для перевода программного кода с одного языка на другой. Не найдя подходящего решения, он принялся за создание собственного языка, который был бы максимально гибок и адаптивен. В 1991 году Джеймс Гослинг начал работать над Java.

Из окна его офиса был виден дуб, в честь этого дерева Гослинг назвал свой новый проект — Oak. Изначально этот язык предназначался для умных устройств, о которых в то время пока только размышляли и просто хотели создать нечто новое. Привычное название Java появилось гораздо позже из-за возникновения проблем с авторскими правами. На одном из брейнштормов участники команды Sun Microsystems просто выкрикивали понравившиеся им слова, а потом передали этот список юристам для регистрации.

Впоследствии Java стал набирать популярность среди программистов. Его активно применяли в веб-браузерах, которые в то время использовали специальные апплеты для выполнения сложных операций. Были разработаны API для мобильных и корпоративных приложений, а виртуальная машина (JVM) Java стала доступна для массового использования благодаря бесплатному ПО и открытому исходному коду, что также помогло языку приобрести широкую известность и распространение.

В итоге задумка Гослинга сработала, ведь когда он начинал работать над новым языком программирования, то хотел его использовать с «умными устройствами», что впоследствии и случилось. Сегодня практически у всех есть смартфон, и большинство приложений, которые используют пользователи — написаны на Java.

Фотография Джеймса Гослинга
Джеймс Гослинг

Уникальность этого языка заключается в его объектно-ориентированности, что дает возможность создавать модульные и легко поддерживаемые приложения. Но одна из самых востребованных особенностей Java — адаптивность к разным системам без изменения в исходном коде благодаря JVM.

Гениальным людям полагается иметь необычные увлечения, хобби или привычки. Так, у Джеймса Гослинга есть любимое число — 42. В юности он прочитал книгу о теории элементарных числел Дэвида Уэллса и с тех пор обрел привычку считать суммы на кредитках или чеках, чтобы получить интересное число. Как-то в одном из интерьвю, Джеймс поделился, что восхищается квадратным корнем из двух, потому что он является доказательством того, что в мире нет ничего идеального, даже в математике. 

 


Ада Лавлейс — первый в мире программист

Аде Лавлейс посвятила всю свою жизнь математике, написала в 19 веке программу для машины и внесла вклад в развитие концепций, лежащих в основе современных компьютеров.

Ада родилась в Лондоне в 1815 году. С детства она увлекалась науками и даже хотела создать летательный аппарат. В 17 лет Аду Лавлейс представили ко двору, где она познакомилась с Чарльзом Бэббиджем — изобретателем первой вычислительной аналитической машины. Эта встреча изменила ее жизнь.

Последовали годы переписки с Бэббиджем и другими учеными, частные уроки математики и семейная жизнь. Главный и единственный труд Ады Лавлейс был создан на основе писем и лекций профессора Бэббиджа. Он включал в себя перевод принципа работы аналитической машины, а также объемный комментарий к нему, который был в три раза больше основной записи изобретателя. Ада Лавлейс описала алгоритм вычисления чисел по формуле Бернулли на аналитической машине. Эта формула позволяет избежать большого количества вычислений и используется в тех случаях, когда при каждом испытании возможен один из двух исходов. Например, при бросании монеты или игрального кубика.

Изображение аналитической машины Чарльза Бэббиджа
Аналитическая машина Чарльза Бэббиджа

Именно этот перевод и подробный комментарий к нему и был признан первой программой, которую можно реализовать на компьютере, а его в то время еще даже не существовало. Ада Лавлейс писала об огромном потенциале аналитической машины и уверяла, что в будущем машина будет создавать алгебраические формулы, писать музыку и картины. Она предсказала, что аналитический двигатель может быть использован не только для числовых, но и для символьных вычислений. Это видение стало основой для того, что мы сегодня знаем как программирование общего назначения. В своих исследованиях Лавлейс отмечала, что несмотря на выдающиеся возможности аналитической машины, нельзя утверждать, что она «думает». На основе этого примечания Алан Тьюринг, — создатель эмпирического теста, который стал прародителем теста CAPTCHA, — ввел понятие «возражение леди Лавлейс». Оно говорит о невозможности машины создать нечто по-настоящему новое— машина будет делать только то, что в нее заложил человек.

Как это часто бывает, масштаб и уникальность работы Бэббиджа и Лавлейс оценили только спустя годы, когда в 20 веке началось бурное развитие научно-технического прогресса. Ада Лавлейс рано умерла и не смогла воплотить в жизнь все свои инновационные идеи, однако ее вклад в развитие науки оставил колоссальный след. В ее честь назван высокоуровневый язык программирования — «Ada», который был разработан министерством обороны США для управления военных объектов. В своей работе Ада Лавлейс ввела в употребление термины «cycle» и «working cell», которые используются специалистами до сих пор.

Помимо того, что Ада Лавлейс считается первым в мире программистом, ее можно смело назвать создательницей первого бага. Когда современные программисты перевели ее программу на новые языки, такие как Python или C, они обнаружили в расчетах ошибку. Некоторые исследователи склоняются к тому, что тому виной мог быть типографский брак и при реальной возможности выполнения программы, Ада Лавлейс быстро исправила бы найденную нестыковку.

 


Расмус Лердорф: как написать за один день новый язык программирования

Расмус Лердорф родился 22 ноября 1968 года на острове Кекертарсуак, в Гренландии. Он поступил в канадский университет, который окончил по специальности программиста систем инженерного дизайна. Неоднократно в своих интервью Расмус упоминал, что ему никогда не нравилось программирование, потому что оно было «утомительно и скучно».

Фотография Расмуса Лердорфа
Расмус Лердорф

После учебы Лердорф работал в различных компаниях, где занимался разработкой графических интерфейсов и программ. Набравшись достаточно опыта, Расмус создал собственную компанию, чтобы воплощать идеи и упрощать процесс использования визуальных редакторов для веб-задач.

В 1993 году Расмуса заинтересовал веб-браузер Mosaic. Тогда же он написал первый скрипт — «PHP-Tools for Personal Home Page», который собирал статистику о посещении веб-страницы. Этот эпизод можно считать отправной точкой для нового языка программирования PHP. Во время работы над языком, Лердорф активно собирал комментарии и отзывы пользователей, что серьезно помогло улучшить проект.
Позднее аббревиатура была переосмыслена как «PHP: Hypertext Preprocessor», подчеркивая его способность обрабатывать гипертекстовые запросы на сервере.

Как-то в интервью Лердорф рассказывал, что первая версия PHP была написана в перерывах между рабочими встречами. Она представляла собой небольшой набор CGL-скриптов, написанных на C. Поначалу Расмус Лердорф использовал новый инструмент только для своих целей. Он помогал упростить процесс создания веб-приложений для клиентов. Со временем ширились задачи и требования, что положительно влияло на развитие PHP для собственной фирмы Расмуса, а еще чуть позже — и за ее пределами.

В конце 90-х Расмус Лердорф начал сотрудничество с IBM — компания занималась консалтинговыми услугами. Сегодня это один из крупнейших в мире производителей программного обеспечения. После Расмус перешел в Linuxcare Inc. и стал членом группы разработки Apache HTTP Server.

Несмотря на смещение фокуса с работы над PHP, Расмус Лердорф на протяжении многих лет поддерживает связь с программистами PHP и занимается модифицированием своего детища. Помимо этого Лердорф написал более пятнадцати книг по языку, который создал. О себе он говорит следующее: «На самом деле я не очень люблю программировать. Я создал эту программу, чтобы программировать меньше, повторно используя уже написанный код».

Сегодня PHP повсеместно используется в проектах самых разных масштабов — от социальных сетей, таких как Facebook и ВКонтакте до систем управления контентом типа WordPress, Joomla и Drupal. Более 75% всех веб-сайтов в мире используют PHP на серверной стороне.

PHP — это скриптовый язык программирования, предназначенный для веб-разработки. Он выполняется на стороне сервера и часто встраивается в HTML-код страниц. Одна из уникальных черт языка — широкая поддержка различных систем управления базами данных, таких как MySQL и PostgreSQL. PHP использует динамическую типизацию, что делает его гибким и облегчает написание кода. Благодаря открытому исходному коду, у PHP образовалось широкое сообщество разработчиков, а также он легко интегрируется с различными веб-серверами.