Philosophies & Pedagogy
Learning is inherently a social function; therefore, activities that facilitate and support socialization play a crucial role in shaping learner behavior and improving learning outcomes. The Montclair State School of Computing (SoC) is dedicated to fostering an environment that promotes active and collaborative pedagogy, learning, and instruction. The SoC have focused on unifying pedagogy, instruction, and assessment through active and collaborative learning approaches.
Additionally, we have leveraged our graduate assistants to develop an in-house lab for computer hardware, network testing and vulnerability assessments, cyber threats modeling, and penetration testing. This lab currently helps orient first- and second-year students by bridging the conceptual gap between computer science theories and hands-on lab experiences. This initiative also supports housing 20 internship students working in our CCIS 3rd-floor lab.
Below, we highlight a number of innovative active and collaborative pilot projects in areas of programming, calculus, statistics and data science, systems programming, and computer and operating systems which offer hands-on learning to bridge the conceptual knowledge using active and collaborative learning.
In Fall 2024, Dr. Michelle Zhu’s pilot study in CSIT 104 (Python Programming), part of the University TIP program, introduced an innovative Engineering-based Circle Coding Practice. This method, adapted from the studio-based learning model developed at the University of Illinois, Urbana-Champaign, focused on active learning through small-group presentations and peer feedback. Each student was tasked with presenting their programming assignments line by line, explaining their thought process, while peers engaged by offering comments, suggestions, and asking questions.


This collaborative approach encouraged critical thinking, deeper understanding, and fostered a shared learning environment. In addition to the coding practice, students worked on a final project using Raspberry Pi and various environmental sensors. This project required students to design a Python-driven application that integrated both hardware and software, allowing them to apply the programming concepts learned throughout the semester to real-world problems. The hands-on nature of the project reinforced the theoretical aspects of Python programming while providing a tangible application, helping students bridge the gap between classroom learning and practical use.
As beginners in Computer Science, students enjoyed working with Python and appreciated the chance to explore the integration of hardware and software. The final Raspberry Pi project was also noted for helping students develop essential team-building skills, as they collaborated, problem-solved, and gained practical experience in software development and hardware integration.


Student Feedback
Whats most valuable in this class is that professor provided discussions every Friday which was made it a better learning experience which helped us review some useful python tips when going thorough homework and labs.
Your class was able to teach me about what hardware and software was and how it meshed together. I wanted to say that this was something that helped spur my interest in hardware, as well. The Raspberry Pi project that we did also helped me in terms of team-building skills and understanding various forms of software.
Various active learning approaches were incorporated in both Human-Computer Interaction (HCI) and Mobile Computing courses to boost student engagement and deepen their understanding of key concepts. The goal is to create an interactive and dynamic learning environment that encourages students to apply theoretical knowledge to practical, real-world scenarios.



Human-Computer Interaction
Each module features group discussions focused on current topics and their applications in widely used products, such as smartphone interfaces, wearable devices, and voice assistants. These discussions encourage students to analyze existing designs, critique usability, and propose innovative improvements based on concepts learned in class. Through peer interactions, students actively explore design principles rather than relying on passive memorization, which fosters critical thinking and creativity in UI/UX development. The students are highly engaged and excited by these discussions and collaborative work.
Mobile Computing
Given the engineering focus of this course, we employ a scaffolding approach, gradually shifting responsibility to students as they develop their technical skills. In each module, students are encouraged to present and defend alternative solutions for recent projects and homework assignments, which foster problem-solving skills and engineering thinking. Many students find this approach both effective and engaging, as it nurtures their engineering mindset and enhances their ability to think critically and innovatively.

In one pilot section of AMAT 120 Applied Calculus A and one of AMAT 220 Applied Calculus B, several active learning approaches were incorporated to improve student understanding and retention of the materials.
Each week, students are given a Colab Notebook of core materials, with supplemental prompts to reduce the cognitive load using technology such as Large Language Model and Python visualization tools.
During class, students form into groups of two, one presenting their solution while the other asking questions and posing challenges. The focus is on active interaction to explore the ideas behind concepts rather than a passive mechanical repetition just to get the “correct” answer.


Lecture instruction meets where students are, focusing on the resolving key difficulties, building connections, and applications of the knowledge to practical problems.
These are followed by in-class assessments, designed to give students quick feedback.
As part of the CSIT-230 Computer Systems curriculum, (100+) students across three sections implemented logic gates (AND, OR, NOT) using solderless breadboards, LEDs, resistors, and transistors. This hands-on project emphasized hardware-level understanding of digital design, complementing theoretical lessons on computer architecture and assembly language. Students worked in collaborative groups of four, fostering active learning through peer troubleshooting and iterative testing of gate functionality. The activity provided practical exposure to circuit assembly, voltage regulation, and signal propagation, bridging abstract concepts from lectures to tangible outcomes. By integrating teamwork with technical execution, students gained insights into low-level system operations while developing problem-solving and communication skills essential for advanced computer engineering.


Student Feedback
What was your favorite part of this activity, and/or what did you find most valuable in terms of learning or engagement?
I liked working hands on physically to develop a logic circuit. An online simulation can be beneficial for sure but nothing compares to getting real world experience of going through the process of design and implementation of a logic circuit. I think doing so goes further in retaining the knowledge of how to do it.
My favorite part of the activity was actually working in a group. I don’t work in groups at all in my other classes. The most valuable thing I learned was the little details matter.
Honestly, just building the design for our OR Gate on the solderless breadboard. It was a hands-on experience that let me apply the research I did ON breadboards in a tangential manner.
How did this hands-on project influence your understanding of digital logic gates and computer systems? Were there any concepts that became clearer or more interesting to you as a result of this activity?
Knowing how truth table and gates work using electronics made easier to understand what we did till now in class.
I think it helped me understand how computers process these gates internally and how they’re executed. Seeing how the connections to power made the gate work was really interesting.