Teaching computer science (CS) to non-majors poses unique pedagogical challenges as students often approach the subject with limited technical background and diverse learning needs. This paper explores the best practices for teaching computer science to non-majors, emphasizing the importance of active learning, interdisciplinary relevance, contextualization, and fostering student engagement. By utilizing project-based learning, pair programming, […]