Software and information technologies are becoming increasingly integrated and pervasive in human society and range from automated decision making and social media and entertainment, to running critical social and physical infrastructures like government programs, utilities, and financial institutions. As a result, there is a growing awareness of the need to develop professionals who will harness these technologies in fair and inclusive ways and use them to address global issues like health, water management, poverty, and human rights. In this regard, many academic researchers have expressed the need to complement traditional teaching of CS technical skills with computer and information ethics (computing for social good), as well as communication and leadership skills. In this paper, we describe our goals and some possible class activities we have developed and refined over the past few years with encouraging results, to help CS students understand the potential uses of computing for social good. In these carefully planned project assignments, we seamlessly integrate traditional approaches to develop technical skills with broader professional responsibility and soft skills. We then discuss the lessons learned from these activities and briefly outline future plans.
Citation of this paper:
- Cortinovis R., Goyal D., Capretz L.F., Integrating Traditional CS Class Activities with Computing for Social Good, Ethics, and Communications and Leadership Skills, 34th Annual Workshop of the Psychology of Programming Interest Group Conference (PPIG 2023), Lund, Sweden, accepted, 9 pages, August 2023.