About the book A manuscript for an introductory programming text has been drafted by Dr. Ophir Frieder and Dr. David Grossman utilizing the increasingly popular programming language, Ruby. This IPRO team will develop the following key deliverables for the book:
For each of the chapters it is anticipated that at least five or six detailed programming examples will be needed in addition to 20-30 exercises. The team will have an excellent view of what parts of the book need more clarity and a sense for good exercises. Objective To produce a working draft which includes
Why do we need another comptuer science textbook? The impulse behind this book is dissatisfaction with the way introductory computer science is currently taught. To our knowledge, there has yet to exist a text that focuses on semantic and algorithmic issues, rather than purely syntactical. Most students get bogged down by the intricacies of the programming language itself, which hinders their problem solving development. To combat this tendency, the IPRO team will utilize two innovative approaches. Ruby and Model-Eliciting Activities (MEA) can together create an environment conducive to our goals. Ruby boasts of a "Principle of Least Surprise," making the language natural and intuitive for freshman students. Ruby's ease of use will facilitate the focus on semantics and algorithms to foster problem solving skills. Unimpeded by trivial particulars of most languages, students will be able to tackle MEAs, which are types of open-ended problems. These excel over typical problems, as they have been shown to support the learning styles of a broader range of students. Moreover, MEAs encourage peer collaboration, critical thinking, and decision-making. What needs to change? Common threads of issues run through the various articles from the ACM Special Interest Group on Computer Science Education (SIGCSE): lack of diversity and retention. Fortunately, many colleges have been implementing new programs and testing new approaches. For example, one pilot program discovered that exposing women to real world social issues solvable by computer science is effective in captivating their interest. This indicates that MEAs can make a huge difference in appealing to diverse groups because MEAs target real world problems and have social significance. In light of how programming is usually taught, it is no surprise that retention in computer science departments is a problem. “Some speculate that computer science departments and programs must reinvent the way they train students if they wish to attract and retain the next generation of technical workers.”1 Many SIGCSE articles point out that pervasive misconceptions discourage prospective students. Sadly, it seems that current teaching methods affirm such myths that computer science is isolated and uncreative. It must be shown that computer science is a highly creative field; it is socially relevant; it is connected to every engineering discipline; and it is philosophical and sociological in its construction and application. MEAs can reveal these truly exciting characteristics by their very nature of provoking critical thinking, being interdisciplinary and modeling the real world. By no means are MEAs a panacea for the myriad issues surrounding introductory computer science. However, this IPRO team views MEAs as a big step in the right direction. Dovetailed with a book emphasizing problem-solving, MEAs can spark the creativity and interest of students while they learn useful, exciting skills that few other introductory computer science books offer. Because of all the reasons stated above, the IPRO team will develop three thorough and provocative MEA projects to be used as supplemental assignments to the book. They will be posted on this website, and should be used by professors as semester or midterm projects. Past and Future Work This is the first semester of this IPRO, so there are no past team objectives or previous work to which to refer. The overarching goal is to produce a working introductory computer science book that is actually used in classrooms. However, this prject is too large for a single semester's IPRO team to tackle. Future work should include refining the objectives that are listed above, to test them with students to ensure a satisfactory level of understanding and to publish them.
|