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…
Motivating CS students to test their code
Any software engineer in industry can tell you the importance of software testing in the software development lifecycle. The quality of the software is ultimately the deciding factor on whether the software is ready to ship. Yet, very little time of a computer science student’s studies involve software testing. On any one of my programming…
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…
Empowered Learner
The International Society for Technology in Education (ISTE) is passionate about the power of technology to transform teaching and learning. The ISTE Standards provide a framework that allows students and computer science educators (as well as other educators) to create innovative learning environments. In particular, the ISTE Standard for Students are designed to empower students…
Review – Net Smart: How to Thrive Online
I recently finished a book that I consider a great resource for people trying to figure out how to better use their time online. Howard Rheingold is the author of the book Net Smart: How to Thrive Online, (The MIT Press, 2012). Probably to the author’s dismay, I do consider Rheingold to be an Internet…
Reflective Assessments
Reflective assessments can be a far more valuable way of assessing teacher effectiveness that what is used in practice today. One technique requires students to write down a series of “I learned…” statements to summarize what was learned in a class, exercise, or assignment. Another technique requires students to draw a vertical line on a…
Content Knowledge and Professional Growth Overview
Technology coaches demonstrate professional knowledge, skills, and dispositions in content, pedagogical, and technological areas as well as adult learning and leadership and are continuously deepening their knowledge and expertise. Engage in continual learning to deepen content and pedagogical knowledge in technology integration and current and emerging technologies necessary to effectively implement the standards Engage in…
Digital Citizenship Overview
Technology coaches model and promote digital citizenship. Model and promote strategies for achieving equitable access to digital tools and resources and technology-related best practices for all students and teachers Model and facilitate safe, healthy, legal, and ethical uses of digital information and technologies Model and promote diversity, cultural understanding, and global awareness by using digital…
