Research Article
BibTex RIS Cite

Ücretsiz Üç Görsel Programlama Ortamının İncelenmesi ve Karşılaştırılması

Year 2019, Volume: 27 Issue: 6, 2701 - 2712, 15.11.2019
https://doi.org/10.24106/kefdergi.3640

Abstract

Bu çalışma popüler ücretsiz üç görsel
programlama ortamının incelenmesini ve karşılaştırmasını hedeflemektedir.
Bahsedilen üç farklı ortamı diğer ücretsiz ortamlar arasından seçerken ücretsiz,
popüler, ve üretken olması ölçütleri dikkate alınmıştır. Birçok ortam
incelendikten sonra MIT App Inventor, Scratch ve Microsoft Kodu Game Lab
seçilmiştir. App Inventor ve Scratch ücretsiz ve açık kaynak kodlu ortamlarken,
Microsoft Kodu sadece ücretsizdir. Seçilen üç ortam kullanılarak ve incelenerek
araştırılmış, ayrıca araştırma alanyazın taraması ile desteklenmiştir. Bu
çalışmanın sonuçlarının öğretmen, eğitmen ve öğrencilerin ihtiyaçlarına uygun
bir görsel programlama ortamı seçmede yardımcı olabileceği düşünülmektedir.
Ortamların incelenmesi, Kodu’nun ilkokul düzeyindeki öğrenciler için daha uygun
olduğu sonucunu ortaya koyarken, Scratch’in hedef kitlesinin benzer fakat daha
üst yaş kitlesini de içerdiğini göstermiştir. Bu ikisi arasındaki diğer bir
fark Kodu’nun tek ürünü 3 boyutlu oyunlarken, Scratch 2 boyutlu oyun ve
animasyonlar üretebilmektedir. App Inventor ise ortaokul ve daha üst yaş
kitlesini hedeflemekte ve App Inventor’da Android işletim sistemi için mobil
uygulamalar geliştirilebilmektedir. Scratch ve App Inventor aynı blok tabanlı
kütüphaneyi kullanmakta ve bu ikisi değişkenler, koşullu ifadeler, ve döngüler
gibi temel programlama kavramlarını öğretmeye daha uygun bulunmuştur. Seçilen
üç ortamın kendilerine özel avantajları ve kendi hedef kitlelerine yönelik
özellikleri olduğu görülmüştür. Bu çalışma seçilen ortamların önemli
farklılıkları ve özelliklerini araştırmıştır. 

