CEMC Courseware

This site contains curricular resources developed through the Centre for Education in Mathematics and Computing (CEMC) by experienced teachers in partnership with faculty members and multimedia developers from the University of Waterloo. The materials contain lessons, interactive worksheets, and unlimited opportunity for practice and to receive feedback. The courseware is free to use and does not require registration to access. Start learning from a world-class group of math educators today!

Students will investigate the properties of polynomial, rational, exponential, logarithmic, trigonometric and radical functions and develop facility in applying these properties. This courseware is considered prerequisite learning for the Calculus and Vectors courseware.

Students will investigate the derivatives of polynomial, rational, exponential, logarithmic, and trigonometric functions, and apply these to the modelling of real-world relationships. Integral Calculus and its applications will be introduced. Students will solve problems involving vectors, lines and planes in three-space. This courseware is intended for students who have studied or are currently studying the Advanced Functions and Pre-Calculus courseware.

Students expand their knowledge of operations to include negative numbers and fractional quantities. Basic algebra is introduced with the addition of variables into topics including patterning, and proportional reasoning. Students make connections between geometry and algebra while studying properties of polygons, circles, and the Pythagorean theorem.

Students will develop their problem solving ability through the investigation of problem solving techniques and by working through the solutions to problems from a wide spectrum of mathematical topics.

Python from scratch is a gentle introduction to programming, designed with the beginner in mind. No previous background is assumed. Each programming concept is first taught without reference to a specific programming language. Hands-on practice, using the programming language Python, helps to reinforce the concepts.
This "course" is a collection of videos teaching basic programming concepts in a language-independent manner (also used in Python from scratch). They can serve as supplementary materials for students of just about any programming language, or as a basis for review.
Computer Science Web Basics
Web basics introduces the main ideas behind the specification of a web page in HTML5 and CSS3, assuming no previous background. Explanations are interspersed with exercises and ideas for future practice.
Computer Science Web Programming
Web programming presents the use of basic programming concepts as applied to web pages, using the language JavaScript. The target audience for this course is those who have mastered the basics of programming (in any programming language) and the basics of HTML and CSS.