A Flippish Learning Model

Definition: Flipped Classroom

A quick definition from A Beginner's Guide to Flipped Classroom is, "In this model, instructors have students interact with new material on their own first. They then use class time to discuss the new information and put those ideas into practice."

A Flippish Approach

With the 2020 course format, students read 1-3 chapters ahead and attempt to implement the code and concepts with each other. After a day or two (sometimes three) of lab/experimentation time, the instruction team will review the chapters by live-coding it, providing context, and fielding questions from the students.

This strategy has led to two things.

  1. Students have more in-depth knowledge and understanding when live-coding happens. Questions are elevated from the knowledge level to the evaluation level.
  2. The instructor can frame the code in context, bring in her experiences, and provide the scaffolding for a student to transfer previous knowledge into the new concept.

I hesitate to say this approach is entirely flipped because there are places where essential information is not provided, or mistakes in the code are purposefully introduced. That way, when live-coding happens, the instructor can talk about how to handle the situation in a professional setting and have that high-level discussion with the students.

Students need to understand that software development is not a science. It is a craft that requires collaboration, compromise, problem-solving, and questioning existing beliefs. It's messy.

The inherent abstract nature of software development requires the coverage of the material by the instruction team, even though the students have already watched videos about it, or read about, and have tried to apply that knowledge in one or more contexts. However, the conversation is no longer about information sharing. The initial learning still happens before a class-wide discussion.


We still have to iron out several wrinkles to make the experience as efficient and productive as possible, but the change in approach has improved in three areas.

  1. Higher understanding of the code, ability to apply code where needed, and ability to evaluate choices in code.
  2. Faster core skill development (i.e., effective communication and interaction, and development of critical & creative thinking)
  3. Quality of group/individual project code.
  4. Student experience based on their direct feedback.

Looking to the Future

Given that we chose to go remote and stay remote, we had to quickly adapt to a completely different Learning Experience for the safety of our students and our team. Luckily, the team shared dozens of ideas as we experimented with remote learning, and I was proud of how quickly we adapted. I can say with confidence that we deliver a solid experience with a remote classroom.

I believe that remote student learning is here to stay, but I'm not sure exactly what that looks like right now. Now that we have expanded capabilities as instructors, adopting this flipped classroom style now and refining it over the next 6-12 months will keep us ahead of that new reality instead of reacting to it.