References

  • Aggarwal, A., Touretsky, D. S., & Gardner-McCune, C. (2018). Demonstrating the Ability of Elementary School Students to Reason about Programs. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education (pp. 735-740). ACM.
  • Akcaoglu, M. (2014). Learning problem-solving through making games at the game design and learning summer program. Educational Technology Research and Development, 62(5), 583–600. http://doi.org/10.1007/s11423-014-9347-4
  • Arilesere, F. O. (2014). Kodu game lab - a tool for ensuring quality teaching-learning for pupils in primary schools: case study (school in Northern Finland) (Master’s Thesis). Retrieved from Networked Digital Library of Theses & Dissertations. University of Oulu, Finland.
  • Armoni, M., Meerbaum-Salant, O., & Ben-Ari, M. (2015). From Scratch to “Real” Programming. ACM Transactions on Computing Education, 14(4), 1–15. https://doi.org/10.1145/2677087
  • Alzahrani, M. G. (2017). The Effect of Using Online Discussion Forums on Students' Learning. Turkish Online Journal of Educational Technology-TOJET, 16(1), 164-176.
  • Bennedsen, J., & Caspersen, M. E. (2012). Persistence of Elementary Programming Skills. Computer Science Education, 22(2), 81-107.
  • Berg, B. L. (2001). Qualitative research methods for the social sciences. Qualitative Research (Vol. Seventh Ed). https://doi.org/10.2307/1317652
  • Bertea, A. F. (2011). Mobile Learning Applications Using Google App Inventor for Android. The International Scientific Conference eLearning and Software for Education. Bucharest.
  • Coy, S. (2013). Kodu game lab, a few lessons learned. XRDS: Crossroads, The ACM Magazine for Students, 19(4), 44. http://doi.org/10.1145/2460436.2460450
  • Denner, J., Werner, L., & Ortiz, E. (2012). Computer games created by middle school girls: Can they be used to measure understanding of computer science concepts? Computers and Education, 58(1), 240–249. https://doi.org/10.1016/j.compedu.2011.08.006
  • Deek, F. P., & McHugh, J. A. (1998). A survey and critical analysis of tools for learning programming. Computer Science Education, 8(2), 130–178.
  • Dekhane, S., Xu, X., & Tsoi, M. Y. (2013). Mobile app development to increase student engagement and problem solving skills. Jour-nal of Information Systems Education, 24(4), 299–308.
  • Felleisen, M., Findler, R. B., Flatt, M., & Krishnamurthi, S. (2004). The TeachScheme! Project: Computing and Programming for Every Student. Computer Science Education, 14(1), 55–77.
  • Fowler, A., Fristce, T., & Maclauren, M. (2012). Kodu Game Lab: a programming environment. The Computer Games Journal, 1(1), 17–28. Retrieved from www.computergamesjournal.com
  • Google, (2018). Introduction to blockly. Retrieved March 3, 2019 from https://developers.google.com/blockly/guides/overview
  • Hsieh, H.F., & Shannon, S. E. (2005). Three Approaches to Qualitative Content Analysis. Qualitative Health Research, 15(9), 1277-1288. http://doi.org/10.1177/1049732305276687
  • Hickmott, D., & Prieto-Rodriguez, E. (2018). To Assess or Not to Assess: Tensions Negotiated in Six Years of Teaching Teachers about Computational Thinking. Informatics in Education, 17(2), 229-244.
  • Hsu, Y. C., & Ching, Y.-H. (2013). Mobile App Design for Teaching and Learning: Educators' Experiences in an Online Graduate Course. The International Review of Research in Open and Distance Learning, 14(4), 117-139.
  • Kelly, J. F. (2013). Kodu for Kids: The Official Guide to Creating Your Own Video Games. Que Publishing.
  • Kwon, D., Yoon, I., & Lee, W. (2011). Design of Programming Learning Process using Hybrid Programming Environment for Com-puting Education. KSII TRANSACTIONS ON INTERNET AND INFORMATION SYSTEMS, 5(10), 1799-1812.
  • Lee, Y. J. (2011). Scratch: Multimedia Programming Environment for Young Gifted Learners. Gifted Child Today, 34(2), 26-31.
  • Liu, E. Z. F., Cheng, S. S., & Lin, C. H. (2013). The effects of using online q&a discussion forums with different characteristics as a learning resource. The Asia-Pacific Education Researcher, 22(4), 667-675.
  • Malan, D. J., & Leitner, H. H. (2007). Scratch for Budding Computer Scientists. SIGCSE (pp. 223-227). Kentucky: ACM.
  • Maloney, J., Peppler, K., Kafai, Y. B., Resnick, M., & Rusk, N. (2008). Programming by Choice: Urban Youth Learning Programming with Scratch. In SIGCSE ’08 (pp. 367–371). Portland, Oregon, USA.
  • Maloney, J., Resnick, M., Rusk, N., Silverman, B., & Eastmond, E. (2010). The Scratch Programming Language and Environment. ACM Transaction on Computing Education, 10(4), 16:1-16:15.
  • Mannila, L., Peltomäki, M., & Salakoski, T. (2006). What about a simple language? Analyzing the difficulties in learning to program. Computer Science Education, 16(3), 211–227.
  • Meerbaum-Salant, O., Armoni, M., & Ben-Ari, M. (2013). Learning Computer Science Concepts with Scratch. Computer Science Education, 23(3), 239-264.
  • MIT App Inventor, (2019). About us. Retrieved March 5, 2019 from http://appinventor.mit.edu/explore/about-us.html
  • Morelli, R., de Lanerolle, T., Lake, P., Limardo, N., Tamotsu, E., & Uche, C. (2011). Can Android App Inventor Bring Computational Thinking to K-12? In SIGCSE’11. Dallas, Texas, USA.
  • Mueller, J., Beckett, D., Hennessey, E., & Shodiev, H. (2017). Assessing Computational Thinking Across the Curriculum. In Emerging Research, Practice, and Policy on Computational Thinking (pp. 251–267). Cham: Springer International Publishing.
  • Nygård, S., Kolås, L., & Sigurdardottir, H. (2016). Teachers’ Experiences Using KODU as a Teaching Tool. Proceedings of the Euro-pean Conference on Information Management & Evaluation, 416–422.
  • Pokress, S. C., & Veiga, J. D. (2013). MIT App Inventor: Enabling Personal Mobile Computing. ACM.
  • Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Kafai, Y. (2009). Scratch: Programming for All. Communications of the ACM, 52(11), 60-67.
  • Robins, A., Rountree, J., & Rountree, N. (2003). Learning and Teachin Programming: A Review and Discussion. Computer Science Education, 13(2), 137-172.
  • Sadik, O., Leftwich, A.-O., & Nadiruzzaman, H. (2017). Computational Thinking Conceptions and Misconceptions: Progression of Preservice Teacher Thinking During Computer Science Lesson Planning. In Emerging Research, Practice, and Policy on Computa-tional Thinking (pp. 221–238). Cham: Springer International Publishing.
  • Sandoval-Reyes, S., Galicia-Galicia, P., & Gutierrez-Sanchez, I. (2011). Visual Learning Environments for Computer Programming. Electronics, Robotics, and Automotive Mechanics Conference (pp. 439-444). Cuernavaca, Morelos: IEEE Computer Society.
  • Scratch, (2019). Age Distribution of New Scratchers. Retrieved March 5, 2019 from https://scratch.mit.edu/statistics/
  • Smutny, P. (2011). Visual Programming for Smartphones. International Carpathian Control Conference, (pp. 358 - 361). Velke Karlov-ice.
  • Sorva, J., Lönnberg, J., & Malmi, L. (2013). Students' Ways of Experiencing Visual Program Simulation. Computer Science Education, 23(3), 207-238.
  • Stemler, Steve (2001). An overview of content analysis. Practical Assessment, Research & Evaluation, 7(17).
  • Stolee, K. T., & Fristoe, T. (2011). Expressing computer science concepts through Kodu game lab. In Proceedings of the 42nd ACM technical symposium on Computer science education (pp. 99-104). ACM.
  • Su, A. Y., Yang, S. J., Hwang, W.-Y., Huang, C. S., & Tern, M.-Y. (2013). Investigating the role of computer-supported annotation in problem-solving-based teaching: An empirical study of a Scratch programming pedagogy. British Journal of Educational Technology.
  • Tangney, B., Oldham, E., Conneely, C., Barrett, S., & Lawlor, J. (2010). Pedagogy and Process for a Computer Programming Outreach Workshop - The Bridge to College Model. IEEE Transactions on Education, 53(1), 53-60.
  • Wagner, A., Gray, J., Corley, J., & Wolber, D. (2013). Using app inventor in a K-12 summer camp. Proceeding of the 44th ACM Technical Symposium on Computer Science Education - SIGCSE ’13, 621. https://doi.org/10.1145/2445196.2445377
  • Wiedenbeck, S. (2005). Factors affecting the success of non-majors in learning to program. In Proceedings of the 2005 international workshop on Computing education research - ICER ’05 (pp. 13–24). New York, New York, USA: ACM Press.
  • Wilson, A., Hainey, T., & Connoly, T. (2012). Evaluation of Computer Games Developed by Primary School Children to Gauge Un-derstanding of Programming Concepts. Proceedings of the European Conference on Games Based Learning, (pp. 549-558). Cork.
  • Weintrop, D., & Wilensky, U. (2017). Comparing block-based and text-based programming in high school computer science class-rooms. ACM Transactions on Computing Education (TOCE), 18(1), 3.
  • Yadav, A., Gretter, S., Hambrusch, S., & Sands, P. (2017). Expanding computer science education in schools: Understanding teacher experiences and challenges. Computer Science Education, 26(4), 235–254. https://doi.org/10.1080/08993408.2016.1257418

