Shout outto MIT open courses, and Stanford online for pioneerig this.