Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects.
Published in | American Journal of Education and Information Technology (Volume 4, Issue 2) |
DOI | 10.11648/j.ajeit.20200402.12 |
Page(s) | 50-55 |
Creative Commons |
This is an Open Access article, distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution and reproduction in any medium or format, provided the original work is properly cited. |
Copyright |
Copyright © The Author(s), 2020. Published by Science Publishing Group |
Recursion, Geometry, Computer Graphics, Fractal, Python
[1] | Athena Vakali, I. Giannopoulos, N. Ioannidis, C. Koilias, K. Malamas, Y. Manolopoulos and P. Politis, Application development in a programming environment, Athens: Institute of Education Policy, 1999. (in Greek). |
[2] | D. Georgiou, E. Antoniou and A. Chatzimichailidis, Discrete Mathematical Structures in Computer Science, Athens: Hellenic Academic Libraries Link, 2015. (in Greek). |
[3] | K. Gödel, "Die vollständigkeit der axiome des logischen Funktionenkalküls," Monatshefte für Mathematik, 37 (1), 1930, pp. 349-360. |
[4] | A. Church, "A note on the Entscheidungsproblem," The journal of symbolic logic, 1 (1), 1936, pp. 40-41. |
[5] | A. M. Turing, “Computability and λ-definability”, The Journal of Symbolic Logic, 2 (4), 1937, pp. 153-163. |
[6] | S. C. Kleene, “General recursive functions of natural numbers”, Mathematische Annalen, 112 (1), 1936, pp. 727-742. |
[7] | E. L. Post, “Recursively enumerable sets of positive integers and their decision problems”, Bulletin of the American Mathematical Society, 50 (5), 1944, pp. 284-316. |
[8] | M. M. Syslo and A. B. Kwiatkowska (2014) Introducing Students to Recursion: A Multi-facet and Multi-tool Approach. In: Gülbahar Y., Karataş E. (eds) Informatics in Schools. Teaching and Learning Perspectives. ISSEP 2014. Lecture Notes in Computer Science, vol 8730. Springer, Cham. |
[9] | Renée McCauley, Scott Grissom, Sue Fitzgerald and Laurie Murphy (2015). Teaching and learning recursive programming: a review of the research literature. Computer Science Education, 25: 1, 37-66, DOI: 10.1080/08993408.2015.1033205. |
[10] | B. B. Mandelbrot, “The fractal geometry of trees and other natural phenomena,” in Geometrical probability and biological structures: Buffon’s 200th anniversary. Springer, 1978, pp. 235-249. |
[11] | K. Falconer, “Fractal geometry: Mathematical foundations and applications”, 3rd ed., New Jersey: John Wiley & Sons, 2014. |
[12] | M. F. Barnsley, “Fractals Everywhere”, 3rd ed., Dover Publications, Inc., New York, 2012. |
[13] | V. Drakopoulos, “Scientific and artistic creation as assistants in the educational process”, Geometry: From science to application, 2012, p. 12. (in Greek). |
[14] | C. Song, S. Havlin and H. A. Makse, “Self-similarity of complex networks”, 433 (7024), 2005, p. 392. |
[15] | Leoni Evaggelatou-Dalla and V. Drakopoulos, “The new dimension of educational mathematical thinking”, in 14th Panhellenic Conference on Mathematical Education, Hellenic Mathematical Society, 1997, pp. 235-242. (in Greek). |
[16] | S. I. Oikonomidis and G. T. Kalkanis, “Repetitive Procedures in Natural Science, in Mathematics and in Informatics Education”. in Didactics of Physical Science and New Technologies in Education. 2007. (in Greek). |
[17] | A. Aggelis, N. Alexandris, P. Georgiadis, K. Gyrtis, A. Kostakos, A. Raptis, and L. Stergiopoulou-Kalantzi, Third Grade of Junior High School Informatics, Athens: School Book Publishing Organization (OEDB), 1997. (in Greek). |
[18] | B. S. Elenbogen and M. R. O'Kennon, “Teaching recursion using fractals in Prolog”, ACM SIGCSE Bulletin, 20 (1), 1988, pp. 263-266. |
[19] | V. Drakopoulos and P.-V. Sioulas, “Teaching Recursion to Junior-High School Students with the use of fractals: a complete lesson plan” in 10th Conference on Informatics in Education. Thessaloniki, 2018. (in Greek). |
APA Style
Vasileios Drakopoulos, Panagiotis-Vlasios Sioulas. (2020). Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python. American Journal of Education and Information Technology, 4(2), 50-55. https://doi.org/10.11648/j.ajeit.20200402.12
ACS Style
Vasileios Drakopoulos; Panagiotis-Vlasios Sioulas. Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python. Am. J. Educ. Inf. Technol. 2020, 4(2), 50-55. doi: 10.11648/j.ajeit.20200402.12
@article{10.11648/j.ajeit.20200402.12, author = {Vasileios Drakopoulos and Panagiotis-Vlasios Sioulas}, title = {Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python}, journal = {American Journal of Education and Information Technology}, volume = {4}, number = {2}, pages = {50-55}, doi = {10.11648/j.ajeit.20200402.12}, url = {https://doi.org/10.11648/j.ajeit.20200402.12}, eprint = {https://article.sciencepublishinggroup.com/pdf/10.11648.j.ajeit.20200402.12}, abstract = {Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects.}, year = {2020} }
TY - JOUR T1 - Teaching Recursion to Junior-High School Students by Using Fractals: A Complete Lesson Plan in Python AU - Vasileios Drakopoulos AU - Panagiotis-Vlasios Sioulas Y1 - 2020/07/17 PY - 2020 N1 - https://doi.org/10.11648/j.ajeit.20200402.12 DO - 10.11648/j.ajeit.20200402.12 T2 - American Journal of Education and Information Technology JF - American Journal of Education and Information Technology JO - American Journal of Education and Information Technology SP - 50 EP - 55 PB - Science Publishing Group SN - 2994-712X UR - https://doi.org/10.11648/j.ajeit.20200402.12 AB - Recursion and functional programming are two programming techniques that go beyond the framework requirements but they are fundamental to learning to program. Recursion is an important idea in computer science and has traditionally been a difficult concept for students to understand, both as a control structure and as an analytic tool. Comprehension of the way programmes are developed bears a number of obstacles especially for 3rd Grade Junior High School students who need to get accustomed to recursion. Α one-teaching-hour lesson plan intended for pupils of the 3rd Grade of Junior High School about teaching recursion through python in combination with its turtle library is proposed. The teaching proposal of the specific method utilises a special category of sets which are called fractals. Since the students will be familiarised with a difficult programming technique without, however, being taught mathematical concepts that are difficult to understand, it is expected to have a more positive outlook towards key concepts and in turn to programming. With the introduction of this approach, students acquired understanding of the concept of coding recursion and applied it in the higher-level programming. In addition, our teaching approach made students enthusiastic, motivated and engaged with the learning of usually difficult subjects. VL - 4 IS - 2 ER -