update course fn