Comparing Three Free to Use Visual Programming Environments for Novice Programmers

Year 2019, Volume: 27 Issue: 6, 2701 - 2712, 15.11.2019
https://doi.org/10.24106/kefdergi.3640

Abstract

This study aims to examine and compare
three popular free-to-use visual programming environments. While choosing three
environments among other visual programming environments, three criteria were
taken into account which are being completely free, popular, and productive.
After reviewing several environments, MIT’s App Inventor, Scratch and
Microsoft’s Kodu Game Lab were chosen. While App Inventor and Scratch are free
and open source environments, Microsoft’s Kodu is only free to use. Selected
three environments were investigated through using and examining the
environments and literature review. Outcomes of this study can help teachers,
instructors and students to choose a relevant visual programming environment
based on their needs. Review of the environments showed that while Kodu is more
relevant for elementary students, Scratch’s target group are similar but also
includes higher age range. Another difference between them was that Kodu’s sole
purpose is to develop games in 3D, Scratch is used for 2D games and animations.
App Inventor, on the other hand, targets middle school and higher age range to
develop mobile applications for Android OS. Scratch and App Inventor uses the
same block-based library which is more relevant to teach basic programming
concepts such as variables, conditional expressions, and loops than Microsoft’s
Kodu. Selected three environments have the advantages of their own and features
specifically for their target audience and products. This study investigated
the important differences and features of the selected environments.

