Open Educational Resources
Document Type
Textbook
Publication Date
Spring 5-26-2026
Abstract
This exercise book uses Writing-Intensive (WI) pedagogy in an introductory programming course setting, because I believe WI can help students engage in deeper analysis of programming problems while strengthening their critical and analytical thinking skills. In computer science, a single problem can often be solved using multiple algorithms, designs, and implementation strategies. Exploratory thinking and reflective writing can improve students’ ability not only to read and write computer programs, but also to evaluate the efficiency, readability, and maintainability of algorithms and code. Students must learn not only how to design solutions, but also how to compare alternatives and determine the most appropriate approach by considering multiple aspects of algorithm and software design, such as time versus memory trade-offs, data type selection, iteration versus recursion, modularity, readability, and code reuse. WI exercises encourage students to think critically and holistically about algorithmic problem solving rather than focusing solely on producing working code.
Another important reason for implementing WI pedagogy is my belief that it provides an effective framework for integrating Artificial Intelligence (AI) tools into programming education. As students have already begun using AI tools in their coursework, emerging pedagogical approaches in computer science highlight the importance of incorporating AI literacy into introductory programming courses. In addition, AI-assisted tools such as ChatGPT and GitHub Copilot have demonstrated their ability to improve programmer productivity in software development. Traditional programming pedagogy has primarily emphasized code writing, but there is now a growing shift toward code reading, comprehension, testing, debugging, and the critical evaluation of AI-generated solutions.
Concerns have also emerged that unrestricted AI use may reduce students’ opportunities to develop independent critical and analytical thinking skills. I believe WI methods can help address these concerns by integrating AI into programming courses in a thoughtful and responsible way. The WI assignments designed in this book aim to promote higher-order thinking through reflective writing activities that actively engage with AI-generated content. In this way, students learn to approach AI critically, as a tool that supports learning and problem solving rather than as a replacement for their own intellectual effort.
Creative Commons License

This work is licensed under a Creative Commons Attribution-Noncommercial 4.0 License
CUNY OER Funding
CUNY OER Initiative
