Лекции по программированию - это скорее такие вешки, вокруг которых уже добирают знания самостоятельно. И да, все-все через практику, гугление, изучение исходного кода, через ошибки-отладку. Даже самые простые вещи, которые одной строкой в лекции идут, могут быть на самом деле довольно сложными и иметь много особенностей использования. А уж если добраться до оптимизации - то и вовсе море знаний специфических нужно, и ни на одной лекции про это особо не расскажут.Что там говорить, у сына на первом курсе были какие-то простейшие программки для консоли на C++; сами программки - тьфу просто, но там тааааакая беда с кодировками при вводе-выводе и, в частности, с русскими символами, что и гугление помогает очень не сразу. Зато в результате знания гораздо лучше закрепляются, и опыт - поиска информации, тестирования, отладки - нарабатывается очень хорошо.