PYTHON AS A TOOL FOR LEARNING BASICS OF ALGORITHMIZATION IN GENERAL SECONDARY EDUCATION INSTITUTIONS

Authors

DOI:

https://doi.org/10.33407/itlt.v89i3.4896

Keywords:

Python language, institution of general secondary education, basics of algorithmization, programming

Abstract

Today, there is a tendency to expand programming, and programming languages are becoming simpler and more convenient. As a result, the number of programmers will increase. At the same time, the level of deep understanding of the basics of algorithmization will decrease. This is inevitable, but it is not a reason to abandon the study of modern high-level programming languages. The problem of choosing a programming language for learning the basics of algorithmization at the school is actual and complex. Based on the analysis of scientific publications and personal experience, the criteria for choosing a programming language as a means of learning the basics of algorithmization are determined: modernity, freeness, clarity, and conciseness. The choice of Python as a means of teaching the basics algorithmization is substantiated and certain of its characteristics are analyzed, which are illustrated by specific examples. To better understand the features of the Python language, the software implementation of algorithms is presented in parallel with the C ++ language. However, learning Python as the first programming language may raise some concerns. There are a dynamic typing of variables and a "too high" high-level of language. The main problem with learning the Python programming in schools is the lack of developed methods of teaching it, unlike Pascal. It is necessary to clarify what topics, and algorithms need to be studied in schools and how to form a sequence of topics and choose the appropriate teaching methods. It is better to focus on learning algorithms and developing skills for solving various problems that they will be able to use in practice in the future. Therefore, the main emphasis should not be on learning a particular programming language, but on learning the basics of algorithmization, and using a programming language as an aid. It is advisable to choose a programming language that is easy to read and easy to write. This will help increase the level of confidence of students who do not have very good knowledge of the basics of algorithmization and who in the future do not link their professional activities with programming. Further research will be aimed at developing methods for teaching the basics of algorithmization and programming using Python in computer science classes.

Downloads

Download data is not yet available.

Author Biographies

Taras P. Kobylnyk, Drohobych Ivan Franko State Pedagogical University

PhD of Pedagogical Sciences, Associate Professor at Informatics and Information Systems Department

Oksana V. Sikora, Drohobych Ivan Franko State Pedagogical University

PhD of Technical Sciences, Head of the Department of Informatics and Information Systems, Associate Professor at Informatics and Information Systems

Volodymyr B. Zhydyk, Drohobych Ivan Franko State Pedagogical University

Senior Lecturer at Informatics and Information Systems Department

Оleksandra V. Sharan, Drohobych Ivan Franko State Pedagogical University

PhD of Pedagogical Sciences, Associate Professor at the Mathematics, Informatics and Teaching Methods in Primary School Department

References

"Яку мову програмування вивчати у школі", Комп’ютер у школі та сім’ї, №7, c.14-18, 2013.

"Яку мову програмування вивчати у школі", Комп’ютер у школі та сім’ї, №8, с.9-18, 2013.

M. Saeli, J. Perrenet, W. Jochems, and B. Zwaneveld, "Teaching Programming in Secondary School: A Pedagogical Content Knowledge Perspective", Informatics in Education, vol.10, n.1, pp.73-88, 2011. doi: https://doi.org/10.15388/infedu.2011.06.

Y. Lee, and J. Cho, "The Influence of Python Programming Education for Raising Computational Thinking", International Journal of u- and e- Service, Science and Technology, vol.10, n.8, pp.59-72, 2017. doi: https//doi.org/10.14257/ijunesst.2017.10.8.06.

I. Yoon, J. Kim, and W. Lee, "The analysis and application of an educational programming language (RUR-PLE) for a pre-introductory computer science course", Cluster Computing, vol. 19, n. 1, pp.529-546, 2016. doi: https://doi.org/10.1007/s10586-016-0540-6.

M. Ateeq, H. Habib, A. Umer, and M. U. "Rehman, "C++ or Python? Which One to Begin with: A Learner's Perspective," in International Conference on Teaching and Learning in Computing and Engineering (LaTiCE), Kuching, Malaysia, 2014, pp. 64-69. doi: https://doi.org/10.1109/LaTiCE.2014.20.

C. Lo Y. Lin, and C. Wu, "Which Programming Language Should Students Learn First? A Comparison of Java and Python," in International Conference on Learning and Teaching in Computing and Engineering (LaTiCE), Taipei, Taiwan, 2015, pp. 225-226. doi: https://doi.org/10.1109/LaTiCE.2015.15.

