Ethical Computer Science

Integrating responsible computing into Allegheny College Computer Science Curriculum

June 4, 2022

Proactive Programming

We believe that students who are taught to be proactive programmers will know how to avoid technical debt and then create more ethical software. This includes developing efficient and correctly working tools that are well-documented and can be easily used and integrated by other developers. In teaching students how to be proactive programmers we require them to use best practices in documentation, comments, and Git practices. For this purpose and to facilitate our two introductory courses, we developed the Proactive Programmers website, which not only equips students with technical skills in areas such as setting up a robust development environment, using version control and continuous integration, and automatically testing and linting their programs but also invites students to think deeply about and to practice professional skills such as effective communication, time management, and goal setting.