Я начинал писать на Бейсике, перепечатывая программы из журнала "Радио"... Не думаю, что Вам это будет актуально.
Программирование складывается из собственно написания кода (учится за месяц по любой книге), алгоритмов (учится всю жизнь, нужен правильный склад ума, что то вообще придумывать с нуля приходится, хоть и редко) и знания предметной области. в которой собираетесь программировать. Еще есть понимание того, как работают все прослойки и собственно железо, это позволяет писать программы, работающие быстро, но сейчас эта область неплохо компенсируется мощностью железа.
И главное, как правильно написали, пишите программы.