This week we’ve been exploring different types of learning when examined through the lens of project-based, problem-based, inquiry-based, and community-based learning. With all of these different ways to encourage learning in mostly interactive and student-centered ways, how would I define my own teaching practice? Is it on a continuum, or is it stagnantly in one school of thought? What does my practice inherently value and what steps could I take to embrace another pedagogical framework?
As a computer science teacher, a lot of the teaching I do is to equip students with the skills to navigate the digital space for a multitude of contexts. I order for students to understand more complicated concepts such as coding, there is always a “realistic product, event, or presentation to an audience” (Barron, 2008). Project-based learning is at the core of how I teach. The only major change is that the class constructs their projects with me guiding them through the steps. “Direct instruction involving considerable guidance, including examples” give my students a framework to laser focus on the specific skill we focus on for the day (Kirschner et al., 2006). To teach coding concepts like loops, conditionals, and variables in isolation would be meaningless for my students. But if put in the context of us building a workable game together, learning becomes engaging, relevant, and not as intimidating to approach. It is a working example to situate their learning that supports my novice learners that removes to obstacles of non-essential steps, and “directs attention…to learning the essential relations between problem-solving moves” (Kirschner et al., 2006). I find that having a project in my students’ line of sight gives them a vision of what is to come and keeps them motivated. When we make video games, if the game is half-done, it can’t be played yet, but every improvement gets them closer, and more motivated to persevere to continue with their learning journey. It also is a great confidence boost to them when, after weeks of coaching and explaining how the codes work, students have a working game and can confidently tell an outsider to our community how the code operates and what happens if you change the values of certain valuables. I have major time constraints in my classroom of 40 minutes twice a week with my students, so having a final goal in mind with small steps to success keeps all of my students enthusiastic about learning and ready for what comes next.
I really struggle with problem-based learning in my practice because it the problems students are solving require “multiple solutions and methods for reaching them, rather than a single “right” approach” (Barron, 2008)”. This is especially difficult when you are working in the field of computer science where there is only 1 correct answer and any other responses are incorrect and will result in major bugs or the code will not run at all. The idea of asking my students to create something that performs a specific task whether its creating a custom video game, creating animated stories, or creating an interactive purpose for a microchip would send a bunch of my students into an anxious fit. Despite how beginner friendly coding interfaces like Scratch, Makecode, or Micro:Bit are with their block codes organized by purpose and colour, all of the basic components of code can be easily overwhelming for even the grade 5 classes I teach. My school experiences a lot of learned helplessness in students and a lack of growth mindset where if they are not successful on the first try, or they don’t have an adult directly pointing at what they need to do, they shut down and put up mental blocks. I have tried many times to promote students taking more ownership of their learning “make thinking visible, guide the group process and participation, and to ask questions to solicit reflections” and in a large-group setting, things always seem successful, but when I give them a larger problem to solve that requires more that a single step of problem solving, my students go back to being passive learners (Barron, 2008). With my lack of instructional time, I do not have the time to address every student’s mental block and facilitate learning to move through the discomfort. Students would leave my class upset, defeated, and with lower self-efficacy levels about moving on to the next step or problem.

When I run makerspace/STEAM activities in my class, design-based learning is very at the core of my practice. Students are introduced and fully immersed in the engineering design process prior to the activities. We go over the problem and its constraints, brainstorm possible solutions, put a plan on paper, build a prototype, test the model, improve the design, and repeat the process as many times as needed. The first few times in the classroom, these steps are highly controlled and modelled by the teacher (i.e. students working in a group must all agree what the plan is before they are given the basket of materials to build). This is done to combat having one person take over the designing and building and disregarding other members’ ideas. I offer solutions where groups can create 1 collective design, or individual members have their own designs and the group labels them “plan A”, “plan B”, “plan C” etc. as to have ideas to fall back on if the first prototype is unsuccessful and everyone feels heard. During the building phase, teachers model that taking ideas from other groups is not “stealing,” but rather gathering information on what might or is working. At the end of the class, all the groups come together and show the class what they have come up with. Regardless of where the groups are at, I ask students in other groups – “if this was your team, what bit of advice would you give them as a next step?” Students then all share their input and the task becomes a celebration of learning rather than a competition. These highly teacher moderated steps are essential to build that community and design mentality in learners, so groups can be reconfigured in any combination and everyone knows not only the engineering design process, but the ways in which everyone in the group can feel heard and important to the creation of their prototype.

