Students are learning the geometric aspects of calculus using computer graphics and are learning the mathematical concepts via a mathematical programming language that allows them to make standard mathematical constructions using standard mathematical notation: drill and practice are being reducing by using a computer algebra system. Research into the process of learning the underlying ideas of calculus is also being conducted.