Самое простое на мой взгляд - PHP. Поскольку на нем задачи бэкэнда до средней сложности можно решать прямо из коробки на чистом языке, без освоения фреймворков. Которые обычно, по крайней мере все мне известные, сложнее языка на котором базируются.
Недостатка этого варианта два. PHP это специализированный язык именно для Веб-бэкэнда а не язык общего назначения. А теорию программирования вообще лучше изучать на языках общего назначения. Хотя с другой стороны PHP вполне классический объектно-ориентированный язык с возможностью также использовать процедурное программирование без ООП и с нестрогой типизацией. Т.ч. в принципе подходит и для изучения теории программирования в том числе, хотя и не лучший вариант.
Второй недостаток PHP считается уже несколько устаревшей технологией. Хотя крайне активно используется в небольших и средних задачах и не особо собирается уходить.
Под PHP есть хорошие фреймворки например Laravel и Symphony. В связке с ними это уже вполне серьезное решение для задач средней сложности и где-то до границ уже большого и сложного.
Более современный вариант и как раз с языком общего назначения Python плюс один из фреймворков под него, самый популярный Django. Этот вариант я не буду описывать особо подробно поскольку не имею опыта разработки на этом фреймворке. Но Python крайне удобный и популярный язык для первоначального изучения программирования. И потом он красив. Изучив вряд ли пожалеете, да это и не сложно.