Multiple Approaches for Teaching Responsible Computing