Make the app more responsive
In a typical «have as many course activated as possible» state, there can be 25 courses, which contains about 15 "weeks", with about 5 resources each. In the end, it means ~1700 resources, with their accompanying widgets. This means that GTK can have some trouble to animate it all.
It may be interesting to store the result of a course (in each course's Course*) and load on demand.