10 самых влиятельных языков программирования последних 50 лет и их создатели

Автор оригинала: javinpaul
  • Перевод
В IT-вселенной существует множество языков программирования. С каждым годом их становится всё больше и больше. Например, сравнительно недавно появились языки Scala, Kotlin, Go и Closure. Но история говорит нам о том, что выживут лишь немногие из них.

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



Языки — это важнейшая составляющая индустрии программирования. Их часто обсуждают, критикуют, их, с течением времени, улучшают. Они у всех на слуху, но их историю, хотя бы то, как зовут их создателей, знают далеко не все. Такое менее характерно для популярных языков. Например, все знают о том, что Джеймс Гослинг — это отец Java. Но далеко не каждый программист знает о том, кто создал Perl, Pascal, Lisp или Erlang.

Автор статьи, перевод которой мы сегодня публикуем, говорит, что к её написанию его подтолкнула вышеописанная ситуация. Здесь речь пойдёт о самых популярных и успешных языках программирования и об их создателях.

Топ-10 языков программирования и их создатели


Представляю вашему вниманию рассказ о десяти языках программирования и об их создателях. Языки здесь расположены в произвольном порядке за исключением первого в списке — языка Java. Я — Java-разработчик, поэтому решил поступить именно так.

Знаю о том, что многие C-программисты со мной не согласятся и посчитают, что первым в списке должен быть язык C. Их можно понять, ведь C — это самый старый из языков, которые всё ещё широко используются. Но эта статья не является неким рейтингом языков. Это — материал, который призван напомнить всем его читателям о мастерах компьютерного искусства, которые изменили мир языков программирования и разработки программного обеспечения.

1. Java — Джеймс Гослинг



Джеймс Гослинг

Java — это один из самых популярных и успешных языков программирования. Java создал доктор Джеймс Артур Гослинг. Он известен как «отец Java».

Изначально разработкой и поддержкой Java занималась компания Sun Microsystems. С января 2010 года, после того, как компанию Sun купила Oracle, этим занимается Oracle.

В основу Java положен принцип WORA («Write Once Run Anywhere», «Написано один раз, работает везде»). Платформонезависимость Java стала одной из фундаментальных причин успеха этого языка в корпоративной среде.

В настоящее время Java — это один из самых популярных языков. Если вы хотите изучить Java — взгляните на этот учебный курс.

2. C — Деннис Ритчи



Деннис Ритчи

Деннис Макалистэйр Ритчи, американский компьютерный специалист, занимался созданием языка программирования C в 1967 — 1973 годах в AT&T Bell Labs.

Язык C всё ещё весьма популярен. Он широко используется в системном программировании. Он старше Java, но не сдаёт своих позиций.

Деннис Ритчи, кстати, создал ещё и всемирно известную операционную систему Unix. Сделал он это вместе со своим давним коллегой Кеном Томпсоном.

Если сравнить популярность Денниса Ритчи с популярностью Билла Гейтса или Стива Джобса, то окажется, что сравнивать тут почти нечего. Но мало кто может сравниться с ним в том, какой вклад он сделал в мир информационных технологий. Об этом стоит знать каждому программисту. Если вы хотите изучить C — взгляните на эту специализацию на Coursera.

3. С++ — Бьёрн Страуструп



Бьёрн Страуструп

Бьёрн Страуструп родился 30 Декабря 1950 года в городе Орхус, в Дании. Он известен благодаря созданию и разработке широко используемого языка программирования C++. 

C++, как можно судить по названию языка, представляет собой язык нового поколения, следующего за языком C. C++ отличается поддержкой возможностей по объектно-ориентированному программированию. Это во времена появления C++ выглядело, в сравнении с C, невероятно интересно.

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

Если вы хотите изучить С++ с нуля — рекомендую взглянуть на этот учебный курс. В нём хорошо сочетаются теория и практика.

4. Python — Гвидо ван Россум



Гвидо ван Россум

Язык Python разработал Гвидо ван Россум из Центра математики и информатики (CWI). Python — это высокоуровневый язык общего назначения. При его проектировании особое внимание уделялось хорошей читабельности кода. Его синтаксис считается чистым и выразительным.

