Recently, on “Pi Day” (3.14, or March 14 for the non-nerds out there) I was reading an article about the benefits of learning programming on the Raspberry Pi, a micro-computer that costs only $35 dollars, and all the ways that it helps tinkerers learn programming and solve obscure issues by creating their own software and hardware solutions. I had recently fallen into the trap of tech lust—the feeling nerds get when they suddenly want to buy some piece of technology they may or may not really need—and decided that I wanted to buy a Pi device and get back into programming, having not written a line of code since high school.
That last bit presented a bit of an issue for me, however. Learning to code was always easiest for me when I had a specific issue to solve, since it helped me predict what kind of code I needed to learn, while also making the motivational factor much easier to maintain. It’s this feeling of not knowing where to start that I often see students struggle with as well.
Facing this issue myself, before I decide which Pi to purchase I’ll look online for specific Pi projects that others have done, to see what solutions I may be able to integrate into my own network and test bench at home. At the same time, I think it is helpful to consider the different pedagogical approaches available to instructors to naturally integrate problems into the assignments we give, in order to help students learn to solve them.
Flipped Classrooms and Hybrid Classes
While these two approaches don’t typically get lumped together, they do often use similar pedagogical divisions for instruction and problem-solving (i.e. assignments). That is to say, these approaches each seek to clearly define the activities of instruction (lectures and readings) from the activities that reinforce the material.
A flipped classroom may seek to have students learn the content outside of class in order to use in-class time for group work or completing activities and assessments, while the hybrid class can swap between approaches, asking students to learn content in the class and apply and document the material during the out of class sessions.
Either approach asks the student to take an initiative in the problem-solving moment. Students clearly experience the shift from content to application, making the imperative to participate that much stronger.
Experiential and Community-based Service Learning
Whether experiential or community-based service learning (CbSL), both approaches ask students to go out into the real world to identify and observe or solve real issues facing real people and institutions. Similar to my Pi problem, it puts the learner face to face with an issue, asking them to apply prior knowledge and recently obtained skills to remedy part or all of the issue at hand. When using CbSL, the presence of real constituents counting on a viable solution helps participants remain motivated, but also to understand the needs and abilities of the constituents before applying a solution (thinking back to my Pi approach, this is essentially matching my ability and available timeframe to the complexity/accessibility of the solution and my coding knowledge).
These approaches best drive the students’ sense of purpose within the learning scenario since it isn’t just an interaction between them and the understanding or application of the content, but a triangulation that also brings in real users, and also introduces helpful complexity or randomization that creates interesting contexts for the learner.
Inquiry-based Learning asks students to take a direct role in choosing what to learn and how to apply it (think of assignments that have a loose-set of criteria that students use to propose a topic or approach). This can overlap with concepts of CbSL or experiential learning, if the student chooses, but also serves to foster connection and interest to the problem/solution.
Just-In-Time Instruction (JiT)
In my view, JiT best combines the benefits of the items above, by seeking to match instruction as closely as possible to implementation. It’s essentially using a flipped model, but also offers opportunities to apply the materials students are most interested in or most in need of (depending on whether they’ve used Inquiry-based learning or EL/CbSL, or both). In terms of my Pi approach, this will most likely fit what I will be seeking for myself, since I will both decide on a problem/solution to approach, and then seek specific resources to allow me to tackle each part of the problem.
I doubt that my Pi approach will rely much on this in the formal sense, but reflection often helps to distill the actual learning that takes place within any of these approaches. The understanding gained through these reflections makes future application of the concepts much more efficient, since it becomes easier to predict success or foresee the pitfalls.
While students are in the thick of the interaction and problem-solving, they are likely not stopping to analyze the totality of the concepts they are experiencing or applying. Reflection after the interaction helps to take a more objective look at the situation to see what worked and what didn’t, solidifying the lessons and committing them more powerfully to memory.
Baking the Pi
Though I still haven’t decided on which Pi to get, I do know that I need to decide first on what problems I’d like to work through to re-learn coding. I also have a new appreciation for what our students face when tasked with an assignment, and will push the faculty I work with to understand and appreciate the same uncertainty as they design their assignments, working to mitigate those moments while inviting students to take part more directly in the problem-solving.