Using the Technological, Pedagogical, and Content Knowledge Framework to Design Online Learning Environments and Professional Development