TY - GEN
T1 - A course on programming and problem solving
AU - Sheth, Swapneel
AU - Murphy, Christian
AU - Ross, Kenneth A.
AU - Shasha, Dennis
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/2/17
Y1 - 2016/2/17
N2 - At its core, Computer Science is the study of algorithmic problem solving. Although it is necessary to teach programming, data structures, computer organization, etc., students should ultimately learn to use these things to solve problems, understand what is good and bad about their solutions, and share their solutions with others. This paper describes a course that focuses on the four steps of the problem solving process: algorithmic thinking, implementation, analysis, and communication. This course, based on Knuth's popular seminar at Stanford, has been extremely successful at the authors' three institutions. In addition to discussing the course's objectives and methodology, we present sample problems, summarize the outcomes and feedback from students, and give advice to other educators looking to create a similar course.
AB - At its core, Computer Science is the study of algorithmic problem solving. Although it is necessary to teach programming, data structures, computer organization, etc., students should ultimately learn to use these things to solve problems, understand what is good and bad about their solutions, and share their solutions with others. This paper describes a course that focuses on the four steps of the problem solving process: algorithmic thinking, implementation, analysis, and communication. This course, based on Knuth's popular seminar at Stanford, has been extremely successful at the authors' three institutions. In addition to discussing the course's objectives and methodology, we present sample problems, summarize the outcomes and feedback from students, and give advice to other educators looking to create a similar course.
KW - Open-ended problems
KW - Problem-based learning
KW - Soft skills
UR - http://www.scopus.com/inward/record.url?scp=84968572530&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84968572530&partnerID=8YFLogxK
U2 - 10.1145/2839509.2844594
DO - 10.1145/2839509.2844594
M3 - Conference contribution
AN - SCOPUS:84968572530
T3 - SIGCSE 2016 - Proceedings of the 47th ACM Technical Symposium on Computing Science Education
SP - 323
EP - 328
BT - SIGCSE 2016 - Proceedings of the 47th ACM Technical Symposium on Computing Science Education
PB - Association for Computing Machinery, Inc
T2 - 47th ACM Technical Symposium on Computing Science Education, SIGCSE 2016
Y2 - 2 March 2016 through 5 March 2016
ER -