Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как начать программировать? С какого языка программирования начать? Какой язык выбрать для профессионального программирования?

ТехнологииПрограммированиеКомпьютеры
Евгений Муравьев
  · 10,0 K
Парабола

Прогресс становления разработчика имеет «параболический характер». А опыта — «гиперболический».

A: Сначала энтузиазм находится на вершине параболы: вы написали hello world на нескольких языках и поняли насколько программирование просто. Вы продолжаете играться, накапливая знания. Теперь вы ищете «боевой опыт».

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

C: Вам очень трудно, вы уже жалеете что ввязались в это. Крайне высок риск забить на идею, бросить разработку и вступить во Французский Иностранный легион — дабы не видеть компьютеры хотя бы четыре года.

D: Добро пожаловать в долину отчаяния! Здесь вы без шуток близки к смене рода деятельности, но и как никогда близки к «просветлению», однако еще не видите этого.

D1: Если вы преодолели «долину», ваш опыт (гипербола) наконец-то встретился с энтузиазмом (парабола). Вам все ещё трудно, но вы уже понимаете что неразрешимых задач не существует.

С1: Вы написали Фибоначчи.

B1: Вы научились читать код, а не только писать. И поняли зачем нужны тесты, возможно даже поняли чем интеграционные отличаются от юнит-тестов.

A1: Ваш опыт и энтузиазм уже давно идут вместе. Вы работаете программистом днём, а вечером читаете СИКП. Поздравляю, вы — разработчик!

А если серьёзно, не имеет абсолютно никакого значения какой язык вы выберете. В сущности они очень похожи (есть два больших семейства: потомки ALGOL–Assembler — C подобные, и S-exp–лямбда исчисление — Haskel, Lisp). На старте, порог вхождения, что в С++, что в JS — примерно одинаков, разве что более сложный язык принесёт больше дивидендов в будущем.

Просто выберите предметную область в которой хотите работать (web, бизнес, gamedev), а языки за вас уже выбрало сообщество; в каком-то смысле надо выбрать сообщество, а не язык.

И, да. Виктор Павлов очень прав когда говорит об SQL. Но я добавлю, что лучше учить не SQL, а принципы структурирования данных, одним способов работы с которыми является SQL.

1 эксперт согласен
Компуктерный саинист, мамкин кибертеррорист  · 4 окт 2019
Начать программировать легко. Сначала стоит определиться с тем, какие задачи вы хотите решать своим кодом.  Если это программирование микроконтроллеров, то однозначно Assembler/Cи.  Если хотите писать операционные системы, драйвера и прочее низкоуровневое ПО, то Си/С++ (Assembler тоже не помешает).  Если не хотите зависеть от операционной системы при написании своих... Читать далее
Евгений, вам нужно определиться с тем, что именно вы хотите разрабатывать. Мобильные приложения, игры, веб-сайты, системные приложения или что-то еще.  Исходя из этого можно будет начинать изучать платформу, язык, Workflow разработки, и всё сопутствующее. Просто для развлечения можно попробовать JavaScript. Он простой, по нему много информации, и не нужно заморачиваться... Читать далее
Веб-разработчик, натуралист, журналист  · 2 февр 2016
Стандартные советы делятся на 2 категории. Одни предлагают начать с PHP потому, что он достаточно легко даётся новичкам. Другие предложат C, C++ - это намного серьёзнее. В реальности лучше начать с SQL. Это язык запросов к базам данных. Например все ответы и вопросы на этом сайте хранятся в базе данных mysql. На этом сайте обращение к базе данных и их обработка лежит на... Читать далее