Designing courses with interactive textbooks and analyzing the results

I am currently exploring the designer (S5) and analyst (S7) roles in the International Society for Technology standards for educators (ISTE).  As a designer, I want to explore tools for educators that recognize and accommodate learner variability.  As an analyst, I want to learn how my institution uses data to drive new curriculum and support…

Learning and leading online instruction in computer science

I am now entering the fourth iteration of teaching a computer programming course at my community college.  I picked this course up from another instructor at my institution. The course includes lectures, class exercises, quizzes/exams that are proctored in class, and a group project.  As I knew would happen, a student emailed me at the…

Turning computer science students into software engineers

As part of my Digital Education Leadership master’s program, we are asked to create or modify a learning activity that integrates technology in a meaningful way. My project focuses on group assignments in computer science courses. Often, group assignments do not achieve the goal of giving students a real-world experience of building software with multiple…

Tools for a flipped computer programming classroom

The traditional method for teaching a computer programming course is to have the instructor present language syntax and semantics in a classroom lecture and have the students work on programming exercises as homework.  In a flipped classroom, the students learn about programming language syntax and semantics at home through online lessons and courses and come…

Engaging CS Students in Design

Many group assignments in computer science courses expose students to only a portion of the software development process.  In particular, the first stages in most software development processes are rarely covered. These are the stages in which requirements are gathered, prototypes are built, and the customer is engaged in an iterative design process.  The start…

Students as Knowledge Constructors

In computer science courses, students are asked to form groups to solve a particular problem.   Such group projects give students the opportunity to address real-world issues and problems, allowing students to make meaningful learning exercises for themselves and others.  Such projects turn students into knowledge constructors, asking students to take on an open-ended inquiry using…