Designing Diversity, Service, and Active Learning For the Common Good in an Undergraduate Computer Science Course | IEEE Conference Publication | IEEE Xplore