Получи случайную криптовалюту за регистрацию!

В какие языки не стоит идти новичку и почему Про то, какие яз | Digital Ниндзя

В какие языки не стоит идти новичку и почему

Про то, какие языки стоит выбирать новичку, я рассказал в этом видео. Дисклеймер: всё, что описано ниже — для тех, кто заходит в IT без образования в computer science. Как я считаю, в таком случае нужно руководствоваться скоростью и идти воспроизводимым путём.

Перед самими языками нужно объяснить значение одного термина, что значит «низкоуровневый»/«высокуровневый». Уровень в данном контексте — это уровень абстракции над железом. Чем ниже уровень, тем ближе программист к железу. То есть на некоторых языках реально приходится писать команды процессору, аллоцировать/очищать память, запускать/останавливать процессы и так далее. Высокий уровень абстракции языка позволяет сосредоточиться на бизнес-логике, а о всём остальном язык заботится сам.

C/C++. В Сях нужно управлять памятью — один этот факт увеличивает срок обучения в два раза. Эти языки сделаны, чтобы выжимать всё из железок, 99% информационных систем не требуют это.

Go (Golang). По моему скромному мнению — язык будущего и лучший выбор в качестве ВТОРОГО языка для бэкендера. Но для новичка — не подходит. Там есть несколько низкоуровневых концепций, которых на первых порах необходимо избежать. На Go мало джуновской работы. Этот язык идеально подходит для высоконагруженных микросервисов — а значит, там нужно и разбираться в алгоритмах, и оптимизировать работу базы и знать, как решать ещё 100500 проблем.

Ruby. Руби — симпатичный язык. Во многом, похож на Python. Но он не смог набрать критического объёма. И, видимо, Python выдавит его. С работой будут большие проблемы. Кто-то скажет: так это же круто, низкая конкуренция. Но представьте, что у вас задача найти работу в отдельной локации, например в какой-то стране. Вариантов может совсем не оказаться.

Rust. Rust — это язык, который сочетает скорость C++ и удобство написания/чтения кода от высокоуровневых языков. Комьюнити считает, что Rust убьёт C++. Но это произойдёт не в ближайшие годы. Рейтинг TIOBE: плюсы больше Раста в 20 раз. А ставку надо ставить на тот язык, который уже является большим.

Objective-C. Используется для написания приложений под iOS. Swift подвинул Objectibe-C, и новые проекты на нём практически не начинаются. Ну и вдобавок он ещё и низкоуровневый.

Visual Basic, Perl, Fortran, Delphi — всё это, во-первых, узконишевое, во-вторых, умирает. Если выбираете эти языки — оказываетесь на падающем самолёте.

1C. Если выбираете 1C, то оказываетесь запертыми в рамках России, максимум — ближнего зарубежья. Задачи на 1C очень странные, от них можно устать за несколько лет. Я бы выбирал этот язык в одном случае — у вас нет английского, бухгалтерский бэкграунд, и вы точно понимаете, что всю жизнь будете жить в России.

Solidity. Да простят меня все криптаны и криптоанархисты, но я считаю, что блокчейн, как технология, очень узкая. У меня есть про это пост. А чем более узкая технология, тем меньше шансов для новичков там. Solidity можно учить вторым или третьим языком, но начинать надо с более мейнстримных и широких технологий.

Языки, не вошедшие в этот список, настолько небольшие по размеру, что я даже не буду их упоминать. Новичок без computer science выбирает из 7 языков: JavaScript, Python, PHP, Java, C#, Swift, Kotlin.

PS: старое видео про языки программирования убрано с канала, так как в нём содержались фактические ошибки, которые я поправил в новом видео.