This is the 1st assignment of CS193P from Stanford University Online Course