Еще летом на The economist вышла статья о том, что Python все активнее завоевывает рынок. Но завирусилась она только сейчас. Вероятно, так произошло из-за того, что она очень неоднозначная. Ведь несмотря на такой заголовок, автор заявляет, что Python, теоретически, может повторить судьбу Фортрана или Лиспа. Чтож, обсудим. Ниже перевод этой небольшой заметки.
![](https://habrastorage.org/webt/aj/c7/sl/ajc7slei_e9bazk4jvgmnfntlra.png)
Два основных преимущества языка — это его простота и универсальность. Простой синтаксис позволяет легко учиться, читать и делиться. Универсальность же легко продемонстрировать на примере: ЦРУ использовало его для взломов, Google для веб-сканирования, Pixar для производства фильмов и Spotify для рекомендаций песен.
С такой быстрорастущей пользовательской базой и широким спектром возможностей Python может показаться тем языком, который имеет шансы убить всех конкурентов. Это маловероятно, считает Грэди Буч, главный специалист по программному обеспечению IBM, который сравнивает языки программирования с империями: хотя временами растущая сила может быть близка к мировому господству, ее соперники обычно выживают в технико-культурных нишах, в которых они зародились. Python не заменит C и C++, которые являются «языками более низкого уровня». Они дают пользователю больший контроль над тем, что происходит в процессоре компьютера. Он также не убьет Java, который популярен для создания сложных приложений, или JavaScript, который поддерживает большинство веб-страниц.
Кроме того, питонисты, которые уверены в полном превосходстве своего языка, должны следить за рынком. Фортран, Лисп и Ада были очень популярны в 1980-х и 1990-х годах, согласно индексу TIOBE, который отслеживает использование языков среди профессиональных разработчиков. Их доли резко сократились, поскольку стали доступны более эффективные варианты кодинга. Ни одна империя, независимо от ее могущества, не может существовать вечно.
![](https://habrastorage.org/webt/aj/c7/sl/ajc7slei_e9bazk4jvgmnfntlra.png)
Я ТОЧНО не собирался создавать язык, предназначенный для массового потребленияТак сказал Гвидо ван Россум, голландский ученый, который разработал язык программирования Python в 1989 году. Но три десятилетия спустя его изобретение обогнало почти всех своих конкурентов и дало возможность без барьеров кодить, без преувеличения, всем. За последние 12 месяцев в США «Python» гуглили чаще, чем «Ким Кардашьян» (В России «Python» по тому же принципу обогнал «Тимати». — Прим. ред.). Количество запросов утроилось с 2010 года, в то время как количество запросов по другим основным языкам программирования не изменилось или уменьшилось.
Два основных преимущества языка — это его простота и универсальность. Простой синтаксис позволяет легко учиться, читать и делиться. Универсальность же легко продемонстрировать на примере: ЦРУ использовало его для взломов, Google для веб-сканирования, Pixar для производства фильмов и Spotify для рекомендаций песен.
С такой быстрорастущей пользовательской базой и широким спектром возможностей Python может показаться тем языком, который имеет шансы убить всех конкурентов. Это маловероятно, считает Грэди Буч, главный специалист по программному обеспечению IBM, который сравнивает языки программирования с империями: хотя временами растущая сила может быть близка к мировому господству, ее соперники обычно выживают в технико-культурных нишах, в которых они зародились. Python не заменит C и C++, которые являются «языками более низкого уровня». Они дают пользователю больший контроль над тем, что происходит в процессоре компьютера. Он также не убьет Java, который популярен для создания сложных приложений, или JavaScript, который поддерживает большинство веб-страниц.
Кроме того, питонисты, которые уверены в полном превосходстве своего языка, должны следить за рынком. Фортран, Лисп и Ада были очень популярны в 1980-х и 1990-х годах, согласно индексу TIOBE, который отслеживает использование языков среди профессиональных разработчиков. Их доли резко сократились, поскольку стали доступны более эффективные варианты кодинга. Ни одна империя, независимо от ее могущества, не может существовать вечно.
0xf0a00
Спасайтесь друзья. Это вторая волна. Первой были JS-ники всех мастей, мы получили Электрон. Теперь фанаты Тимати массово идут в айти.
*Все выше сказанное шутка, если что :)
sergof
Spiret
[print('Ha! ') for x in range(0, 3, 1)]
sergof
MaxVetrov
or
sgjurano
H = lambda a: ''.join([chr((a >> 24 — 8 * i) & 0xff) for i in range(4)])
MaxVetrov
.) Your turn!
sgjurano
Теперь хорошо, у перфекционизма должен быть предел xD
MaxVetrov
vvsotnikov
То же самое, но в TensorFlow:
fireSparrow
Имхо, использовать list comprehension не для формирования списка, а ради сайд-эффекта функции, — не очень хорошо.
sergey-gornostaev
Luciano Ramalho — Fluent Python
DmitryAnatolich
Spiritschaser
Шутка шуткой, но у питона есть биндинги к чему угодно, в то время как у js по десять велосипедов. Поэтому повторение невозможно, любой начинающий питонист очень быстро начинает использовать питон как "клей".
arandomic
Я так понимаю это оффтоп, но я не понял шутки.
У Тимати есть какая-то особенность, которая роднит его с питонистами?
UPD. Перечитал статью, понял про тимати.
Jouretz
А через статью под этой JavaScript на всех графиках рвёт остальные языки на британский флаг. Мне кажется или всем этим исследованиям безусловно можно верить?
hunroll
Ну это же популярность в поисковике. Есть куча факторов, которые этому могут помешать:
1. Могут просто не гуглить ничего по определённому языку. Например, он понятный, имеет обширный хэлп, не глючит, ведёт себя предсказуемо, никто не будет ходить каждые 2 мин на stackoverflow. Антипример — сложный непредсказуемый язык, который по-разному себя ведёт в зависимости от компилятора и платформы. Про него все гуглят каждые полчаса.
2. С++. Есть огромное количество синьёров С++, которым не нужно ничего гуглить. Они просто делают свою работу.
3. Сам поисковик. Если бы у Амиго был свой поисковый движок — то самым популярным языком программирования был бы html.
P.S. Питон и правда очень популярный, но слабо верится что ежедневно его использует большее количество людей чем тот же C++. Правильнее сказать — «Самый популярный язык программирования среди запросов в Google» или просто «Самый трэндовый».
Jouretz
Заголовок статьи просто желтоват.
учёный покусал журналистаsahsAGU Автор
Согласен. Хотя издание известное
SirEdvin
Вы точно хотели сказать С++? Учитывая что у этого языка осталось довольно узкое количество ниш, в котором он нужен.
hunroll
Довольно узкое количество новых ниш. Все старые ниши, образованные десятки лет назад всё так же кем-то заняты. Крупные проекты, которые кто-то когда-то написал на плюсах сегодня кто-то поддерживает. Ну и геймдев никуда не денется особо.
SirEdvin
Вы так говорите, как будто повально весь геймдев сидит и пишет на С++, хотя значительное количество проектов просто использует движки и пишет на javascript, lua и других штуках.
Самая крупная ниша за последнее время — это веб, и после Python, Ruby, Golang там практически не осталось место для C++. Разве что в каких-то топ 10 посещаемых сайтов мира да и то вряд ли.
Jouretz
Есть хоть один AAA проект на js в геймдеве?
SirEdvin
А сколько выходит в год ААА проектов? Сколько в них задействовано людей? А вы учитываете, что большая часть этих людей занимается скриптингом (не на С++), рисованием моделек, текстовками и прочим.
Мне кажется, что на каждый ААА проект выходит больше тысячи проектов средней руки, написанные на довольно разных языках.
Jouretz
Это просто к вопросам «как считать» и «популярность языка».
На флэше тоже тысячи игр написано было, и где теперь тот флэш?
А области занятые теми же плюсами остаются таковыми десятилетиями.
SirEdvin
Это какие такие области?
Десктопные приложения? — У нас есть javafx, електрон, kivy и еще ряд других штук.
Embedded? — Тут уже больше все-таки используется C с кастомными диалектами. Опять же, есть всякие микропитоны.
Системное программирование? — Ну, опять же таки, у нас есть немного раст.
Геймдев? — Кроме довольно небольшой части разработчиков движка, все остальные используют в основном скриптовые языки (самописные или нет).
roryorangepants
Перечислили технологии для десктопа и не назвали ни одной из .net-стека, что, мягко говоря, странно, если учесть, что это самый топовый стек для десктопной разработки под Windows, а Windows — самая популярная десктопная ОС.
SirEdvin
Простите, забываю всегда про windows, к сожалению.
BalinTomsk
---забываю всегда про windows
При том что он на подавляющем количестве десктопов и никого JS там нет и не привидится и даже практицески нет java. C# + WPF & C++ + QT
SirEdvin
VSCode, Slack, Mattermost и куча других тулзов для более-менее программистов почему-то пишутся кроссплатформенно на js :)
BalinTomsk
VSCode kак и все другие ГУИ от microsoft-a написан на С#.
Code.exe размером в 70 Mb легко просматриваетса в Dependence Walker, как и остальные полста dll-к.
Jouretz
github.com/Microsoft/vscode
Я так понимаю, пока вы сами из исходников её не соберёте вы не поверите. Дык теперь это возможно.
www.archlinux.org/packages/community/x86_64/code
Там список файлов прилетающих с проектом. code.exe и полста dll-ок?
BalinTomsk
Я таки запустил и поверил вам. :)
0xf0a00
Delphi![image](https://habrastorage.org/getpro/habr/comment_images/2b5/f46/ac6/2b5f46ac6e3c49bc4a06166c5ce569d3.jpg)
khim
Дельфи по желанию владельца превратился в Cobol.
Groramar
Владелец давно сменился :) Так что не всё так печально, как казалось 10 лет назад.
khim
Владелец сменился, подходы не сменились. Последняя версия бюджетного Паскаля, Turbo Pascal 7.0 — вышла полвека назад.
А среда разработки — продаётся под Enterprise и с соответствующими целями. Если бы это была часть какого-то популярного Enterprise продукта (как 1С) — Паскаль изучали бы как часть продукта… А так… В школах нет, потому что это не Enterprise, в Enterprise нет, потому что это просто среда разработки… Ну и где оно может использоваться?
Groramar
Есть полнофункциональный Community Edition. Если доход от деятельности до $5000, то можно использовать легально и бесплатно. В том числе там доступен мобильный пак, то есть можно писать под все поддерживаемые платформы. Используется много где и кем, в мире порядка трех миллионов установок (по оценке Эмбаркадеро).
khim
Не знаю где и кем эти три миллиона установок сделаны, нр вот тут — его нету. Есть даже Komodo и Light Table, а Delphi — нету.
Groramar
Не могу сказать, как они там считают. Но, думаю, Эмба своих клиентов знает лучше :)
www.embarcadero.com/press-releases/embarcadero-brings-millions-of-c-and-delphi-developers-to-windows-10-with-its-latest-rad-product-release
«RAD Studio 10 Seattle brings Embarcadero’s three million strong community of C++ and Delphi developers to Windows® 10»
И это было в 2015-м. Сейчас, я думаю, парк больше, и за счет Community Edition и, вообще, активного продвижения.
khim
Если у нас появится в сборке какой-нибудь маленький модуль на Delphi и для того, чтобы его поддержать на 1000 машин раскатать компилятор — нельзя будет сказать, что у нас появилось 1000 программистов на Delphi.
Groramar
Зачем компилятор кидать на тысячу машин? :) Это же компилирующий ЯП :) Один раз собрал бинарь на одной машине разраба — и он будет работать хоть на всех компьютерах мира с подходящей ОС.
khim
tcapb1
Я как-то ходил на собеседование в компанию, где довольно масштабную игру писали вообще на PHP.
dmitry_dvm
Геймдев на Unity денется.
Ariox41
Если искать по количеству запросов в google trends, по 'С++' будет в три раз больше запросов, чем по 'Java', у 'Python' немного меньше, чем у 'Java'. Но есть искать по темам "язык программирования ..." — результат обратный.
При этом у меня, например, в большинстве запросов не встречается 'C++', зато встречается 'Qt', 'Qt5', отдельные классы Qt без упоминания самого Qt и различные другие библиотеки. Я сильно сомневаюсь, что можно реально оценить, какие запросы к какому языку относятся.
facha
Странный результат, учитывая то, что Java это еще и остров, а python — еще и змея.
altrus
Хм-м…
Что-то у переводчика не то или с ориентацией, или с логикой, потому как аналогом Кардашьян у нас будет Бузова, а не Тимати. И тут уж Оля рвёт Питон по швам…
sahsAGU Автор
По вашему в 2019 году с ориентацией все еще бывает что-то не так?
mkshma
Оффтоп конечно, но да. То, что «альтернативные» ориентации есть отклонение — факт. Сейчас стоит лишь вопрос отношения к этому. Раньше принудительно лечили, а теперь в большинстве стран спокойно себе живут люди, как и живут люди, родившиеся с тремя почками и шестью пальцами.
khim
К счастью люди с шестью пальцами не требуют считать себя эталоном — а люди «альтернативных» ориентаций — требуют. Хотя, зачастую, даже не они сами, а те, кто чуют, что на этой «борьбе за права» можно получить какой-то гешефт.
Ariox41
Вы ищете по темам, а не по запросам.
![image](https://habrastorage.org/getpro/habr/comment_images/a9b/a9e/aca/a9ba9eaca4f6ccdda02a03d52a817f91.png)
DukeKan
Всё-же радует что у Питона (как и у других ЯП с большой историей, я надеюсь) популярность равномерна, вместо попсовых всплесков знаменитостей
muhaa
Трагедия 21 века в том, что даже если ты все делаешь для того, чтобы не знать кто такая Бузова, потом все равно оказывается, что ты это знаешь.
muhaa
Я недавно гуглил Python потому, что решил попробовать что такое машинное обучение с TensorFlow. Может такие как я и создают этот рост запросов?
janvarev
Когда начинаешь гуглить про Python и TensorFlow, сложно остановиться…
DaneSoul
Доминирование в поисковиках вполне объяснимо — Python сейчас становится языком №1 для начала обучению программированию, как на разных курсах, так и в зарубежных ВУЗах.
А начинающие всегда задают максимальное количество вопросов.
mafia8
То есть получается так: если придумать язык программирования, к нему хороший справочник, учебник, учебные материалы, среду разработки, то это уменьшит количество запросов в интернете, а следовательно, и рейтинг этого языка программирования?
DaneSoul
Рейтинги существуют разные, если рейтинг строить сугубо по частоте запросов в поисковике, то да, хорошая документация будет такой рейтинг снижать.
jaiprakash
Так случилось с Pascal/Delphi.
khim
Ни разу нет. Delphi вполне целенаправленно ушёл в Enterprise. Собственно Филиппа Кана кивнули потому, что он этому делу мешал…
jaiprakash
Я про то, что на паскаль, как учебный язык, есть и книжки, и встроенная документация. Да и WTF относительно нечасто случается.
В хоронильщиках не состою, если что.
khim
Паскаль да — и если вы во времена его расцвета в 80е годы были поисковики, то популярность Питона показалась бы мелкой и незаметной.
Но вот выход Delphi, фактически, закрыл развитие универсального языка и превратил его в «инструмент для Enterprise»…
hoegni
А потом пришел Free Pascal c Lazarus и стал идеальным инструментом для хобби-программистов, и отчасти для ученых.
khim
Только для тех, кто застал ещё Turbo Pascal. Очень мало кто из тех, кто не застал времена, когда Turbo Pascal использовали для обучения в школах про них знает…
hoegni
Ну, благодаря Lazarus и дельфийцы иногда знают. Хотя отчасти Вы правы. Сам-то я из эпохи Turbo Pascal.
DmitryOgn
На конференции ~2003 года в Москве руководство Borland заявило что создало C# Builder и ВСЕ решения компании будет переводить на «замечательную платформу .NET».
На этом моменте трогательной дружбы в M$ я понял что Borland перестала существовать. Тогда же Borland не осилила дописать комиллятор/библиотеку под Linux (Kylix — продакшн релиз был скорее альфа-версией по стабильности, например из-за смены локали с C на ru_RU начинал путать точки и запятые в C++ коде).
С тех пор про Borland ничего не слышно.
Groramar
Поговаривают, что MS недурно наехала на Борланд, когда та начала плотно продвигать Кайликс. Нужно было кровь из носу продвигать свой дотнет. И тут под Линукс появляется мега-тул быстрой разработки. В то время на рынке ничего даже близко сравнимого просто не было. Ну и результат мы все знаем.
khim
Это как раз были «мелочи».
DmitryOgn
>> И тут под Линукс появляется мега-тул быстрой разработки.
А Вы пробовали этот «мега тул»? Я с ним работал, на работе, на лицензионном. Локаль ru_RU — компиллятор путает точки и пробелы в исходнике. Только менять локаль на С и потом запускать. Огромное количество плавающих багов. Не компиллирует — добавляешь пробел в случайном месте, больше ничего не меняя — исходник откомпиллировался (!).
Возникает вопрос — можно ли вообще работать с компанией, выпустившей в энтерпрайз релиз компиллятор, за тысячи долларов, с таким качеством?
Одновременно на конференции руководство заявляет о великих планах, что будут дублировать VS.NET своим C# Builder (т.е. забросит VCL?), вместо того чтобы делать VCL/Delphi/C++ Builder мультиплатформенными и совместимыми со сторонними комилляторами/библиотеками.
В этот момент я окнчательно понял что они не жильцы. Совсем. Пришел на работу — ребята, забудьте.
Groramar
Всё это болезни роста. Если бы идея не была зарублена Майкрософтом, вполне вероятно, что сейчас расклад сил на рынке языков вообще и компиляторов в частности, а возможно и операционок, был бы совсем другой. Но история такая, какая она есть.
DmitryOgn
Из VCL можно было сделать аналог современного Qt, доведя Kylix до нормального качества и сделав совместимость VCL с другими компилляторами (пусть и с каким-то препроцессором, как в Qt).
Тогда, возможно, сейчас для UI смартфонов писали бы на Delphi, вместо JS/Kotlin/Swift. И что-то вроде KDE/Gnome было бы на этой библиотеке.
khim
На самом деле вы оба правы. Подтянуть Kylix было, в принципе, возможно, но беда в том, кто Enterprise хотел получить что-то, что можно было деплоить везде, бинарник. Ну и сам Kylix — это тоже бинарник, без сорцов.
А пресловутое «сообщество» в те годы от одной мысли что кто-то что-то будет поставлять без исходников впадало в истерику и начинало биться в конвульсиях. CADT-поколение, вообще, гордилось тем, что они из релиза в релиз ломают совместимость.
Потребовалась пара десятилетий пока «бунтари» выросли и, наконец, осознали, что борьются-то они не со «страшным Enterprise», а со своими собственными пользователями.
khim
Borland умерла гораздо, гораздо раньше. Когда она выпустила Delphi и убила Turbo Pascal.
Это может показаться бредом: Delphi — отличный продукт и одно время он был весьма популярен… и, тем не менее, это так.
Вы не можете взять учебник, рассчитанный на Turbo Pascal и использовать его с Delphi! Вот никак! Никаких аналогов Turbo3 и Graph3 (позволивших, в своё время, перенести пригораммы с Turbo Pascal 3 на Turbo Pascal 4/5/6/7) — нету. Совсем нету! Написать инструкцию в две странички, объясняющую как перейти с OWL на VCL — нельзя!
Зато можете взять учебник, рассчитанный на Turbo C++ 3.1 — и использовать его с Visual Studio 2017… а вот с C++ Builder'ом — его использовать не получится.
Это разрывает «связь поколений». Примеры, которые позволяли компаниям преодолеть такой разрыв — тоже известный. Это, например, переход с DOS на Windows NT или c MacOS Classic на MacOS X. Во всех случаях многие годы поддерживались два стиля работы: «старый» и «новый». И всё равно многих «потеряли».
А Borland… решил всё «одним рывком» сделать — и поплатился за это. Не он один: точно также умер Visual Basic (да, Visual Basic.NET существует… но кто им пользуется? а когда-то вначале Basic, потом Visual Basic были самыми популярными языками в мире), Windows Phone (потерявший всех разработчиков и пользователей Windows Mobile) и много других продуктов.
Просто Borland потеряла свой основной продукт — потому это так сильно ударило по всей компании…
Groramar
Замечу, что VB.NET и сейчас 5-й в индексе TIOBE. Поэтому ценность поста сомнительна.
khim
Если бы вы не искали к чему придраться, а хотели бы разобраться в том, что произошло, то сходили бы на страничку того же TIOBE и обратили бы внимание не только на позиции VB.NET в индексе, но и на динамику тоже. Хотя бы на табличку «Very Long Term History». Или на график.
Да, признаюсь, не сходил на TIOBE и не обратил внимание на то, что, оказывается, в последние год-полтора VB.NET вновь приобрёл популярность (интересно — за счёт чего?)… но появился-то он в 2001м! То есть больше 10 лет Microsoft вкладывал в этот продукт не получая отдачи.
Если это для вас — какой-то второстепенный продукт… то вы можете себе это позволить. А если это ваш флагман… тогда будет то, что с Borland'ом случилось…
DmitryOgn
Они перепутали себя с M$. M$ может раз в 5 лет добровольно-принудительно переводить клиентов и сообщество на новые платформы, библиотеки и инструментарий, забрасывая все эти DCOM, ActiveX, MFC, .NET Forms…
Борланд — фактически компания одного продукта в двух вариантах (Pascal/C++).
Указанные Вами ошибки наверняка оттолкнули часть людей, но потом были приняты совсем неадекватные решения. Как если бы сейчас JetBrains вдруг забросило котлин, схватилась за руст или дарт, потом бы снова бросило и схватилось еще за что-то, с громкими анонсированиям новых мегапланов без поддержки существующего…
Groramar
Борланд много чего выпускал. Конечно, этот продукт был самым успешным. Воевать на рынке с мега-корпорациями сложно, мягко говоря. Что и как уж сделали — история рассудила. Если бы Майрософт не вмешался, вполне возможно что инструмент дотянули бы до нормального состояния и сейчас вся индустрия была бы несколько иной.
khim
Borland много чего выпускал, да — но это с самого начала была «компания, выпускавшая Turbo Pascal и что-то там ещё».
Как Microsoft был «компанией выпускавшей MS DOS» (да, я помню, в 70е они начинали с бейсика, но это — другая эпоха).
Однако Microsoft, выпустив совершенно другую OS (и до этого поигравшийся ещё и с совсем альтернативной OS) — поддерживал MS-DOS пользователей многие годы, аж до начала XXI века.
А Borland отрезал себе всё одним махом (ошибка, которую, удивительным образом, Microsoft повторит позже, в 2010м). Результат мы видим.
khim
Вы не поверите, но нет. Новички всё равно проигнорируют учебник, забудут про справочник и запутаются в среде разработки.
RedCatX
Groramar
Согласен. Как-то приводил примеры:
habr.com/ru/company/psb/blog/433434/#comment_19536944
Могу свежих докинуть.
SergeiMinaev
Автор статьи, случаем, не Captain Obvious?
red_andr
Почему Питон должен повторить судьбу Фортрана, Лиспа и Ады? Почему он не может повторить судьбу Си, который лидирует на протяжении чуть ли не полувека, почти с момента своего создания и по сей момент? Причём вполне очевидно, что он будет оставаться если не на первом месте, то в топе и в обозримое будущее.
Кстати, я сам программирую на Фортране и могу сказать, что он остаётся несменяемым лидером в своём сегменте. У него просто нет конкурентов для решения численных задач. Ну не на Питоне же с Джавой писать модели решающие системы дифуров. Точнее, написать то можно, даже есть такие попытки, но скорость будет в разы, а то и порядки ниже. Си тоже довольно быстрый, но менее удобен. А общее лидерство Фортран потерял исключительно из-за появления других сегментов. Если до 80-х, может быть 90-х, большая часть компьютеров использовались как числодробилки, то сейчас хоть их число возросло, но число компьютеров для других применений возросло ещё больше.
roryorangepants
Высокоуровневые вычисления неплохо писать как раз таки на Питоне, пользуясь библиотеками, написанными на C и том же Фортране.
red_andr
То есть всё таки собственно вычисления делают модули написанные совсем не на Питоне. Да, я разбирал такие библиотеки как NumPy и SciPy, там всё внутри на Фортране и Си. Это, конечно, удобно, не могу не согласится, но в целом всё равно проигрывает полной реализации на одном Фортране.
roryorangepants
Да не проигрывает же.
Само собой. Но ресерчер в результате пишет код на питоне и фортрана может не знать вообще.
red_andr
Ну как не проигрывает, если проигрывает ;)
Overhead в виде питоновской прослойки может быть очень велик. Конечно, всё зависит от конкретной задачи. Где то достаточно пары вызовов функций на Си, а снаружи только простая обработка результатов и их вывод. Но зачастую просто нет библиотечных функций для критичных частей кода. Например, в моей области, моделирование химии атмосферы. Приходится всё писать на Фортране.
Groramar
И оверхид есть. И писать код мотаясь по множеству сред — удовольствие ниже среднего. Намного удобнее, когда код монолитный и единый. Опять же: на 'стыках' накосячить нельзя в принципе, просто потому что стыки отсутствуют. А так — нужно знать массу особенностей, типы могут быть разные в разных языках, boolean, string — запросто. А это всё верный путь к потенциальным багам. Вообще, на стыках постоянно всякая 'веселуха' проявляется. По собственному опыту.
trix
Просто автор выбрал совсем неподходящие языки для сравнения, а ведь есть прямой аналог из второй половины 90х — это Visual Basic, в то время язык нежно любимый за низкий порог входа и хорошую интеграцию со сторонними библиотеками, получивший особенно широкое распространение в эпоху американского бума IT.
red_andr
Да, такая аналогия была бы ближе. Хотя разве VB был когда-нибудь в лидерах? Он был, конечно, очень популярен среди новичков, но серьёзные задачи всё-таки решались на других языках, типа того же Си. Скажем, никто на корпоративном уровне не мог даже заикнутся, чтобы его использовать. На Питоне же сейчас много чего крутиться, включая очень большие и важные проекты.
khim
Правда не в России: в России эту нишу заняли частично 1С-программисты, частично — Delphi-разработчики.
Наоборот: до пришествия в энерпрайз Java и интранета на VB было написано безумное число внутрифирменных поделок.
Возможно кто-нибудь когда-нибудь проведёт исследование и выяснит почему на Западе в те временя бизнес выбирал VB и VBA, а в России — Delphi и 1C.
Groramar
Известно почему, на Западе был (применим это слово, сейчас ситуация существенно поменялась) монополист — Майкрософт, который агрессивно продвигал .net и VB, а у нас люди себе выбирали инструменты сами. У нас такой монополист — 1С, в своей области.
khim
То что люди выбирали инструменты сами, я думаю, не критично. Скорее сыграло роль другое. Delphi был популярен во времена, когда инструменты продавались на всех станциях метро «на вес». Неважно — 100 рублей за диск или 500… важно, что официальная цена значения не имела. А на Западе — таки имела.
Groramar
Всё это понятно. Однако выбор (при равных прочих) был сделан в пользу Delphi, а не VS. Сейчас, к слову, ситуация стала лучше. Выпустили Community Edition, полнофункциональную среду, с ограничением по доходу с неё.
khim
Но с тех пор Turbo Pascal из школ ушёл… он долго держался, лет ещё 10 назад я эти синие окошки видел… но, в конце концов, таки умер… А Community Edition — это уже совсем другое. На нём программировать в школах не обучают.
Groramar
В школах, понятно, не было. Однако 'на рынке' было доступно всё.
khim
«На рынке» много чего доступно. Но преимущество имеют языки, которые изучают в школах.
Groramar
Сейчас Жаву где-то изучают в школах?
Вот смотрю на киберфоруме:
www.cyberforum.ru/pascal
www.cyberforum.ru/java
Основная масса явно учебных вопросов как была так и осталась на Паскале/Делфи. А глянуть на рынок спроса специалистов — ситуация совсем другая.
RedCatX
В школах точно также и QBasic использовали, причём, по моим наблюдениям, намного чаще чем Turbo Pascal. Так что возвращаемся к «прочим равным».
wlr398
SolidWorks (Солидворкс) — программный комплекс САПР для автоматизации работ промышленного предприятия на этапах конструкторской и технологической подготовки производства.
Разработчик Dassault Systemes
Написана на Visual Basic
ru.wikipedia.org/wiki/SolidWorks
Интересно, это реально так…
Вроде система очень серьёзная.
DmitryOgn
Dassault купил SolidWorks, хотя и довольно давно.
Сейчас он написан на C#, ядро переезжает с движка Сименс на собственный движок Dassault ACIS (созданный для CATIA).
Возможно, в 1995 году он и был написан на VisualBasic, но эта информация устарела минимум лет на 15.
Delsian
Всяк кулик свое болото хвалит (с)
Помнится, в прошлом году предсказывали, что на первое место выйдет Rust — а на графике его вообще нету.
khim
Это кто такие сказки рассказал? Не знаю ни одного фаната Rust'а, который бы говорил, что он сейчас популярнее, чем десятки других языков.
Да, он крут, да его популярность растёт… Но до популярности питона или js ему расти и расти.
litwr2
Никто не упоминает факта, что в школах за рубежом для обучения программированию используют почти исключительно питон. Пока это сохраняется, популярность будет сохраняться несколько завышенной по отношению к качеству языка.
valemak
Паскалю это сильно помогло?
litwr2
Паскалить массово в школах стали прекращать с начала 90-х, потому как паскаль почему-то перестали поддерживать — как в сказке, как будто кто-то произнес волшебное заклинание и всё переключилось на яву. Но МГУ ВМК вроде до сих с паскалем дружит. Язык сам кое в чём до сих пор лучший. Учит абстрактно относится к данным, а не утилитаристично как с питоном или рубином, с множествами работать математически, а не по-программистки,… Поколение паскальщиков до сих пор во многом поддерживает Дельфи. Потом пошла система питон-ява, что и даёт нынешние несколько завешенные пики по этим языкам. Хотя и питон и ява очень даже достойные продукты. Но мне, например, Ruby предпочтительнее, чем Python.
vagon333
Ну, школота серьезный трафик не создает, не тот уровень вовлеченности.
Кстати, насчет языка в школе, у ребенка Java и C#:
— на Java все домашние задачи,
— на C# и Java факультативные классы (Game Design — Unity C#, Robotics — Java).
Т.е. без Python в школе.
litwr2
Интересно, это где так?
vagon333
www.pinecrest.edu
DmitryOgn
Хорошая школа…
Acuna
Все бы конечно хорошо и правильно, но как известно, Sun лет 10 судилась с Гуглом по поводу использования Java, в конечном итоге Гугл ей проиграл, но Гугл не был бы Гуглом, если бы не имел козырей в рукаве, они мне кажется совсем не горевали, и приступили к созданию ОС Fuchia и Dart — сильно JS-подобного языка и фреймворка Flutter для него, для которого уже написано рекордное количество модулей на все случаи жизни, оконфузился даже всеми горячо любимый Котлин. Почему? Потому-что на мобильном рынке имеется две оси — iOS и Android, и понятно что все мечтают о кроссплатформенности, чтобы не писать то же самое и для iOS c нуля, причем совершенно на другом ЯП и SDK. Кроссплатформенность уже реализована благодаря фреймворку Xamarin от MS на C#. И все бы хорошо, но Fuchia не будет поддерживать никаких сторонних ЯП, свиньи под названием Java от Sun им уже хватило с лихвой. Котлин туда же, плюс он не кроссплатформенный, вот и все, а уж какие в СМИ в те дни были эмоции, «Google выбрала для своих разработок российский язык программирования», 10 расшитых путиных из 10, бояра лилась рекой, я даже в те дне лишний раз новости не читал, и сейчас все котлинисты с неким стыдом в голосе спрашивают мол а что же теперь делать, как же наш горячо любимый Котлин, это же так модно-молодежно.
Это я все к тому, что хоть в статье речь идет о десктопной разработке, однако кусок мобильной разработки просто огромен и будет сильно сбивать статистику, поэтому в любом случае говорить о том, что "<название_языка> — полная замена С++ в будущем" как минимум узколобо. Я не знаю как этот маховик в конечном итоге раскрутится, я сам пишу для Андройда для души (я веб-разработчик), но учить новый языка каждый год тоже не хочется…
SirEdvin
Вы не поверите, но linux питон тоже не поддерживает. Все немного наоборот.
Acuna
Как наоборот? Нет, мне и правда интересно. Андройд пользует свое SDK на Java, результат этого оказался немного предсказуемым. Это же может ждать и все остальные языки, ибо нужно реально хотеть выстрелить себе в ногу, что выбрать, например, Xamarin на C#, который создан мелкомягкими, не, ну а казалось бы, Dart, как и JS, очень специфичный языки в плане синтаксиса язык, вот, пожалуйста, есть C#, который практически полностью похож на Java, еще и поддерживается многими архитектурами, пиши не хочу.
SirEdvin
Ну, как бы поинт был в том, что это питон поддерживает линукс. То есть создатели питона портировали питон на линукс, и вполне вероятно, гугл может законтрибьютить поддержку своей фуксии в питон и все будут довольны.
Опять же таки, довольно большая проблема, связанная с джавой (помимо того, что ее развитием занимается одна компания, в отличии от других языков, типо С++ и python) состояла в том, что гугл очень сильно подпортил создателем джавы планы, сделав форк их языка, назвав его джавой, а затем сказал, что «ой, простите, но вот обновлений к ней не будет». Конкретно в этом случае проблема была в том, что андроид не поддерживает джаву, это его сдк поддерживет совместимую с джавой реализацию. С моей точки зрения это был такой макретинговый ход гугла, что бы захватить большую аудиторию разработчиков, наплевав при этом на абсолютно всех, кроме себя. Что, как бы не очень хорошо.
С другими языками, при помощи которых можно писать на андроид ситуация другая — это они поддерживают андроид. Как-то так.
khim
Однако это то же, что сделал Oracle с разработками IBM (SQL). И Microsoft с разработками Digital Research (CP/M API… впрочем Digital Research отплатил ему той же монетой, когда выпуcтил DR DOS).
P.S. Вообще то, что в результате подобные вещи станут невозможными — скорее плохо… но тут уж ничего не поделать…
SirEdvin
С точки зрения простого разработчика, было довольно кошмарно, что после выхода java 8 гиганское количество библиотек так и остались на седьмой джаве, что бы поддерживать андроид или использовали жуткий костыль под названием retrolambda.
А так норм.
Groramar
Они вверх не совместимы? Я просто на той же Delphi привык, что крупных проблем, как правило, нет. Были как-то давно при переходе ansi > unicode. Сейчас юникодовый код почти весь. Больше такого глобального изменения в коде как-то не наблюдалось. Версию подняли, ну может дефайнов пяток обновили, работает дальше с минимальными правками. По собственному опыту переноса больших проектов на старшие версии.
SirEdvin
Ну, Java 8 ввела довольно популярные фишки в язык (одна из них, это лямба-функции, на замену анонимным, которые работали довольно медленно), но они не поддерживались в джаве на андроид. И как бы из-за этого было большое количество библиотек не использовали новые фичи, так как использовались еще и для андроида.
Acuna
Ого! Вон оно что, я даже не знал, спасибо. Однако Гуглу и без того разработок хватает, кроме как тот же Питон натягивать. Ладно Котлин, он к нему питает теплые чувства, ибо на Яву похож.
DmitryOgn
>> Котлин туда же, плюс он не кроссплатформенный
Really? :)
Acuna
А разве нет?) Я, если честно, не видел на SO вопросов касаемо разработки на Котлине под iOS, например. Я вообще сомневаюсь можно ли на iOS внедрить JVM и будут ли они (Apple) этим заниматься. Да, адаптацией ее под разные платформы занимается Sun, а не вендоры процов, но ведь ее каким-то образом нужно развернуть.
MaxVetrov
stackoverflow.com/search?q=iOS+Kotlin
stackoverflow.com/questions/tagged/android+ios
blog.kotlin-academy.com/multiplatform-native-development-in-kotlin-now-with-ios-a8546f436eec?gi=9b40cf0335be
Acuna
Ого! Хорошо, принимаю, я себя истиной в последней инстанции не считаю, я вообще веб-разработчик, а мобильной разработкой занимаюсь для души, хоть и увлекся этим дело что-то. Ну хорошо, а зачем тогда им нужен Dart, тот же Flutter, это же полная расфокусировка на целях, должно же быть какое-то объяснение этому, ладно мы, например, учим разные языки для разных областей их применения, никто не считает странным что разрабы умеют в разные языки, скорее наоборот, но тут вообще одна область, неужели есть смысл писать одно и то же на разных языках. Котлин крут, кроссплатформеменен, ну дак и развивайте его, деля из него вообще универсальный ЯП для всех областей вообще, тем более это возможно, как оказалось. Или это индусу Пичаю заняться нечем просто?
DmitryOgn
Назвать «не кроссплатформенным» язык с базовой библиотекой, живущий на трех платформах (JVM, JS, native), каждая их которых OS-независимая… Сильное заявление :)
maxzhurkin
Чего-то в голосовалке не хватает, чего не пойму, а голос отдать не смог
vvpoloskin
Не хватает «наплевать, если надо, перейду на другой инструмент»
maxzhurkin
Нет, в моём случае это «Не знаю, что случилось с Fortran, LISP и Ada, да и к Python не имею отношения»
Druu
Достаточно очевидно, что любой язык повторит судьбу Fortran, LISP и Ada, рано или поздно, так или иначе.
xakepmega
ПИТОН ПРЕЗИДЕНТ МИРА УРАААА