This blog post will discuss the characteristics of experiential learning and how it aligns with our learning pod’s topic: understanding different programming languages.
As the name suggests, experiential learning is a learning process where individuals engage in first-hand activities related to the topic of interest and reflect on their experiences. Experiential learning comes in many forms – from hands-on chemistry experiments in the lab to learn about different cultures through international exchange programs. One of the main advantages of experiential learning is that the learner is not merely presented with knowledge to learn, but the learner takes control in their learning and learns about the topic through first-hand experience. Since the learner is the one involved in the environment, experiential learning is shown to be effective at keeping the learner motivated throughout the learning process.
David Kolb’s Experiential Learning Model depicts the processes within experiential learning. The learner first begins with 1) Concrete Experience. If a learner is trying to bake a muffin, the learner will interact with the ingredients and various baking tools. The learner may try to knead the dough or even start baking a muffin. From this experience, the learner enters 2) the Reflective Observation stage. In this stage, the learner assesses their experience, what worked well and what didn’t. For instance, the learner might’ve forgotten to add sugar to the dough and made a healthy muffin, albeit unsweet, or they baked the muffin for too long and burned it. Based on this assessment, the learner enters 3) Abstract Conceptualization stage, when they think about their mistakes and make a better muffin next time. This leads to the final step 4) Active Experimentation where the learner tries out different approaches based on their previous experience. These 4 steps display the different stages of experiential learning.
I believe that experiential learning aligns well with the topic of understanding different programming languages. The distinction between different programming languages to learners without previous programming experience is neither clear nor easy to understand. This is because, without previous experience in programming, you don’t know what each programming language looks like, and how different programming languages accomplish the same goal differently. Thus the learner can feel that the concept is abstract and lose interest. By providing an experiential learning component to our learning resource, we can let the learner try out a simple code snippet and gain first-hand experience. This will motivate the user to continue learning about the topic and better conceptualize how the different programming languages are structured.
Community Contribution
This week, I read blog post by LiWei
Hi James,
Your second blog post was great. Thanks for sharing it. As you noted in your blog, experiential learning is the most effective way to stimulate people’s thinking about how to learn. Participating in the environment will help them learn better since this will keep them motivated to solve any problems when trying to learn on their own. Especially, you need to practice coding rather than just reading a book. You have to use your knowledge to write code and solve any bugs. I think people can learn through experience, and if they fix this issue, they can fix their mistakes and do better. In addition, it helps them to remember some important details.