где получитъ опыт програмирования студенту
давайте попробуем провести параллель некоторую. перефразируем ваш вопрос в "где получить опыт разговорного общения на аглицком/немецком/японском/...студенту/комуугодно".
и здесь советуют: переведите для начала самостоятельно какой-нибудь стиш! это будет круто!
возможно, что и круто, но все же думаю, что если хотите правильно и бегло научиться пользоваться языком, вы просто обязаны усвоить языковые обороты, идеомы и пр. а это лучше всего получается, когда общаешься с образованными носителями этого языка, для которых он - родной.
аналогия, конечно, вещь относительная, но здесь очень применима. самому начинать какой-то "проект" на гитхабе - тупиковый вариант. также не факт, что вы научитесь чему-то, если попадете в "реальный проект", т.к. там тоже может оказаться 90% физиков/лириков ("я вообще-то не программимст"), и от них вы можете нахвататься всякой фени. приходилось видеть, например, в "серьезном коде" такое:
void foo(){
int *a = new int();
..
}
даже delete a почему-то было упущено.
за такое вешать следует. лучше - на площади с оглашением приговора, а он куда-то ушел с отличной рекомендацией.
в общем, хорошие книги выбирать нужно, хорошие команды, хорошие образцы кода, ... в общем, думать. желательно не тупой стороной головы. но это - если заниматься этим предполагаете. если нет - то и опыт вам как бы зачем?