Abstract
It has been estimated that more than two million students started computing studies in 1999 and 650,000 of them either dropped or failed their first programming course. For the individual student, dropping such a course can distract from the completion of later courses in a computing curriculum and may even result in changing their course of study to a curriculum without programming. In this article, we report on how we set out to rehabilitate a troubled first programming course, one for which the dropout statistic and repercussion was evident. The five-year longitudinal case study described in this article began by systematically tracking the pass rate of a first programming course, its throughput, as proposed by the Theory of Constraints. The analyses of these data indicated three main problems in the course: programming discipline difficulty, course arrangement complexity, and limited student motivation. The motivation problem was approached from the Two-Factor Theory point of view. It investigated those factors that led to dissatisfaction among the students, the hygiene factors, and those factors that led to satisfaction, the intrinsic and extrinsic motivators. The course arrangement complexity was found to be a hygiene factor, while the lack of extrinsic and intrinsic motivators contributed to the high dropout rates. The course improvement efforts made no attempt to change the inherent characteristics of the programming discipline, but introduced holistic changes in the course arrangements over a five-year period, from 2005 to 2009, to eliminate the hygiene factors and to increase motivational aspects of the course. This systems approach to course improvement resulted in an increase in the pass rate, from 44% prior to the changes to 68% thereafter, and the overall course atmosphere turned positive. This paper reports on the detailed changes that were made and the improvements that were achieved over this five-year period.
- Alexander, C. 1964. Notes on the Synthesis of Form. Harvard University Press.Google Scholar
- Ambrose, M. L. and Kulik, C. T. 1999. Old friends, new faces: Motivation research in the 1990s. J. Man. 25, 3, 231--292.Google Scholar
- Anderson, D. J. 2004. Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results. Prentice Hall PTR, Upper Saddle River, New Jersey. Google ScholarDigital Library
- Baker, R. S. J., Corbett, A. T., and Aleven, V. 2008. More accurate student modeling through contextual estimation of slip and guess probabilities in Bayesian knowledge tracing. In Proceedings of the 9th International Conference on Intelligent Tutoring Systems (ITS’08). 406--415. Google ScholarDigital Library
- Becker, K. 2002. Back to Pascal: Retro but not backwards. J. Comput. Sci. Coll. 18, 2, 17--27. Google ScholarDigital Library
- Bennedsen, J. and Caspersen, M. E. 2007. Failure rates in introductory programming. SIGCSE Bull. 39, 2, 32--36. Google ScholarDigital Library
- Bennett, R. 2003. Determinants of undergraduate student drop out rates in a university business studies department. J. Further High. Educ. 27, 2, 123.Google ScholarCross Ref
- Bergin, S. and Reilly, R. 2005. The influence of motivation and comfort-level on learning to program. In Proceedings of the 17th Annual Workshop of the Psychology of Programming Interest Group (WPPI’05). 293--304.Google Scholar
- Bills, D. P. and Canosa, R. L. 2007. Sharing introductory programming curriculum across disciplines. In Proceedings of the 8th ACM SIGITE Conference on Information Technology Education (ITE’07). 99--106. Google ScholarDigital Library
- Boisvert, C. R. 2009. A visualisation tool for the programming process. In Proceedings of the 14th Annual ACM SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE’09). 328--332. Google ScholarDigital Library
- Bonwell, C. C. and Eison, J. A. 1991. Active Learning: Creating Excitement in the Classroom. The George Washington University, School of Education and Human Development, Washington D.C.Google Scholar
- Böszörményi, L. 1998. Why Java is not my favorite first-course language. Softw. - Concepts Tools 19, 3, 141--145.Google ScholarCross Ref
- Boyd, L., Gupta, M., and Sussman, L. 2001. A new approach to strategy formulation: Opening the black box. J. Educ. Bus. 76, 6, 338--344.Google ScholarCross Ref
- Brooks Jr., F. P. 1987. No silver bullet - Essence and accidents of software engineering. Comput. 20, 4, 10--19. Google ScholarDigital Library
- Bruce, K. B. 2005. Controversy on how to teach CS 1: A discussion on the SIGCSE-members mailing list. SIGCSE Bull. 37, 2, 111--117. Google ScholarDigital Library
- Bruner, J. S. 1961. The act of discovery. Harvard Educ. Rev. 31, 21--32.Google Scholar
- Bruner, J. S. 1966. Toward a Theory of Instruction. Harvard University Press.Google Scholar
- Caspersen, M. E. and Kolling, M. 2009. STREAM: A first programming process. Trans. Comput. Educ. 9, 1, 1--29. Google ScholarDigital Library
- Christensen, C. M. 1992. Exploring the limits of the technology S-Curve. Part I: Component technologies. Prod. Oper. Man. 1, 4, 334--357.Google ScholarCross Ref
- Cooper, M. J. and Loe, T. W. 2000. Using the theory of constraints’ thinking processes to improve problem-solving skills in marketing. J. Market. Educ. 22, 2, 137--146.Google ScholarCross Ref
- Davis, A. M. 2003. The art of requirements triage. Comput. 36, 3, 42--49. Google ScholarDigital Library
- Deming, W. E. 1990. Out of the Crisis. Massachusetts Institute of Technology, Cambridge, MA.Google Scholar
- Deshields, O. W. J., Kara, A., and Kaynak, E. 2005. Determinants of business student satisfaction and retention in higher education: Applying Herzberg’s two-factor theory. Int. J. Educ. Man. 19, 2, 128--139.Google Scholar
- Dettmer, H. W. 1997. Goldratt’s Theory of Constraints: A Systems Approach to Continuous Improvement. ASQ Quality Press, Wilwaykee, WI.Google Scholar
- Douce, C., Livingstone, D., and Orwell, J. 2005. Automatic test-based assessment of programming: A review. J. Educ. Res. Comput. 5, 3, 13. Google ScholarDigital Library
- Douglas, J., Mcclelland, R., and Davies, J. 2008. The development of a conceptual model of student satisfaction with their experience in higher education. Qual. Assur. Educ. 16, 1, 19--35.Google ScholarCross Ref
- Easton, G. 2010. Critical realism in case study research. Indust. Market. Man. 39, 1, 118--128.Google ScholarCross Ref
- Ebrahimi, A. 1994. Novice programmer errors: Language constructs and plan composition. Int. J. Hum.-Comput. Stud. 41, 4, 457--480. Google ScholarDigital Library
- Eisenhardt, K. M. 1989. Building theories from case study research. Acad. Man. Rev. 14, 4, 532--550.Google ScholarCross Ref
- Elrod, P. D. I. and Tippett, D. D. 2002. The “Death Valley” of change. J. Org. Change Man. 15, 3, 273--291.Google ScholarCross Ref
- European Commission. 2009. ECTS users’ guide. Report, Office for Official Publications of the European Communities, Luxembourg, Belgium.Google Scholar
- European Commission. 2010. The Bologna process - Towards the European higher education area. http://ec.europa.eu/education/higher-education/doc1290_en.htm.Google Scholar
- Forte, A. and Guzdial, M. 2005. Motivation and nonmajors in computer science: Identifying discrete audiences for introductory courses. IEEE Trans. Educ. 48, 2, 248--253. Google ScholarDigital Library
- Foster, R. N. 1986. Innovation: The Attacker’s Advantage. Summit Books, New York.Google ScholarCross Ref
- Furnham, A., Eracleous, A., and Chamorro-Premuzic, T. 2009. Personality, motivation and job satisfaction: Hertzberg meets the Big Five. J. Man. Psych. 24, 8, 765--779.Google ScholarCross Ref
- Furugori, T. and Jalics, P. 1977. First course in computer science, a small survey. In Proceedings of the 7th SIGCSE Technical Symposium on Computer Science Education (SIGSCE’77). 119--122. Google ScholarDigital Library
- Gill, T. G. and Jones, J. 2010. A tale of three classes: Case studies in course complexity. J. Inf. Technol. Educ. 9, 29.Google Scholar
- Glaser, B. and Strauss, A. L. 1967. The Discovery of Grounded Theory: Strategies for Qualitative Research. Aldine, Chicago.Google Scholar
- Golding, P., Donaldson, O., and Tennant, V. 2009. Application of modified perceived learning problem inventory (PLPI) to investigate performance in introductory programming. In Proceedings of the 39th IEEE International Conference on Frontiers in Education Conference (FEC’09). 366--371. Google ScholarDigital Library
- Goldratt, E. M. 1994. What Is This Thing Called Theory of Constraints and How Should It Be Implemented? North River Press, Great Barrington, MA.Google Scholar
- Goldratt, E. M. and Cox, J. 2004. The Goal: A Process of Ongoing Improvement 3rd Ed. North River Press, Great Barrington, MA.Google Scholar
- Goldratt, R. and Weiss, N. 2005. Significant enhancement of academic achievement through application of the Theory of Constraints (TOC). Hum. Syst. Man. 24, 1, 13--19.Google Scholar
- Grollman, W. K. 1974. Hygiene factors in professional education programs. J. Account. 137, 1, 85--88.Google Scholar
- Guzdial, M. 2009. Education: Teaching computing to everyone. Comm. ACM 52, 531--33. Google ScholarDigital Library
- Guzdial, M. and Soloway, E. 2002. Teaching the Nintendo generation to program. Comm. ACM 45, 4, 17--21. Google ScholarDigital Library
- Hackman, J. R. and Oldham, G. R. 1976. Motivation through the design of work: Test of a theory. Org. Behav. Hum. Perform. 16, 2, 250--279.Google ScholarCross Ref
- Hall, T., Baddoo, N., Beecham, S., Robinson, H., and Sharp, H. 2009. A systematic review of theory use in studies investigating the motivations of software engineers. Trans. Softw. Eng. Methodol. 18, 3, 1--29. Google ScholarDigital Library
- Herzberg, F. 1968. One more time: How do you motivate employees? Harvard Bus. Rev. 46, 1, 53--62.Google Scholar
- Herzberg, F., Mausner, B., and Snyderman, B. B. 1959. The Motivation to Work. Wiley, New York.Google Scholar
- Higgins, C. A., Gray, G., Symeonidis, P., and Tsintsifas, A. 2005. Automated assessment and experiences of teaching programming. J. Educ. Res. Comput. 5, 3, 21. Google ScholarDigital Library
- Hsu, P.-F. and Sun, M.-H. 2005. Using the Theory of Constraints to improve the identification and solution of managerial problems. Int. J. Man. 22, 3, 415--425.Google Scholar
- Hume, G., Michael, J., Rovick, A., and Evens, M. 1996. Hinting as a tactic in one-on-one tutoring. J. Learn. Sci. 5, 1, 23--47.Google ScholarCross Ref
- Jenkins, T. 2001. The motivation of students of programming. In Proceedings of the 6th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’01). 53--56. Google ScholarDigital Library
- Jenkins, T. 2002. On the difficulty of learning to program. In Proceedings of the 3rd Annual Learning and Teaching Support Network Conference (LTSN-ICS’02). 53--58.Google Scholar
- Jiau, H. C., Chen, J. C., and Ssu, K.-F. 2009. Enhancing self-motivation in learning programming using game-based simulation and metrics. IEEE Trans. Educ. 52, 4, 555--562. Google ScholarDigital Library
- Johnson, L. F. 1995. C in the first course considered harmful. Comm. ACM 38, 5, 99--101. Google ScholarDigital Library
- Joint Task Force for Computing Curricula. 2001. Computing Curricula 2001 for Computer Science. http://www.acm.org/education/curricula.html.Google Scholar
- Joint Task Force for Computing Curricula. 2004. Software Engineering 2004: Curriculum guidelines for undergraduate degree programs in software engineering. http://www.acm.org/education/curricula.html.Google Scholar
- Kasurinen, J. 2006. Python as a Programming Language for the Introductory Programming Courses. Bachelor thesis (In Finnish). Department of Information Technology, Lappeenranta University of Technology, Finland.Google Scholar
- Kasurinen, J. 2008. Python Programming Guide version 1.2 (In Finnish). Report 12. Lappeenrannan University of Technology, Finland.Google Scholar
- Kasurinen, J. and Nikula, U. 2007. Lower dropout rates and better grades through revised course infrastructure. In Proceedings of the 10th International Conference on Computers and Advanced Technology in Education (IASTED’07). 152--157. Google ScholarDigital Library
- Kasurinen, J. and Nikula, U. 2009. Estimating programming knowledge with Bayesian knowledge tracing. In Proceedings of the 14th Annual ACM SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE’09). 313--317. Google ScholarDigital Library
- Kasurinen, J., Purmonen, M., and Nikula, U. 2008. A study of visualization in introductory programming. In Proceedings of the Annual Meeting of the Psychology of Programming Interest Group (PPIG’08). 181--194.Google Scholar
- Kauffman, S. 1993. Origins of Order: Self Organization and Selection in Evolution. Oxford University Press.Google Scholar
- Kelleher, C. and Pausch, R. 2005. Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers. Comput. Surv. 37, 2, 83--137. Google ScholarDigital Library
- Kinnunen, P. and Malmi, L. 2006. Why students drop out CS1 course? In Proceedings of the 2nd International Workshop on Computing Education Research (CER’06). 97--108. Google ScholarDigital Library
- Kinnunen, P. and Malmi, L. 2008. CS minors in a CS1 course. In Proceedings of the 4th International Workshop on Computing Education Research (CER’08). 79--90. Google ScholarDigital Library
- Kinnunen, P., McCartney, R., Murphy, L., and Thomas, L. 2007. Through the eyes of instructors: A phenomenographic investigation of student success. In Proceedings of the 3rd International Workshop on Computing Education Research (CER’07). 61--72. Google ScholarDigital Library
- Lahtinen, E., Ala-Mutka, K., and Järvinen, H.-M. 2005. A study of the difficulties of novice programmers. In Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education (ITiCSE’05). 14--18. Google ScholarDigital Library
- Landsberger, H. A. 1968. Hawthorne Revisited: Management and the Worker, Its Critics, and Developments in Human Relations in Industry. Cornell University, Ithaca, NY.Google Scholar
- Lee, A. S. and Baskerville, R. L. 2003. Generalizing generalizability in information systems research. Inf. Syst. Res. 14, 3, 221--243. Google ScholarDigital Library
- Lepper, M. R. and Henderlong, J. 2000. Turning “Play” into “Work” and “Work” into “Play”: 25 years of research on intrinsic versus extrinsic motivation. In Intrinsic Motivation: Controversies and New Directions, C. Sansone and J. Harackiewicz Eds., Academic Press, San Diego, 257--307.Google Scholar
- Lloyd III, J. T. and Lana, C. 2003. Goldratt’s thinking process applied to the budget constraints of a Texas MHMR facility. J. Health Hum. Serv. Admin. 26, 3/4, 416--437.Google Scholar
- Logo Foundation. 2010. Logo Foundation. Available online at http://el.media.mit.edu/logo-foundation/.Google Scholar
- Mabin, V. J. and Balderstone, S. J. 2003. The performance of the theory of constraints methodology: Analysis and discussion of successful TOC applications. Int. J. Operat. Prod. Man. 23, 5/6, 568--595.Google Scholar
- Maslow, A. 1954. Motivation and Personality. Harper and Row, New York.Google Scholar
- McIver, L. and Conway, D. 1996. Seven deadly sins of introductory programming language design. In Proceedings of the International Conference on Software Engineering: Education and Practice (CSE’96). 309--316. Google ScholarDigital Library
- McKinney, D. and Denton, L. F. 2004. Houston, we have a problem: There’s a leak in the CS1 affective oxygen tank. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’04). 236--239. Google ScholarDigital Library
- McWhorter, W. I. and O’Connor, B. C. 2009. Do LEGO Mindstorms motivate students in CS1? In Proceedings of the 40th ACM Technical Symposium on Computer Science Education (SIGCSE’09). 438--442. Google ScholarDigital Library
- Miller, G. A. 1956. The magical number 7 plus or minus two: Some limits on our capacity for processing information. Psych. Rev. 63, 2, 81--97.Google ScholarCross Ref
- Mow, I. T. C. 2008. Issues and difficulties in teaching novice computer programming. In Innovative Techniques in Instruction Technology, E-learning, E-assessment, and Education, M. Iskander Ed., Springer, 199--204.Google Scholar
- Myller, N., Bednarik, R., Sutinen, E., and Ben-Ari, M. 2009. Extending the engagement taxonomy: Software visualization and collaborative learning. Trans. Comput. Educ. 9, 1, 1--27. Google ScholarDigital Library
- Nikula, U., Jurvanen, C., Gotel, O., and Gause, D. C. 2010. Empirical validation of the Classic Change Curve on a software technology change project. Inf. Softw. Technol. 52, 6, 680--696. Google ScholarDigital Library
- Pirinen, T. 2008. The Study Record Analysis of Fundamentals of Programming Course. Bachelor thesis (In Finnish). Department of Information Technology, Lappeenranta University of Technology, Finland.Google Scholar
- Plaza, I. and Medrano, C. T. 2007. Continuous improvement in electronic engineering education. IEEE Trans. Educ. 50, 3, 259--265. Google ScholarDigital Library
- Polito, T., Watson, K., and Vokurka, R. J. 2006. Using the Theory of Constraints to improve competitiveness: An airline case study. Compet. Rev. 16, 1, 44--50.Google Scholar
- Python Software Foundation. 2010. Python Programming Language - Official Website. http://www.python.org/.Google Scholar
- Raadt, M. D., Watson, R., and Toleman, M. 2003. Language tug-of-war: Industry demand and academic choice. In Proceedings of the 5th Australasian Conference on Computing Education - Volume 20 (ACE’03). 137--142. Google ScholarDigital Library
- Rajala, T., Laakso, M.-J., and Kaila, E. 2009. ViLLE - The Visual Learning Tool. http://ville.cs.utu.fi/.Google Scholar
- Rehman, H.-U., Said, R. A. A., and Al-Assaf, Y. 2009. An integrated approach for strategic development of engineering curricula: Focus on students’ design skills. IEEE Trans. Educ. 52, 4, 470--481. Google ScholarDigital Library
- Roberts, E. S. 1993. Using C in CS1: evaluating the Stanford experience. In Proceedings of the 24th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’93). 117--121. Google ScholarDigital Library
- Rodrigo, M. T., Ma, and Baker, R. S. J. D. 2009. Coarse-grained detection of student frustration in an introductory programming course. In Proceedings of the 5th International Workshop on Computing Education Research Workshop (CER’09). 75--80. Google ScholarDigital Library
- Schulte, C. and Bennedsen, J. 2006. What do teachers teach in introductory programming? In Proceedings of the 2nd International Workshop on Computing Education Research Workshop (CER’06). 17--28. Google ScholarDigital Library
- Sirias, D. 2002a. Using graphic organizers to improve the teaching of business statistics. J. Educ. Bus. 78, 1, 33--37.Google ScholarCross Ref
- Sirias, D. 2002b. Writing MIS mini-cases to enhance cooperative learning: A Theory of Constraints approach. J. Inf. Sys. Educ. 13, 4, 351--356.Google Scholar
- Sleeman, D. 1986. The challenges of teaching computer programming. Comm. ACM 29, 9, 840--841. Google ScholarDigital Library
- Soh, L.-K., Samal, A., and Nugent, G. 2005. A framework for CS1 closed laboratories. J. Educ. Res. Comput. 5, 4, 2. Google ScholarDigital Library
- Strauss, A. L. and Corbin, J. 1998. Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory 2nd Ed. Sage Publications, Thousand Oaks, CA.Google Scholar
- Thweatt, M. 1994. CSI closed lab vs. open lab experiment. In Proceedings of the 25th SIGCSE Symposium on Computer Science Education (SIGCSE’94). 80--82. Google ScholarDigital Library
- Umble, M. and Umble, E. 2000. Manage your projects for success: An application of the Theory of Constraints. Prod. Inven. Man. J. 41, 2, 27--32.Google Scholar
- Walker II, E. D. and Cox III, J. F. 2006. Addressing ill-structured problems using Goldratt’s thinking processes: A white collar example. Man. Decis. 44, 1, 137--154.Google ScholarCross Ref
- Wiedenbeck, S., Labelle, D., and Kain, V. N. R. 2004. Factors affecting course outcomes in introductory programming. In Proceedings of the 16th Annual Workshop of the Psychology of Programming Interest Group (PPIG’04). 97--110.Google Scholar
- Wilson, B. C. and Shrock, S. 2001. Contributing to success in an introductory computer science course: A study of twelve factors. SIGCSE Bull. 33, 1, 184--188. Google ScholarDigital Library
- Viope Solutions Ltd. 2010. Viope Solutions. http://www.viope.com.Google Scholar
- Vroom, V. H. 1964. Work and Motivation. Wiley, New York.Google Scholar
- Xenos, M., Pierrakeas, C., and Pintelas, P. 2002. A survey on student dropout rates and dropout causes concerning the students in the Course of Informatics of the Hellenic Open University. Comput. Educ. 39, 4, 361--377.Google ScholarCross Ref
- Yin, R. K. 2003. Case Study Research: Design and Methods 3rd Ed. Sage Publications, Thousand Oaks, CA.Google Scholar
Index Terms
- A Motivation Guided Holistic Rehabilitation of the First Programming Course
Recommendations
Motivation for online impulse buying
Drawing on two-factor theory, this study successfully identified hygiene and motivation factors that activated online impulse buying.The hygiene factors affecting online impulse buying distributed across the six stages of consumer decision-making ...
First-year students' impressions of pair programming in CS1
Pair programming, as part of the Agile Development process, has noted benefits in professional software development scenarios. These successes have led to a rise in use of pair programming in educational settings, particularly in Computer Science 1 (CS1)...
First year students' impressions of pair programming in CS1
ICER '07: Proceedings of the third international workshop on Computing education researchPair programming, as part of the Agile Development process, has noted benefits in professional software development scenarios. These successes have led to a rise in use of pair programming in educational settings, particularly in CS1. Specifically [6] ...
Comments