Вы написали очень правильный на мой взгляд комментарий - сначала выбираем первую отрасль разработки (например Веб-разработка) а потом язык. Хотя есть и тоже неплохой альтернативный вариант - начать с классики например C++ или Java. На нем изучить теорию: парадигмы программирования, классические алгоритмы, структуры данных… А потом уже специализироваться. Но этот путь все же подразумевает длительное обучение, что-то типа университетского.
По поводу Веб-разработки, да она имеет репутацию отрасли с одним из наименьших порогов вхождения. А кроме того она пожалуй самая массовая. Поэтому по ней огромное количество литературы, видеоуроков, курсов и т.п. Еще она не особо требовательна к знанию фундаментальной теории на первых порах, т.е. того что я перечислил выше. Правда с оговоркой. Это вполне себе программирование. Т.ч. потом, когда вы будете участвовать уже в сложных проектах, это вам все равно понадобиться.
Ну я думаю вы уже изучали вопрос и знаете, что веб-разработка делится на фронтэнд и бэкэнд. Можно не выбирать что-то одно а изучать оба это называется full stack. Я именно так и осваивал веб-разработку, но я пришел в нее уже опытным программистом в другой области. Но это точно интереснее. Осваивая то и другое традиционно начинают с фронтэнда. Во-первых чтобы попробовать сделать что-то полезное все равно нужна верстка. А это часть фронта. А во-вторых чисто психологически во фронте вы раньше увидите первый результат. Поскольку там можно сделать что-то либо вообще без бэка либо со сторонним готовым бэком. А бэкэнд поэтому и называется бэкэндом что сам по себе не виден. Но что фронт однозначно проще бэка - заблуждение. Бэк более классическое программирование больше похожее на программирование в других отраслях. Я фуллстек не только изучал но и работаю, и фронт у нас бывает очень серьезным.
Собственно языки. Сначала верстка, т.е. HTML+CSS. Хотя это и декларативные но тоже вполне себе языки. Но главное конечно не формальная отговорка а то, что без этого вам дальше ничего не понять на фронте. Первый императивный язык на фронте будет JavaScript. Там ему проще сказать что нет альтернативы. Не вдаваясь в подробности, альтернативы есть но применяются в разы реже, а главное все равно требуют сначала знания JS. И вот здесь первая засада. JS - весьма специфичный язык с редко где еще применяемой прототипной парадигмой на базе которой частично воссоздана объектно-ориентированная. Поэтому на его примере будет сложновато изучать классику программирования. Но многие с него программирование начинали и ничего. А классику, ту ее часть которая непонятна на JS, структуры данных например понятны, ну подучите на втором языке, который освоите :-)
С бэкэндом. Ну здесь масса вариантов. Здесь пожалуй самое главное насколько они применяются в простых проектах подходящих для неопытного специалиста. Я бы выделил два: PHP или Python + фреймворк Django. Первый некоторые считают устаревшим, но никуда он не осбирается ухлдить. И он крайне полезен как раз фронтэндеру. Поскольку посадка сайтов на CMS задача фронтэндера. А большинство популярных CMS на PHP. Это классический объектно ориентированный язык, но не общего назначения. А вот Python как раз замечательный вариант для первоначального освоения теории программирования. Пуристы считают что для этого лучше применять языки со строгой типизацией. Например C++ или Java. Потом уже в следующим языке пересесть со строгой на нестрогую типизацию проще чем наоборот. Но это несущественно.