Обычно мы составляем рейтинги лучших языков программирования: самые популярные, самые производительные, самые востребованные. Но сегодня предлагаю взглянуть на ситуацию с другой стороны.
Я составил список из пяти языков, которые, по моему мнению, являются худшими в 2025 году.
Кто пишет: Миша Ларченко, engineering manager. Живёт в Амстердаме. Ведёт блог на YouTube.
Дисклеймер: Этот рейтинг — исключительно моё мнение. Если вы не согласны и хотите поспорить — приглашаю в комментарии.
5 место. R
Это довольно старый язык программирования, он появился ещё в 1993 году. Он open source, то есть каждый может его использовать и предлагать изменения. Сейчас его чаще всего используют для работы со статистикой и большим объёмом математических данных.
Хотя R хорошо справляется с нужными задачами, у него есть ряд недостатков.
- Синтаксис, который многим не нравится (мне в том числе). Его очень сложно выучить.
- У R начинаются проблемы с производительностью при большом объёме данных.
- Им сложно пользоваться без хорошей математической и статистической базы за плечами.
4 место — Java
Хотя Java — это супер-популярный язык и используется в большом количестве приложений — особенно в крупных компаниях — мне он всё равно не слишком нравится.
Когда большое приложение написано на Java, со всем этим OOP внутри и так далее, то такое приложение очень трудно поддерживать, читать и разрабатывать дальше. Много кода на Java превращается в месиво, в котором очень сложно разобраться.
При этом Java всё ещё остаётся и наверняка будет оставаться в будущем одним из самых популярных языков в мире. Он будет широко использоваться и развиваться.
Поэтому с Java у вас ещё долго будет работа.
3 место — Ruby
На нём можно делать много прикольных штук, и он был в своё время очень популярный, но сейчас его всё меньше используют. Приложения на Ruby легко поддерживать и не сложно писать. В этом плане он действительно удобный.
Но у этого языка есть ряд серьёзных недостатков. Самый большой — приложения на нём работают медленнее, чем на C или C++. И кроме этого, сложно создавать новые фреймворки и адаптировать новые штуки, потому что экосистема Ruby развивается медленно и часто отстаёт от современных требований.
2 место — Assembler
Я думаю, все вы его видели, и многие из вас даже пытались им пользоваться. Assembler — очень низкоуровневый язык программирования. Его сложно выучить и сложно использовать. Хотя есть мнение, что настоящий разработчик должен его знать, я бы советовал даже не обращать своё внимание на Assembler.
Есть возможность выучить — учите, но не используйте его для большинства приложений, которые вы пишете. Исключение — экстренные случаи, когда нужно очень быстрое приложение и требуется максимальная оптимизация.
1 место — Visual Basic for Applications
У этого языка очень классная идея — он создан для того, чтобы внутри приложений добавлять новый функционал, писать какие-то штуки. В основном он был популярен среди тех, кто пользуется Microsoft Office.
Когда я учился в школе, я использовал его для того, чтобы внутри Excel делать тесты для одноклассников, чтобы писать чекбоксы. Тогда это казалось прикольным. И сегодня люди всё ещё активно кастомизируют Microsoft Office с помощью Visual Basic for Applications.
Но его функции очень лимитированы, на других языках можно сделать намного больше. Тем не менее, это несложный язык. Поэтому, если вы хотите делать интересные вещи внутри Excel или Word — обратите внимание.
—-
На самом деле, на мой взгляд, «плохих» языков программирования куда больше. Тот же Objective-C — практически мёртвый, визуально отталкивающий и, как мне кажется, изначально не должен был выглядеть так, как выглядит. Или Perl и PHP — с их запутанным синтаксисом и историческими изъянами.
Но из всех существующих именно те пять языков, о которых я говорил выше, я считаю самыми неудачными.
Не согласны? Пишите в комментариях — обсудим.
Что ещё почитать про работу в ИТ:
- Учить Rust и вкладываться в 3D-печать. Что делать, чтобы не потеснил ИИ — рассказывает разраб с 15+ опытом;
- «Просто будь шестерёнкой». Техлид эмоционально рассказывает, почему работа в ИТ становится адом;
- Как быть успешным джуном и не завалить испытательный срок.
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.
Топик явно создан ради хайпа и комментариев. Предлагаю не вестись на эту провокацию и не реагировать.
нет уж, VBA в обиду не дадим! "Простой язык с очень лимитированными функциями", фи! Да и брейнфак не освещен еще.
рука-лицо
Реально шокирующее утверждение
наброс на вентилятор, обыкновенный
java в 2025 это самый вероятный способ найти норм работу
Тс-с-с. В этом и фишка.
Java: возможно Kotlin (Android приложения, например) и(ли) конкурент C#
Ruby: Python в одном с Ruby сегменте, а не C c C++ :D
Assembler: так и "запишу" что Миша не осилил в асм - сфера узкоспециализированная, но она есть и в основном достаточно понимания дизассемблированного кода (C++/C) - вот для этого в IDE присутствует дизассемблер (Visual Studio, CLion, Qt Creator)
Пользователь отредактировал комментарий 10 июля 2025, 14:46
Не беря во внимание язык программирования, после слов про ООП, что такое приложение сложно поддерживать - дальше не читал. Ну попробуйте почитать большое приложение без ООП. Удачи в этом))
linux kernel enters the chat
Са структуркамі што трымаюць указальнікі на функцыі
ООП нет в C, Rust, Go (не классический ООП, но модульный с расширяемыми структурами)
в Spring фреймворке АОП (+ Java ООП)
Пользователь отредактировал комментарий 10 июля 2025, 18:05
В расте есть ООП. Тайпклассы - это ООП в фунциональном стиле. А наследование - это не ООП, это злокачественная опухоль.
Также как и в Go. Подход взят из C, где нет ООП, но есть записи. ООП полиморфизм, наследование, абстракция, инкапсуляция. Есть аспекты из ООП.
Комментарий скрыт за нарушение правил комментирования.
Правила тут, их всего 5
В топе худших языков программирования нет пит**она, но зато есть ассемблер...
Автор видимо либо рассчитывал собрать лайки с вкатунов, либо сам является таковым.
ps
Даже несколько самых простых программ, написанных на ассемблере, дают больше понимания базы, чем десяток прочитанных "умных книг".
Как минимум в целях обучения - это один из самых эффективных языков.
Конечно, если цель стоит выучиться на программиста, а не на скрипте**ра.
Ну да, ассемблер ребята это ерунда до тех пор пока не узнаешь скок платят за него... особенно в киберсекюрити и прочих темах...
Наконт Ruby смешна – "...ряд серьёзных недостатков. Самый большой — приложения на нём работают медленнее, чем на C или C++. ". Пры гэтым наступны "горшы" язык гэта Assembler, лол.
"Приложения на Ruby легко поддерживать и не сложно писать" і адразу "сложно создавать новые фреймворки и адаптировать новые штуки"
[Часть комментария скрыта за нарушение правил общения. Вот они, их всего пять: https://devby.io/news/comments-2024]
Пользователь отредактировал комментарий 10 июля 2025, 17:44
Ассемблер в этом списке выглядит неуместно. Он нужен для работы в процессорных компаниях типа ARM или Syntacore (как бы будете иначе писать тесты для процессора?), для компаний которые разрабатывают операционные системы (на каком языке вы собрались писать обработчик прерывания?), для разработки компиляторов (как без знания ассемблера писать кодогенератор?) - и для этих позиций ассемблер незаменим и будет там всегда пока существует архитектура на базе фон-Неймана. Вместо ассемблера я бы внес в список Perl.
Не смотрю уже этого блогера так как палил его на том что он скрывывает коментарии на ютуб где он ощибается в видео или даёт полную дезинформацию. Я не могу воспринимать источник где если информатор ошибается, он не признаёт свои ошибки (записывает видое или пишит под коментарием). А так думаю что блогер подымает хайп и раскручивает канал чтобы заработать. И в данной теме не могу воспринимать имформацию по вышеописанным причинам.
Пользователь отредактировал комментарий 10 июля 2025, 23:35
Эммм... Давайте попробуем простые аналогии:
Допустим мне нужно провести некие земельные работы на своем участке:
если вскопать грядку под любимые пионы в 20 кустов то я возьму лопату. Я не люблю лопату, это устаревший инструмент, а пользоваться им тяжело и не эффективно. Но в данном случае я буду дольше готовить плуг, а потом его очищать, поэтому лопата в данном случае - самый подходящий инструмент. а вот если мне нужно подготовить грунт под газон после стройки, да еще и выровнять ландшафт, я пойду искать трактор, здесь и плуг мне не годится. При этом, трактор - не абсолютный идеальный, сверх эффективный инструмент, и он не годится для подготовки грядки пол пионы. выкопать яму под ленточный фундамент самодельного курятника? Скорее всего, снова пойду за лопатой. а вот если речь идет о подготовке котлована для гаража с подвалом, где я хочу хранить соленья, то я, вероятно, пойду за экскаватором.
При этом я, как владелец участка, если только я не полицейский на пенсии по выслуге лет, полный сил и с огромным количеством свободного времени, скорее всего, я не буду это все делать сам, а найду специалиста и при этом мне все равно сделает ли он работу лопатой, трактором или экскаватором, однако, меня все же будет интересовать ряд вещей, которые повлияют на выбор им инструмента:
чтобы работа была выполнена с ожидаемым качеством и в ожидаемый срок (поэтому, я не найму человека, который возьмется выкопать котлован под дачный дом с подвалом лопатой) чтобы мастер не разворотил все вокруг, если без этого можнл обойтись (поэтому я откажусь от безумца, берущегося вскопать грядку под пионы трактором) сколько это будет стоить и т.п. При соблюдении этих требований, мне без разницы какой будет инструмент.
Теперь о том, что делать человеку, который зарабатывает на жизнь такими услугами.
У него есть цели:
заработать наибольшее возможное количество денег однако, при сохранении безопасности и здоровья желательно, чтобы работа нравилась и приносила удовлетворение.
Что этот человек выберет в качестве инструмента, что ему покупать и осваивать:
если в районе, где я работаю, в основном дачники, выращивающие пионы и морковку, скорее всего, я куплю лопату, некоторый дополнительный ручной инструмент, плуг и прицеп для моей легковушки. если здесь идет активная стройка и все строят дома, сараи и гаражи, я обзаведусь экскаватором и буду его осваивать если каждый дачник считает своим долгом иметь за окном мини поле для гольфа, я куплю трактор. При этом, если рядом со мной много других землекопов с лопатами, между нами высокая ценовая конкуренция и работа эта приносит только средства на еду и воду, я поищу другую нишу для своих усилий и, например, куплю трактор даже не смотря на то, что лопата мне нравится больше и клиентов на трактор не так много - буду работать по чуть-чуть, но с максимальной прибыльностью или поеду колесить окрестности в поисках любителей плоских газонов и полей для гольфа.
PS: Таков мой дилетантский взгляд CIO
PPS: К слову об ассемблере: если Вы захейтили скальпель как инструмент потому что он маленький и работать им муторно, это означает не то, что скальпель плох, а то, что Вы - не хирург, а повар и инструменты для задач в поле Вашего зрения - это набор ножей побольше. Но скальпель обязательно кому-нибудь пригодится и есть масса задач, которые Вашими ножиками не решить. И это, так же, и не потому, что Ваши ножи плохие, но может так оказаться, что Ваш сосед, работающий скальпелем, за час зарабатывает больше, чем Вы - за день.
Пост создан ради хайпа, желаю автору больше не притрагиваться к темам IT. Ни одного обоснованного пункта что тот или иной язык плох.
Шта???? R - медленный в большом объеме данных ?
При длительных итеративных вычислениях (например, от 1000 итераций и более), R начинает подключать внутренние оптимизированные механизмы, например векторизация, JIT-компиляция и т.п.. В итоге, R способен обогнать Python по скорости.
Поразительно! Как можно интерпретатор с предварительной компиляцией ставить в один ряд с ассемблером, который языком по определению не является. Что происходит с программистами, кто их учит такой белиберде?