Teaching computer science: a problem solving approach that works
ACM SIGCUE Outlook - Special issue: selected papers from NECC '96
Structured Programming with go to Statements
ACM Computing Surveys (CSUR)
Misleading intuition in algorithmic problem solving
Proceedings of the thirty-second SIGCSE technical symposium on Computer Science Education
Teaching problem solving, computing, and information technology with robots
Journal of Computing Sciences in Colleges
Teaching problem solving in an introductory computer science class
SIGCSE '81 Proceedings of the twelfth SIGCSE technical symposium on Computer science education
Learning from wrong and creative algorithm design
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Hybrid content delivery and learning styles in a computer programming course
FIE'09 Proceedings of the 39th IEEE international conference on Frontiers in education conference
Expanding CS1: applications across the liberal arts
Journal of Computing Sciences in Colleges
Student discussion forums: what is in it for them?
Computer Science Education Research Conference
Proceedings of the ninth annual international conference on International computing education research
Alternatives to lecture: revealing the power of peer instruction and cooperative learning
Proceeding of the 44th ACM technical symposium on Computer science education
Designing and supporting collaborative learning activities
Proceeding of the 44th ACM technical symposium on Computer science education
From competition to metacognition: designing diverse, sustainable educational games
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Cooperative learning instructional methods for CS1: Design, implementation, and evaluation
ACM Transactions on Computing Education (TOCE) - Special Issue on Alternatives to Lecture in the Computer Science Classroom
Hi-index | 0.00 |
The ability to solve problems is the key to developing software, and it is an ability that can be difficult to learn. Introductory Computer Science students are often taught syntax and semantics, along with simple problems designed to develop logical, structured thinking, but authentic problem-solving skills are rarely developed at these early stages. In this paper we describe an approach to introductory computer science education that addresses student engagement through integrating cooperative learning techniques and authentic problem solving processes throughout each aspect of the curriculum. Over a period of 4 years, the introductory computer science course at the University of Adelaide has been modified to support a cooperative learning style. A three-stage methodology has been implemented in place of traditional lectures to achieve this. The process focuses on observing the application of programming techniques, observing problem solving techniques and then applying cooperative problem solving exercises in the classroom. The results from this change in teaching methodology have been an increase in attendance rates at lectures and practical sessions as well as improved learning outcomes as measured by exam results. Student experience surveys show students have greater motivation for learning and believe they have a better understanding of concepts since the changes have occurred.