Добавлю чутка) Язык это лишь инструмент. Но инструментом нужно пользоваться, а что бы его правильно использовать нужна теория не языка, а теория программирования(в зависимости от задачи). На счёт веб-программирования, то тут вам нужно познакомиться с базами данных(да и вообще с вариантами хранения информации, ибо вы всегда во время разработки будете встречаться с некими "хранилищами информации"). Дальше, если уж вы решили заняться веб-программирование, вам желательно представлять что такое HTML. Многие советовали CSS, ну тут на любителя. Если вы захотите заняться вёрсткой - то не составит труда изучить и CSS. JavaScript тоже нужно знать, тут без него никак в наше время
Но писать на JavaScript полноценную CMS, ИМХО, велосипедостроение. Я не ковырял пока NodeJS, но всё равно думаю пока рановато что то серьёзное писать и стаивть на продакшен. На счёт php, ну не знаю, тут дело вкуса, мне лично больше нравится python. А вообще, что бы проблем особых проблем не было, то следующая связка универсальная:
Языки разметки(Html+Css)+
JavaScript(интерактивность и много других вкусных фич)+
Базы Данных(великое множество, не буду перечислять все)+какой то ещё один язык, приведу лишь примеры возможных и наиболее популярных: Python(ну не могу я php на первое место постаивть), php, Ruby, Perl, Java.
Так же не забываем про web framework. Ведь в веб-программировании на сегодня всё больше влияния оказывает не язык, а фрэймворк
Много ли народу знало про ruby, пока не появился RoR? А если в php не было фрэймворков, то лично я, наврят ли бы даже смотрел в его сторону(не хочу превратить тему в холиварную, поэтому промолчу про это
)
Вобщем как то так)