J-P. Pellet, A. Dame, and G. Parriaux, "How beginner-friendly is a programming language? A short analysis based on Java and Python examples”, in 12th International Conference on Informatics in Schools: Situation, Evolution, and Perspectives, Larnaca, Cyprus, 2019, pp.48-56.

E. Mészárosová. "Is Python an Appropriate Programming Language for Teaching Programming in Secondary Schools?", International Journal of Information and Communication Technologies in Education, 4(2), pp.5-14, 2015. doi: https://doi.org/10.1515/ijicte-2015-0005.

J. Monsálvez. "Python como primer lenguaje de programación textual en la enseñanza secundaria", Educationn the Knowledge Society, vol 18, n. 2, pp.147-162. 2017. doi: https://doi.org/10.14201/eks2017182147162.

B. Fagan, and B. Payne, "Learning to Program in Python – by Teaching It!", in Proceedings of the Interdisciplinary STEM Teaching and Learning Conference, Vol. 1, pp.99-107, 2017. doi: https://doi.org/10.20429/stem.2017.010109.

P. H. Shevchuk, «Основні підходи добору мови та середовища програмування як засобів навчання», ITLT, вип. 17, вип. 3, Вер 2010. doi: https://doi.org/10.33407/itlt.v17i3.251.

V. M. Bazurin, «Середовища програмування як засіб навчання учнів основ програмування», ITLT, вип. 59, вип. 3, с. 13-27, Чер 2017. doi: https://doi.org/10.33407/itlt.v59i3.1601.

O. V. Semenykhina, та Rudenko Y. О., «Проблеми навчання програмувати учнів старших класів та шляхи їх подолання», ITLT, вип. 66, вип. 4, с. 54-64, Вер 2018. doi: https://doi.org/10.33407/itlt.v66i4.2149.

О. Маловічко, та С. Конюхов, "Застосування спеціалізованого педагогічного програмного комплексу у процесі вивчення програмування у восьмому класі", Ukrainian Journal of Educational Studies and Information Technology, 5 (4), с. 38-55, 2017. doi: https://doi.org/10.32919/uesit.2017.04.04.

Л. Міцкан, Т. Вербицька, та В. Базурін, "Порівняльний аналіз мов Python i Free Pascal як перших мов програмування для учнів 8 класу", Актуальні питання природничо-математичної освіти, № 2 (10), с. 130-139, 2017.

В. Д. Руденко, та О. О. Жугастров, Основи алгоритмізації і програмування. Харків, Україна: Вид-во «Ранок», 2019.

В. Д. Руденко, Н. В. Речич, та В. О. Потієнко, Інформатика (профільний рівень): підруч. для 10 кл. закл. загал. серед. освіти. Харків, Україна: Вид-во «Ранок», 2018.

Інформатика. Навчальна програма вибірково-обов’язкового предмету для учнів 10-11 класів загальноосвітніх навчальних закладів (рівень стандарту). [Електронний ресурс]. Доступно: https://mon.gov.ua/storage/app/media/zagalna%20serednya/programy-10-11-klas/2018-2019/informatika-standart-10-11.docx. Дата звернення: Груд. 19, 2021.

Інформатика для 10-11 класів (профільне навчання). [Електронний ресурс]. Доступно: https://mon.gov.ua/storage/app/media/zagalna%20serednya/programy-10-11-klas/2018-2019/01/10-11-profilniy-riven.docx. Дата звернення: Груд. 19, 2021.


REFERENCES (TRANSLATED AND TRANSLITERATED)

"What programming language to learn at school", Computer at School and Family, no.7, 2013. pp.14-18 (in Ukrainian)

"What programming language to learn at school", Computer at School and Family, no.8, pp.9-18, 2013. (in Ukrainian)

M. Saeli, J. Perrenet, W. Jochems, and B. Zwaneveld, "Teaching Programming in Secondary School: A Pedagogical Content Knowledge Perspective", Informatics in Education, vol.10, n.1, pp.73-88, 2011. doi: https://doi.org/10.15388/infedu.2011.06. (in English)

Y. Lee, and J. Cho, "The Influence of Python Programming Education for Raising Computational Thinking", International Journal of u- and e- Service, Science and Technology, vol.10, n.8, pp.59-72, 2017. doi: https://doi.org/10.14257/ijunesst.2017.10.8.06. (in English)

I. Yoon, J. Kim, and W. Lee, "The analysis and application of an educational programming language (RUR-PLE) for a pre-introductory computer science course", Cluster Computing, vol. 19, n. 1, pp.529-546, 2016. doi: https://doi.org/10.1007/s10586-016-0540-6. (in English)