References

  • Aggarwal, A., Touretsky, D. S., & Gardner-McCune, C. (2018). Demonstrating the Ability of Elementary School Students to Reason about Programs. In Proceedings of the 49th ACM Technical Symposium on Computer Science Education (pp. 735-740). ACM.
  • Akcaoglu, M. (2014). Learning problem-solving through making games at the game design and learning summer program. Educational Technology Research and Development, 62(5), 583–600. http://doi.org/10.1007/s11423-014-9347-4
  • Arilesere, F. O. (2014). Kodu game lab - a tool for ensuring quality teaching-learning for pupils in primary schools: case study (school in Northern Finland) (Master’s Thesis). Retrieved from Networked Digital Library of Theses & Dissertations. University of Oulu, Finland.
  • Armoni, M., Meerbaum-Salant, O., & Ben-Ari, M. (2015). From Scratch to “Real” Programming. ACM Transactions on Computing Education, 14(4), 1–15. https://doi.org/10.1145/2677087
  • Alzahrani, M. G. (2017). The Effect of Using Online Discussion Forums on Students' Learning. Turkish Online Journal of Educational Technology-TOJET, 16(1), 164-176.
  • Bennedsen, J., & Caspersen, M. E. (2012). Persistence of Elementary Programming Skills. Computer Science Education, 22(2), 81-107.
  • Berg, B. L. (2001). Qualitative research methods for the social sciences. Qualitative Research (Vol. Seventh Ed). https://doi.org/10.2307/1317652
  • Bertea, A. F. (2011). Mobile Learning Applications Using Google App Inventor for Android. The International Scientific Conference eLearning and Software for Education. Bucharest.
  • Coy, S. (2013). Kodu game lab, a few lessons learned. XRDS: Crossroads, The ACM Magazine for Students, 19(4), 44. http://doi.org/10.1145/2460436.2460450
  • Denner, J., Werner, L., & Ortiz, E. (2012). Computer games created by middle school girls: Can they be used to measure understanding of computer science concepts? Computers and Education, 58(1), 240–249. https://doi.org/10.1016/j.compedu.2011.08.006
  • Deek, F. P., & McHugh, J. A. (1998). A survey and critical analysis of tools for learning programming. Computer Science Education, 8(2), 130–178.
  • Dekhane, S., Xu, X., & Tsoi, M. Y. (2013). Mobile app development to increase student engagement and problem solving skills. Jour-nal of Information Systems Education, 24(4), 299–308.
  • Felleisen, M., Findler, R. B., Flatt, M., & Krishnamurthi, S. (2004). The TeachScheme! Project: Computing and Programming for Every Student. Computer Science Education, 14(1), 55–77.
  • Fowler, A., Fristce, T., & Maclauren, M. (2012). Kodu Game Lab: a programming environment. The Computer Games Journal, 1(1), 17–28. Retrieved from www.computergamesjournal.com
  • Google, (2018). Introduction to blockly. Retrieved March 3, 2019 from https://developers.google.com/blockly/guides/overview
  • Hsieh, H.F., & Shannon, S. E. (2005). Three Approaches to Qualitative Content Analysis. Qualitative Health Research, 15(9), 1277-1288. http://doi.org/10.1177/1049732305276687
  • Hickmott, D., & Prieto-Rodriguez, E. (2018). To Assess or Not to Assess: Tensions Negotiated in Six Years of Teaching Teachers about Computational Thinking. Informatics in Education, 17(2), 229-244.
  • Hsu, Y. C., & Ching, Y.-H. (2013). Mobile App Design for Teaching and Learning: Educators' Experiences in an Online Graduate Course. The International Review of Research in Open and Distance Learning, 14(4), 117-139.
  • Kelly, J. F. (2013). Kodu for Kids: The Official Guide to Creating Your Own Video Games. Que Publishing.
  • Kwon, D., Yoon, I., & Lee, W. (2011). Design of Programming Learning Process using Hybrid Programming Environment for Com-puting Education. KSII TRANSACTIONS ON INTERNET AND INFORMATION SYSTEMS, 5(10), 1799-1812.
  • Lee, Y. J. (2011). Scratch: Multimedia Programming Environment for Young Gifted Learners. Gifted Child Today, 34(2), 26-31.
  • Liu, E. Z. F., Cheng, S. S., & Lin, C. H. (2013). The effects of using online q&a discussion forums with different characteristics as a learning resource. The Asia-Pacific Education Researcher, 22(4), 667-675.
  • Malan, D. J., & Leitner, H. H. (2007). Scratch for Budding Computer Scientists. SIGCSE (pp. 223-227). Kentucky: ACM.
  • Maloney, J., Peppler, K., Kafai, Y. B., Resnick, M., & Rusk, N. (2008). Programming by Choice: Urban Youth Learning Programming with Scratch. In SIGCSE ’08 (pp. 367–371). Portland, Oregon, USA.
  • Maloney, J., Resnick, M., Rusk, N., Silverman, B., & Eastmond, E. (2010). The Scratch Programming Language and Environment. ACM Transaction on Computing Education, 10(4), 16:1-16:15.
  • Mannila, L., Peltomäki, M., & Salakoski, T. (2006). What about a simple language? Analyzing the difficulties in learning to program. Computer Science Education, 16(3), 211–227.
  • Meerbaum-Salant, O., Armoni, M., & Ben-Ari, M. (2013). Learning Computer Science Concepts with Scratch. Computer Science Education, 23(3), 239-264.
  • MIT App Inventor, (2019). About us. Retrieved March 5, 2019 from http://appinventor.mit.edu/explore/about-us.html
  • Morelli, R., de Lanerolle, T., Lake, P., Limardo, N., Tamotsu, E., & Uche, C. (2011). Can Android App Inventor Bring Computational Thinking to K-12? In SIGCSE’11. Dallas, Texas, USA.
  • Mueller, J., Beckett, D., Hennessey, E., & Shodiev, H. (2017). Assessing Computational Thinking Across the Curriculum. In Emerging Research, Practice, and Policy on Computational Thinking (pp. 251–267). Cham: Springer International Publishing.
  • Nygård, S., Kolås, L., & Sigurdardottir, H. (2016). Teachers’ Experiences Using KODU as a Teaching Tool. Proceedings of the Euro-pean Conference on Information Management & Evaluation, 416–422.
  • Pokress, S. C., & Veiga, J. D. (2013). MIT App Inventor: Enabling Personal Mobile Computing. ACM.
  • Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Kafai, Y. (2009). Scratch: Programming for All. Communications of the ACM, 52(11), 60-67.
  • Robins, A., Rountree, J., & Rountree, N. (2003). Learning and Teachin Programming: A Review and Discussion. Computer Science Education, 13(2), 137-172.
  • Sadik, O., Leftwich, A.-O., & Nadiruzzaman, H. (2017). Computational Thinking Conceptions and Misconceptions: Progression of Preservice Teacher Thinking During Computer Science Lesson Planning. In Emerging Research, Practice, and Policy on Computa-tional Thinking (pp. 221–238). Cham: Springer International Publishing.
  • Sandoval-Reyes, S., Galicia-Galicia, P., & Gutierrez-Sanchez, I. (2011). Visual Learning Environments for Computer Programming. Electronics, Robotics, and Automotive Mechanics Conference (pp. 439-444). Cuernavaca, Morelos: IEEE Computer Society.
  • Scratch, (2019). Age Distribution of New Scratchers. Retrieved March 5, 2019 from https://scratch.mit.edu/statistics/
  • Smutny, P. (2011). Visual Programming for Smartphones. International Carpathian Control Conference, (pp. 358 - 361). Velke Karlov-ice.
  • Sorva, J., Lönnberg, J., & Malmi, L. (2013). Students' Ways of Experiencing Visual Program Simulation. Computer Science Education, 23(3), 207-238.
  • Stemler, Steve (2001). An overview of content analysis. Practical Assessment, Research & Evaluation, 7(17).
  • Stolee, K. T., & Fristoe, T. (2011). Expressing computer science concepts through Kodu game lab. In Proceedings of the 42nd ACM technical symposium on Computer science education (pp. 99-104). ACM.
  • Su, A. Y., Yang, S. J., Hwang, W.-Y., Huang, C. S., & Tern, M.-Y. (2013). Investigating the role of computer-supported annotation in problem-solving-based teaching: An empirical study of a Scratch programming pedagogy. British Journal of Educational Technology.
  • Tangney, B., Oldham, E., Conneely, C., Barrett, S., & Lawlor, J. (2010). Pedagogy and Process for a Computer Programming Outreach Workshop - The Bridge to College Model. IEEE Transactions on Education, 53(1), 53-60.
  • Wagner, A., Gray, J., Corley, J., & Wolber, D. (2013). Using app inventor in a K-12 summer camp. Proceeding of the 44th ACM Technical Symposium on Computer Science Education - SIGCSE ’13, 621. https://doi.org/10.1145/2445196.2445377
  • Wiedenbeck, S. (2005). Factors affecting the success of non-majors in learning to program. In Proceedings of the 2005 international workshop on Computing education research - ICER ’05 (pp. 13–24). New York, New York, USA: ACM Press.
  • Wilson, A., Hainey, T., & Connoly, T. (2012). Evaluation of Computer Games Developed by Primary School Children to Gauge Un-derstanding of Programming Concepts. Proceedings of the European Conference on Games Based Learning, (pp. 549-558). Cork.
  • Weintrop, D., & Wilensky, U. (2017). Comparing block-based and text-based programming in high school computer science class-rooms. ACM Transactions on Computing Education (TOCE), 18(1), 3.
  • Yadav, A., Gretter, S., Hambrusch, S., & Sands, P. (2017). Expanding computer science education in schools: Understanding teacher experiences and challenges. Computer Science Education, 26(4), 235–254. https://doi.org/10.1080/08993408.2016.1257418
There are 48 citations in total.

Details

Primary Language English
Journal Section Research Article
Authors

Kadir Yücel Kaya 0000-0001-7561-980X

İsmail Yıldız This is me 0000-0003-3048-2840

Publication Date November 15, 2019
Acceptance Date April 1, 2019
Published in Issue Year 2019 Volume: 27 Issue: 6

Cite

APA Kaya, K. Y., & Yıldız, İ. (2019). Comparing Three Free to Use Visual Programming Environments for Novice Programmers. Kastamonu Education Journal, 27(6), 2701-2712. https://doi.org/10.24106/kefdergi.3640

10037