Найти тему
Робототехника

Какой язык программирования выбрать первым и как людям впаривают курсы по любому из языков

Эта статья предназначена прежде всего для тех, кто стоит перед выбором с какого языка начать программирование и почему именно с него.

Начну прежде всего к формированию отношения к языку программирования как к инструменту. То есть любой язык программирования - это инструмент.

Если провести простую аналогию, то как и любой нож инструмент, так и язык программирования - инструмент. А теперь задумайтесь, какой нож вы будете покупать и учиться им пользоваться. Если вам нужен перочинный ножичек, то вряд ли вы будете покупать мачете. Даже для чистки картофеля нужен свой нож и он явно будет отличаться от ножа мясника.

Итак, первый пункт с которого стоит начать выбор - это для чего вам нужен язык программирования. Естественно, что на первом этапе сложно сказать куда вы пойдете трудиться и чем будете заниматься. Но тогда можете смело начинать с Си или Паскаля. (предвижу массу комментариев, но если вы не знаете для чего вам язык, то стартуете с этих).

Пункт второй, в первую очередь важны не сами языки, а важно алгоритмическое мышление. Если его нет, то стоит начать сперва с него. Как минимум стоит научиться понимать базовые алгоритмы и умение формировать их. Даже если взять обычную сортировку, то в питоне она решается достаточно просто - применением метода sort к списку. Это классно и очень удобно, но если вы не понимаете сколько тактов у вас занимает сортировка простых массивов. То как вы будете оценивать работу более сложных алгоритмов? То есть, опять упираемся в учебные языки.

Пункт третий, скажите, а как определить сложность языка. Вот у меня есть Ассемблер, Бейсик, Паскаль,, Си и Питон (можете еще и свои добавить). Какой из них будет сложнее? С одной стороны многие сразу скажут, что Ассемблер, так как в нем требуется дополнительное знание еще и архитектуры. Но на самом деле команд в нем намного меньше чем в том же Си или Питоне. И вообще приходим опять к первому пункту, А как сравнить Java и Бейсик. Какой из них сложнее. У одного кучу различных фреймворков с которыми отдельная свистопляска, другой уже давно не используется, или трансформировался в объектный язык.

Как вы понимаете, здесь важен подход к выбору с точки зрения конечной цели и решения её задач. Если у вас есть цель просто научиться программировать, то один подход, Если вы планируете устраиваться на работу в конкретную сферу, то обращайтесь к кураторам проектов в этой сфере.

Ну а теперь к теме из названия. Задача любой системы платного обучения - впарить вам курс. Да да, именно впарить, так как при должном желании вы можете самостоятельно освоить основу и даже совершать маленькие проекты. Курс стоит брать тогда, когда уже точно определились с конечной целью. Тогда у вас будет правильный вектор обучения и вы сами будете замотивированы углубляться в детали.

Если мне как маркетологу (предположим на минуточку) нужно впарить вам курсы по Питону, то я найду 1000 плюсов почему именно он. Обойду несколько форумов, на которых подобные вопросы поднимаются и составляют собственный список "ЗА" Питон. После этого остается только собрать воронку продаж и запустить процесс. Аналогично и с другими языками. Но, как правило, будут пиариться те курсы, по которым сейчас есть спрос и предлагаются большие зарплаты на рынке труда(но это опять дело очень условное).

Не могу сказать, что курсы это плохое дело, совсем нет, но если вернуться к аналогии с ножом, то вам будут впаривать тот нож, который завалялся на складе, а не тот, который нужен вам. Потому вас будут убеждать, что именно мачете удобно чистить картошку, так как он с сахарным тростником легко справляется, то с картошкой еще проще.

Вспомнилась одна давняя история, когда на одном из общественный мероприятий в одном ДК, была ярмарка и на ней продавались разные потребительские товары. В том числе и фонарик с ручной зарядкой в виде скользящего магнита внутри катушки. И продавец. нахваливая эту штуковину(а как иначе), случайно ляпнул(явно не подумавши), что очень удобная вещь и в поход можно взять такой фонарик, и в пещеру с ним слазить. На что я его тут же спросил, а он сам-то лазил хоть в одной пещере. Там иногда двух рук не хватает, а вы предлагаете еще одну из них занять фонариком, который в "шкуродере" особо не потрясешь. Естественно, что он нечего не ответил, у него была цель продать их как можно больше. И ему абсолютно пофиг, что это вещь не практична.

Так же и здесь. Если вы не знаете чего хотите, то не стоит бросаться покупать первый попавшийся курс, 40% стоимости в котором вы платите за то, чтобы вас раскачали на покупку(токова реальность). Начните с бесплатных. Тот же Stepik, например, предлагает вполне адекватные бесплатные курсы для старта. Выбор огромен.

-2

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

У меня все, благодарю за внимание.