The biggest hurdle to implementing design-based learning is that it is extremely time consuming. I often require 2 learning blocks worth of time to get all of the steps of the engineering designing process into the activity in a satisfying way without rushing or forgoing steps. In order for students to really get into the routine and mentality of design-based learning, it takes a few sessions of “growing pains” where inevitable disagreements and time management issues happen. It is all a part of the process until the classes get into the rhythm and running Makerspace activities becomes a positive and impactful learning environment. Unfortunately, I no longer have 2 consecutive learning blocks available in my teaching schedule where I can run Makerspace time in the depth that I do, and the idea of chunking the process down to its steps as individual lessons defeats the purpose of a continual independent journey. I would love to bring this modality back into my practice because I am passionate about teaching this process to teachers and students. I am not sure how to bring it back within the confines of my class time, as students would all be in different stages of design and they would be responsible for consistently bringing all of their materials to class and do the proper clean up before the transition to another class.
I struggle with inquiry-based learning in the same ways I do with problem-based learning. Both styles require there to be a problem that students must solve with less interference from the teacher and more reliance on peer collaboration (Barron, 2008). If my students struggle with solving problems through the problem-based learning model, I am very reluctant to extend the discomfort and frustration in the form of a longer term inquiry learning model. With these hesitations and the fact that inquiry planning from the teachers’ perspective often entails “careful planning and the development of strategies for collaboration, classroom interaction, and assessment,” it feels like taking on an inquiry frame of mind would be more work for me, rather than with my students (Barron, 2008). With this hesitation of implementation in mind, I recognize that what I am really seeking is “a community to support [my] capacity to organize sustained project work” within the context of Computer Science (Barron, 2008). I would be very enthusiastic to try inquiry if I could see it modelled in a similar context to mine, and what steps my peers take to facilitate inquiry in a positive and sustained manner.
I like to think I do a bit of community-based learning, but upon further reading, what I am doing is not exactly that. When I learn of a big learning divide between students, I often challenge students who understand the concept or the skill to teach it to a peer who is behind or was absent for the day. I check their work and ask the student who was in need of support how the code or concept works. If the student can articulate an understanding of new learning, it shows that students can learn from a community of their peers outside of me. It is not exactly community-based learning in which “students working together in a group small enough that everyone can participate on a collective task that has been clearly assigned,”” but it is more like community building-based learning (Barron, 2008). When I was a classroom teacher, I did more community-based learning when I had students facilitate their reading groups, or when they did larger assignments/project work. I found it really helped in those contexts. Everyone had a job that was integral to the task and were open to interpretation as to how to perform their personal task (Barron, 2008). Once I landed in my current position, I stopped integrating community-based learning in my everyday practice. I used it again when I introduced the Minecraft Pacific NW Coast Experience version 1.0. I think I was looking for the right setting to introduce community-based learning, as introductory computer science often requires a one student-to-one assignment learning model in order to practice and learn the concepts. I am looking to pilot the version 2.0 as soon as it goes live, but again, I need time and community support to feel like I can successfully implement the modality.
At this point in time, my practice heavily leans on project-based learning with hints of community and design-based learning. Time constraints and finding the right academic vehicles have been large roadblocks for why there is such a disproportionate distribution of the methods I’ve used. I have been hesitant to try problem and inquiry-based learning, as I am still mitigating how to successfully implement these models in my practice that supports learning in my highly specific context while addressing the learned helplessness that my students often default to, and show evidence for learning. I would be interested in support and time to engage and possibly shift my own pedagogy, while still making student learning my top priority. This is not to discredit direct instruction and the project-based learning that I default to. It is a method that is effective and works in my context. My students can all explain what the concept is and how to construct their codes with this method. It would be interesting to see my students could warrant the same results with a different learning style.
Barron, B., & Darling-Hammond, L. (2008). Review of research on inquiry-based and cooperative learning. In L. Darling-Hammond, D. P. Pearson, A. Schoenfeld, T. Zimmerman, G. Cervetti, & J. Tilson (Eds.), Powerful learning: What we know about teaching for understanding (pp. 11-70). Jossey-Bass.
Kirschner, P. A., Sweller, J., & Clark, R. E. (2006). Why Minimal Guidance During Instruction Does Not Work: An Analysis of the Failure of Constructivist, Discovery, Problem-Based, Experiential, and Inquiry-Based Teaching. Educational Psychologist, 41(2), 75–86. https://doi.org/10.1207/s15326985ep4102_1
February 9, 2025 at 5:02 pm
You have made some very good points here, Krystal. Time is definitely a constraint for teachers like you and I who only see our students for short periods of time. This makes it challenging to cover everything we need to and restricts our ability to offer choice and flexibility with assignments. I think that having more time would allow us to let learners guide the way.