In every programming intensive course I took as an undergrad CS major, the programming projects were original. The themes are the same (the linked list project, the balanced binary tree project), but the professors came up with original project specs every time.