В США Python почти заменил Java в научной среде. В частности, это выражается в том, что современные студенты начинают осваивать программирование с изучения Python, а не C или Java, как это было раньше.

Python широко используется в разных сферах, в частности, в веб-разработке и в области информационной безопасности. Этот язык применяется в таких компаниях, как Google, Yahoo и Spotify. Вот хороший учебный курс по Python.

5. JavaScript — Брендан Эйх



Брендан Эйх

Если бы вы спросили меня о том, какой язык программирования можно назвать самым популярным в последние 5-10 лет, то я сказал бы, что это JavaScript. Он, совершенно определённо, господствует в мире клиентской веб-разработки, не в последнюю очередь — за счёт существующих JavaScript-библиотек. Кроме того, он пользуется серьёзной популярностью и в серверной среде — благодаря платформе Node.js.

JavaScript — это скриптовый язык, в котором используются механизмы прототипного наследования. Это — динамический язык со слабой типизацией, который поддерживает работу с функциями высшего порядка. JavaScript создал Брендан Эйх, работавший во время разработки этого языка в Netscape Communications Corporation.

JavaScript-код может выполняться в браузерах, на JavaScript пишут всё то, что приводит в движение современные веб-интерфейсы. JavaScript используется на практически каждом серьёзном сайте.

Если вы хотите изучить JavaScript — к вашим услугам огромное количество материалов.

6. PHP — Расмус Лердорф



Расмус Лердорф

Язык PHP (изначально он назывался Personal Home Page Tools, что переводится как «Инструменты для создания персональных веб-страниц») создал в 1995 году Расмус Лердорф. Вне зависимости от того, насколько сильно вы этот язык ненавидите, вам никуда не деться от того факта, что он довольно-таки популярен при разработке серверных частей современных веб-проектов.

В настоящее время эталонная реализация PHP разрабатывается силами The PHP Group. PHP соперничал с технологиями Microsoft Active Server Pages (ASP) и Java Server Pages (JSP) и в итоге стал гораздо более востребованным, чем они. Это — опенсорсный язык, который используется такими интернет-гигантами, как Facebook, Wikipedia, Wordpress и Joomla.

Если вы хотите изучить PHP — загляните сюда.

7. Perl — Ларри Уолл



Ларри Уолл

Perl — это высокоуровневый, динамический, интерпретируемый язык программирования общего назначения. Его создал Ларри Уолл в середине 1980-х. Своей популярностью Perl обязан замечательными возможностями по обработке текстов.

Perl всё ещё является основным языком, используемым для разработки скриптов в UNIX-системах. Perl используется в сфере компьютерной графики, в приложениях для работы с базами данных, в сфере сетевого программирования. Среди компаний, которые используют этот язык, можно отметить IMDB, Amazon и Priceline. Вот хороший учебный курс по Perl.

8. Ruby — Юкихиро Мацумото



Юкихиро Мацумото

Язык Ruby был создан Юкихиро Мацумото в середине 1990-х в Японии. Программирование на Ruby — занятие увлекательное. Если вы пробовали веб-фреймворк Ruby on Rails, то вы меня поймёте.

Воздействие на Ruby оказали такие языки, как Perl, Ada, Lisp, Smalltalk. Этот язык создан в расчёте на то, чтобы писать программы на нём можно было бы быстро и приятно.

Ruby, в основном, используется при разработке веб-приложений. В частности, этот язык применяется в таких компаниях, как Twitter, Hulu и Groupon.

Вот учебный курс по Ruby.

9. Lisp — Джон Маккарти



Джон Маккарти

Язык Lisp (LISt Processing language, язык обработки списков) был разработан Джоном Маккарти. Это — один из старейших высокоуровневых языков, которые используются по сей день.

Я никогда не изучал Lisp, но говорят, что этот язык является прародителем таких языков функционального программирования, как Haskell, Erlang и Scala. Этот язык используется в самых разных сферах. В частности — в военной. По Lisp существует не так уж и много учебных курсов. Вот — один из них.

10. Pascal — Никлаус Вирт



Никлаус Вирт

