Знаний у вас достаточно для начала изучения C, потом перейти на С++ (чтоб понимать, где проходит граница между этими двумя языками, так как для многих она размыта).
Решать маленькие задачи школьного и университетского уровня. Потом сделать что-то побольше. Разучить идею БД и начать работу с ними. Разучить ООП, патерны. Потом дополнительные библиотеки: STL, Qt, boost. В начале изучения языка рассмотреть компьютер более детально: узнать о работе процессора, о виртуальной и физической памяти.
Так же, когда учишься, «варишься» среди людей тойже специальности. От них можно узнать что-то новое, задать вопрос. Но никто не мешает водить дружбу с хорошими программистами.
Часто в университете можно затронуть то, что сам бы не затронул или затронул, но не скоро.
Решать маленькие задачи школьного и университетского уровня. Потом сделать что-то побольше. Разучить идею БД и начать работу с ними. Разучить ООП, патерны. Потом дополнительные библиотеки: STL, Qt, boost. В начале изучения языка рассмотреть компьютер более детально: узнать о работе процессора, о виртуальной и физической памяти.