ТОЛЬКО НЕ С PYTHON. Если с него начинать, ничему не научитесь. Начинать нужно с компьютерных основ программирования, представление чисел в компьютере, архитектуры компьютера, языка Си. После понимания Си вы сможете понимать другие языки программирования. Именно понимать, а не бездумно тыкать или использовать готовые решение, как получится, если начнете с Python.
Начни с python, потом можно в c# или java учебнички почитай паралельно создавая что то для практики. Чем больше будет практики тем лучше разбираешся, да и ошибки начнешь видеть.
Начать? С качественного учебника программирования. Именно программирования, а не какого-то языка. А язык будет тем, который используется в этом учебнике для объяснения алгоритмов. Потому как программирование - это не написание кода, а нахождение оптимального алгоритма достижения заданного результата. И язык - не цель обучения, а всего лишь инструмент для записи найденного алгоритма в понятной компьютеру форме.