After I reviewed LFU (Learning For Use) framework, I would apply the framework to any introductory algorithm classes utilizing technology – visualization software and flow charts (draw.io) – based on LFU three-step process – motivation, knowledge construction, and knowledge refinement (Edelson, 2001).
Encouraging students to get motivated to learn programming: It is vital to engage the students in learning activities that include algorithmic tasks that are close to students’ real life issues/tasks. This demonstrates the usefulness of the algorithm programming process and makes students curious, inquisitive, and hungry for new knowledge. To motivate the students to acquire new knowledge and be aware of their own challenges and how to solve them, I would apply different forms of scaffolding – questions and group discussion regarding real life algorithm examples and programming experiences.
Promoting Knowledge Construction
Learning activities that utilize algorithm visualization (https://visualgo.net/en) may guide students toward activating their existing mental model and subsequently toward modifying it. For example, we can ask students, at first, to predict the results of simple algorithm exercises individually or as a pair and then address the results as a pair or within a group. These activities will encourage new knowledge construction through pair and group communication. Also, it will provide students with an opportunity to observe other students’ knowledge construction process.
Edelson (2001) states that refining knowledge can be supported through the processes of reflection and application. The refining process enables the students to reorganize their knowledge and to link the newly acquired knowledge to existing one. In addition, the refining process supports knowledge retention, future retrieval, and use. For example, modifying a simple program appropriately, according to the software requirements, can bolster the refinement process through meaningful application (Edelson, 2001). Also, a peer review activity of code/algorithmic flowcharts can facilitate reflection through collaboration.
Edelson, D.C. (2001). Learning-for-use: A framework for the design of technology-supported inquiry activities. Journal of Research in Science Teaching,38(3), 355-385. http://ezproxy.library.ubc.ca/login?url=http://dx.doi.org/ 10.1002/1098-2736(200103)38:33.0.CO;2-M
I am glad to see an activity centered around motivating learning in computer science. In BC where I am, the ministry of education is planning to introduce computer science courses in the next few years, and any application of learning methodologies will be valuable going forward.
I am glad as well BC is taking big steps to induce computer science courses. It could be very challenging to introduce other topics – algorithms, human computer interactions, encryptions – other than programming. There are a lot of programming courses designed targeting K-12 students but have not seen many other subject areas mentioned above.