Pascal — это императивный процедурный язык, разработанный в конце 1960-х Никлаусом Виртом. Этот язык оказал значительное влияние на IT-индустрию. Он создавался как компактный и эффективный язык, направленный на поддержание хорошего стиля программирования за счёт использования структурного подхода к разработке. Как и в случае с Lisp, по Pascal существует не так уж и много учебных курсов. Всё же язык это довольно старый. Но если вы хотите его изучить — загляните сюда.

Итоги


Я поделился с вами моим рассказом о 10 языках программирования и об их создателях. Все, о ком я рассказал, внесли серьёзный вклад в развитие IT-индустрии. Без них современный мир был бы совсем другим.

Уважаемые читатели! Если бы вы составляли список самых влиятельных языков программирования, подобный этому, какие языки вы включили бы в него?

RUVDS.com
1 181,52
RUVDS – хостинг VDS/VPS серверов
Поделиться публикацией

Комментарии 56

    +6
    Гвидо ван Россум из Центра математики и информатики (CWI).

    W — математика :)

    Хорошо, что в мире только один Центр математики и информатики и сразу понятно, где работал Гвидо.

    PS. Чтобы сэкономить другим время. /тот центр находится в Амстердаме и w действительно означает «математика» (wiskunde. Но если скажете mathematiek, то вас тоже поймут).
      +7
      Вне зависимости от того, насколько сильно вы этот язык ненавидите


      Скорее я ненавижу тех, кто на каждом углу заявляет, как он ненавидит PHP.
        –2
          0
          Это вы мне в образовательных целях?
          Спасибо за заботу, но я эту статью знаю практически наизусть, как-никак 15 лет уже на PHP пишу, слежу за прессой.
          Но ровно также наизусть я знаю сотню причин, почему статья неактуальна, неточна и просто неправдива.
            –5
            Да, за это время PHP заметно облагородился, но большая часть статьи все еще актуальна. А кривой синтаксис и основы языка вообще навсегда останутся. Тем более PHP по-моему единственный шаблонизатор для которого пишут сторонние шаблонизаторы. :)

            Но любить его точно не за что. Тем более тем кто-привык писать на нормальных языках.
              0

              Вопрос только в том, что делает шаблонизатор в топе языков программирования

                0
                Программист (или просто образованный человек) никогда не станет использовать выражение «нормальный язык». Вы — тролль, товарищ.
              +1

              А у вас есть и ещё более старые статьи? А то эта устарела только на 7 лет.

              +2
              Поддерживаю! Даже, немного, расширю рамки. Для меня в принципе, любой человек, заявляющий, что его «инструмент», лучше чем чей то другой, автоматически перестаёт быть специалистом в моих глазах.
                0
                Т.е. любой специалист, который сравнивает два «инструмента» автоматически перестаёт в ваших глазах быть таковым?
                Довольно странная позиция надо сказать.
                  0
                  Странная позиция — это заменять одно понятие другим и удивляться этому. «Сравнивать» и «Давать субъективную оценку» — это разные вещи.
                +2
                Половина ненавистников PHP не писали на нем и полгода! Я уже молчу о полноценной работе с ним!
                  0

                  Это была бы очень странная форма мазохизма.

                –3

                В этом списке незаслуженно отсутствует язык Tcl, а вернее Tcl/Tk. В январе тиклю исполнилось 30-лет: В январе 1989 года был опубликован первый экспериментальный выпуск языка Tcl, разработанного доктором Джоном Остерхаутом (Dr. John Ousterhout):
                image


                Вообще трудно себе представить тот же Linux или Интеренет без Tcl/Tk. Конечно, многие скажут, я им не пользуюсь, я не знаю что это такое. И это будут не правда. Все им пользуются опосредованно. Прежде всего управление сетью, ну а далее такие прекрасные вещи как expect. А Tk? Ведь он используется чуть ли не во всех перечисленных языка. Сам я с удоволтьствием пишу на Тк, будь то Удостоверяющий Центр или криптографический АРМ для создания, как там говорят, усиленной усовершенствованной квалифицированной подписи.
                Лично я склоняю голову перед доктором Джоном Остерхаутом.

                  0
                  Прежде всего управление сетью

                  Это где Tcl используется (или использовался) для управления сетью (и когда)? Если не считать использования expect для ppp, конечно (и то не везде).

                    0

                    Да в той же Cisco!
                    Вот еще:
                    Cisco IOS Scripting with Tcl

                      0
                      Это не ядро управления, это скриптинг, причём в отдельно взятом продукте — совсем не тянет на:
                      трудно себе представить тот же Linux или Интеренет без Tcl/Tk

                        0
                        в отдельно взятом продукте

                        а посмотрите сколько таких продуктов!

                          0
                          Я не спорю, его много куда встраивали, и он всё ещё применим, но… назовите хотя бы один продукт который невозможно (или сложно) было бы использовать без Tcl, и при этом он играл бы существуенную роль в Linux и для Internet.

                          Да тот же bash (и вариации) играет намного большую роль чем Tcl, т.к. используется почти везде.
                            0

                            Я не понимаю, что вы имеете против Tcl?
                            Мир славен многообразием.
                            Tcl получил для создания интерфейсов пользователя и как встраиваемый язык, Tcl также подходит для других задач, таких как web-разработка, создание сетевых приложений, администрирование систем и тестирование.
                            А для тестирования — это просто находка.

                              0

                              Посмотрел, не понял, в чем он находка для тестирования. Для тестов выберу python.

                                0
                                Я абсолютно ничего не имею против Tcl (равно как и любого другого языка), я просто не согласен с вашим утверждением что он отсутствует в списке незаслуженно, и с последующими что «многие им пользуются опосредованно», или «используется для управления сетью» — поскольку эти утверждения не соответствуют действительности. «может использоватья» != «используется» и «необходим».

                                Просто он не имел достаточно существенной роли (в сравнении с упомянутыми в статье языками), и уж точно не внёс «огромный вклад в мир разработки» — и именно по этой причине (скорее всего) и не попал в список.
                                  0

                                  Статья называется не 10000 важных языков программирования и их история

                      0
                      Хм. А как насчет бейсика и ассемблера?
                        +1
                        Которого из ассемблеров?
                          +1
                          А так же которого из бейсиков?..
                            +1
                            Так которого из Паскалей?
                              +2
                              Блеза Этьеновича, вестимо.
                              0
                              Вот-вот. Это целое огромное семейство, которые породило поколения программистов, а их даже не упомянули.
                              0
                              Какая разница, если это был вообще первый язык, на котором можно было писать, после цифр.
                              +1
                              люто плюсую
                              BASIC переформатировал мозги не одному поколению программистов
                                –1

                                В лучшую сторону?

                              +12
                              Ruby есть, а C# нет? Да… Ну и Perl присутствует а, например, FORTRAN нет?
                                +11

                                Автор же в первых строчках заявил, что пишет на java

                                  0
                                  Фортран используется по крайней мере в половине программ для суперкомпьютеров. В том числе, благодаря большому количеству библиотек для него.
                                  +1
                                  Десятка мало. Надо 20, 50, а то и 100 для полноты картины.
                                  PS: Prolog тоже забыли.
                                    +14
                                    Статья ни о чём.

                                    По набору «самых влиятельных» языков: субъективное мнение, не подкреплённое никакими фактическими материалами.

                                    Уровень информации о языках и их авторах ниже плинтуса. Проще было дать ссылки на соответствующие статьи в Википедии.

                                    Единственное объяснение появления такой статьи — реклама курсов по языкам. Из 10 ссылок 7 ведут на один и тот же домен. Думаю, что оставшиеся три тоже как-то связаны с остальными.

                                    А зачем надо было это переводить и публиковать здесь — для меня осталось загадкой.
                                      +2
                                      сравнительно недавно появились языки Scala, Kotlin, Go и Closure.
                                      Он — Clojure!
                                        0

                                        Ctrl+Enter для отправки сообщений об опечатках же

                                          –1
                                          А как же возможность отхватить пару плюсиков? )
                                        +4
                                        Как оказывается легко увидеть разницу меж поколениями :) Просто по подборке языков и фразе о знании кто создал Java и «незнании» кто создал PASСAL.
                                        Лично мне подборка видится спорной. Список стоило б расширить
                                        Во-первых не увидел Ассмблер. Он стал первой ласточкой в том плане, что «оказывается» можно писать на чем-то более понятном человеку, нежели маш.коды.
                                        Во-вторых не увидел Фортран. Который до сих пор используется, кстати.
                                        С Си и LISP согласен полностью. Pascal… и да и нет. С одной стороны уже был Алгол и Модула. С другой стороны свои идеи Вирт развивал далее в Модула-2. Но влияние Паскаль конечно оказал немаленькое.
                                        Java — да, идея с одним и тем же кодом и разными JVM под разные платформы в то время оказалась отличной. Не зря Java в «кровавом энтерпрайзе» до сих пор своего рода стандарт (хотя C# догоняет).
                                        PHP, Python и Ruby я б в список не вносил. Да, интересны, да популярны. Но что-то революционное они не предложили.
                                          +4

                                          Виртуальная машина под разные платформы, исполняющая один и тот-же код — это язык PASCAL, 1973 год. Задолго до Java. А вообще, лозунг Java "написано однажды, работает везде" — маркетинговое враньё. Достаточно поставить на компьютер пару-тройку клиент-банков, написанных на Java — и вам обеспечен непрерывный квест с обновлениями и несовместимостями версий JVM. Когда банков становится 5-6 штук, начинаешь люто ненавидеть весь этот джава-энтерпрайз и хочешь видеть обычный простой экзешник. Или хотя-бы приложение на .Net, с которым проблем почти не бывает.

                                            0
                                            В своё время была популярна шутка про Java, что мол лозунг надо изменить на WODA: write once debug anywhere.
                                              0

                                              Ещё есть вариант Write Once, Run Away

                                              –1
                                              хочешь видеть обычный простой экзешник. Или хотя-бы приложение на .Net


                                              Пятничные откровения эникейщика? Программер такую глупость бы не написал.

                                              Для дотнетчины совершенно нормально сказать «у тебя стоит nf4, поставь И nf2 и nf3». И наоборот «у тебя стоит 4.5.1, пойди ка поищи 4.5.2». Совместимости никакой.

                                              Про «простой экзешник» вообще феерично. winapi маздаи меняют постоянно, даже прога «от winXP до 8.1» внутри просто кишит костылями и подпорками, а если невнимательно изучал winapi, получишь кривое поведение на неподдерживаемой версии винды. А уж запустить «простой экзешник» на linux, винде и например netbsd — это вообще уприседаешься…

                                              А про жабку, скажу как жабопрогер, варианта два: сертифицировали ПО под определенную версию jre, вот и прописали в коде явный запрет на любые другие версии", либо изумительное косоручие прогеров. Третьего не дано…
                                                +1
                                                А вы, простите, на .net писали что-нибуть? Потому что:

                                                1. Дотнет обратно совместим, если у тебя cтоит 4.5.1, то 3.5, 2.0 и прочие уже не требуются, проги собраные под них будут работать. .net программа написаная для win XP запускается под десяткой без каких-либо усилий. Мне попадались «обсуждения в интернете», когда вроде у кого-то что-то не работало, но это проходит по категории «баг». За мою практику работы с .net вот прямо с первой версии такого не случалось никогда, всегда хватало накатить последнюю версию.

                                                2. ЕМНИП мажорные релизы приезжают с апдейтами винды.

                                                3. Если мы бежим впереди паровоза, то никто никогда «номально» не говорит «пойди-ка поищи», с помощью минимальных телодвижений при первом запуске/обновлении прога скажет «ой, а мне нужно скачать новый .net, подождите 5 минут». Сама сходит, скачает, установит.

                                                4. Есть варианты «всё свое ношу с собой» aka embedded framework. Или offline installer.

                                                winapi маздаи меняют постоянно, даже прога «от winXP до 8.1» внутри просто кишит костылями и подпорками


                                                Ну это просто неправда и откровенное хейтерство. В Виндовз вагон с тележкой режимов совместимости, позволяющих запускать даже программы, собранные под win95.
                                                У MS всегда было очень хорошо с обратной совместимостью, они до сих пор тащат всякие окаменелости эпохи раннего неолита типа MFC(вот летом новый релиз вышел).

                                                Пятничные откровения эникейщика?
                                                Ну допустим и эникейщик(я не знаю, но предположим).
                                                И что? Скорее наоборот. Это ж не программист, который на автомате подобные проблеммы решает. Поэтому если даже эникейщик говорит «хотя-бы приложение на .Net, с которым проблем почти не бывает» то значит да, так оно и есть, не бывает.
                                                  –1
                                                  Ты вообще не в теме. Даже не хочу тратить время и вспоминать конкретные примеры, т.к. активно занимался этим 5 лет назад.

                                                  Но вот тебе ссылочки на сайт программистов:
                                                  про winapi вообще феерично, даже MSDN нельзя верить, только тестить прогу.


                                                  Ideally you would actually test your program on the versions of Windows your program supports. As mentioned in the comments, you cannot fully trust version information on MSDN.

                                                  Обратные примеры в моей личной практике тоже точно были, определенная функция работает до VISTA, но с висты начинает отдавать чушь. А в XP новой версии нет. В итоге, в коде на IF-ах два варианта. Может и три бывает… и эти люди поносят жабу? ))))

                                                  Про дотнет

                                                  In general, yes. The application's version of the framework will (typically) be used.
                                                  The one exception is if you're using COM — with COM, it's possible to have 2 versions of the common language runtimed loaded at once, which could require having both versions on the target system.

                                                  Я с таким поведением опять таки лично сталкивался (на чужих NET-приложениях), нужно было ставить всё хламолегаси.

                                                  В целом, в виндах с дотнет «шикарно». Гарантий что на ПК от «XP до 10» из коробки стоит дотнетчина, нет. Соответственно, нужен внешний инсталлятор на чём-то другом писанный. Плюс приседания с версиями. Про поддержку linux или какой экзотики я опять молчу. Так что жабку перестаньте ругать, себя ж позорите.
                                            0
                                            Из оказавших большое влияние еще можно упомянуть Prolog, Lua(активно используется во всяких встройках в связи с простотой интерпретатора). Ну и Bash конечно. Куда без него в линуксах
                                            И да, отсутствие Бейсика при наличии Руби и Лиспа — очень, очень странно.
                                              +3
                                              Я бы внес ассемблер 580 ака 8080. Давайте, похвалюсь. В молодые годы знал его наизусть. В машинных кодах кодить мог.

                                              И еще я бы внес Бейсик из Спектрума, если вы молодые, спросите своих отцов.
                                                +1

                                                Poke & Peek следят за тобой, сынок :)

                                                0
                                                я считаю вот этим типам из ТОП-10 можно памятники ставить. за их вклад, просто хотел этим комментарием выразить им большой при большой респет!
                                                  0
                                                  представлял что в этом списке будет fortran… ну pascal же есть? :)
                                                    0
                                                    Я бы скорее Алгола ожидал, именно Алгол повлиял на синтаксис большинства современных структурных языков, много синтаксических конструкций и понятий идут из него, хоть на него и повлиял Фортран, сам Фортран изначально не был структурным.
                                                      0
                                                      может быть, я не знаю где сейчас Алгол (о нем только читал)… а вот про фортран относительно недавно слышал… от математика, в контексте: если можно я напишу это на фортране :) речь шла про какой-то частотный анализ

                                                      я не программист: в детстве, ещё без/до компьютера пытался разобраться с фортраном, потом, уже на компьютере :) писал на С/С++ решал-то прикладные задачки, пытался разобраться с лиспом но не смог придумать зачем мне он нужен… параллельно нас учили паскалю… сейчас стараюсь в это не лезть… то есть я не практик
                                                        0
                                                        Так речь не об актуальности, а о влиянии на индустрию.

                                                        про фортран относительно недавно слышал… от математика, в контексте: если можно я напишу это на фортране

                                                        Так современный фортран вполне годный язык для матана и обработки массивов. У него даже в прошлом году новая версия стандарта вышла. ;)
                                                    +2

                                                    Внести Ruby, но не внести Smalltalk — за гранью...


                                                    Fortran, Basic…

                                                    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                    Самое читаемое