M. Ateeq, H. Habib, A. Umer, and M. U. "Rehman, "C++ or Python? Which One to Begin with: A Learner's Perspective," in International Conference on Teaching and Learning in Computing and Engineering (LaTiCE), Kuching, Malaysia, 2014, pp. 64-69. doi: https://doi.org/10.1109/LaTiCE.2014.20. (in English)

C. Lo Y. Lin, and C. Wu, "Which Programming Language Should Students Learn First? A Comparison of Java and Python," in International Conference on Learning and Teaching in Computing and Engineering (LaTiCE), Taipei, Taiwan, 2015, pp. 225-226. doi: https://doi.org/10.1109/LaTiCE.2015.15. (in English)

J-P. Pellet, A. Dame, and G. Parriaux, "How beginner-friendly is a programming language? A short analysis based on Java and Python examples”, in 12th International Conference on Informatics in Schools: Situation, Evolution, and Perspectives, Larnaca, Cyprus, 2019, pp.48-56. (in English)

E. Mészárosová. "Is Python an Appropriate Programming Language for Teaching Programming in Secondary Schools?", International Journal of Information and Communication Technologies in Education, 4(2), pp.5-14, 2015. doi: https://doi.org/10.1515/ijicte-2015-0005. (in English)

J. Monsálvez. "Python as a First Textual Programing Language in Secondary Education", Educationn the Knowledge Society, vol 18, n. 2, pp.147-162. 2017. doi: https://doi.org/10.14201/eks2017182147162. (in Spanish)

B. Fagan, and B. Payne, "Learning to Program in Python – by Teaching It!," Proceedings of the Interdisciplinary STEM Teaching and Learning Conference, Vol. 1, pp.99-107, 2017. doi: https://doi.org/10.20429/stem.2017.010109. (in English)

P. H. Shevchuk, "Criteria of language and programming environment selection for use in the capacity of educational aids”, ITLT, vol. 17, no. 3, Sep. 2010. doi: https://doi.org/10.33407/itlt.v17i3.251. (in Ukrainian)

V. M. Bazurin, "Programming environments as a means of teaching pupils to programming basics", ITLT, vol. 59, no. 3, pp. 13-27, Jun. 2017. https://doi.org/10.33407/itlt.v59i3.1601. (in Ukrainian)

O. V. Semenykhina and Rudenko Y. О., "Problems of educating to programming of students and way of their overcoming", ITLT, vol. 66, no. 4, pp. 54-64, Sep. 2018. doi: https://doi.org/10.33407/itlt.v66i4.2149. (in Ukrainian)

O. Malovichko, and S. Koniukhov, "The use of specialized pedagogical software in the study of programming in the eighth grade", Ukrainian Journal of Educational Studies and Information Technology, 5 (4), 2017, pp. 38-55 (in Ukrainian)

L. Mitskan, T. Verbytska, and V. Bazurin, "Comparative analysis of Python and Free Pascal languages as the first programming languages for 8th grade students", Topical issues of natural science and mathematics education, no.2 (10), pp.130-139, 2017. (in Ukrainian)

V. D. Rudenko, and O. O. Zhuhastrov, Basics of Algorithms and Programming. Kharkiv, Ukraine, Vyd-vo «Ranok», 2019, 192 p. (in Ukrainian)

V. D. Rudenko, N. V. Rechych, and V.O. Potiienko, Informatics (profile level): a Textbook for 10th Grade Secondary Schools. Kharkiv, Ukraine, Vyd-vo «Ranok», 2018, 256 p. (in Ukrainian)

Informatics for 10-11 grades (profile education). [Online]. Available: https://mon.gov.ua/storage/app/media/zagalna%20serednya/programy-10-11-klas/2018-2019/01/10-11-profilniy-riven.docx. Accessed on: Dec. 19, 2021. (in Ukrainian)

Informatics. The curriculum of an elective compulsory course for students in grades 10-11 of general educational institutions (standard level). [Online]. Available: https://mon.gov.ua/storage/app/media/zagalna%20serednya/programy-10-11-klas/2018-2019/informatika-standart-10-11.docx. Accessed on: Dec. 19, 2021. (in Ukrainian)

Published

2022-06-30

How to Cite

Kobylnyk Т. П., Sikora О. В., Zhydyk В. Б., & Sharan О. В. (2022). PYTHON AS A TOOL FOR LEARNING BASICS OF ALGORITHMIZATION IN GENERAL SECONDARY EDUCATION INSTITUTIONS. Information Technologies and Learning Tools, 89(3), 16–32. https://doi.org/10.33407/itlt.v89i3.4896

Issue

Section

ICT and learning tools in secondary education