PROGRAMLAMA ÖĞRENİMİNDE GÖRSELLEŞTİRMENİN ETKİSİ: ALİCE
Öz Yıllardır süregelen bir problem olarak eğitimcilerin ve araştırmacıların karşısına çıkan programlama derslerindeki yüksek dersten kalma oranları, araştırmacıları farklı çözüm yolları üretmeye yöneltmektedir. Çeşitli çalışmalarda problemin sebeplerini ortadan kaldırmaya yönelik, web tabanlı araçlar, oyunlar, iki ve üç boyutlu programlar, arayüz yazılımları gibi bir takım araçlar geliştirildiği ve kullanıldığı görülmektedir. Bu araçların birçoğunun programlama öğretiminde gerekli olan becerilerin soyut düşünme, eleştirel düşünme, algoritmik düşünme, problem çözme gibi kazandırılmasını kolaylaştırmaya yönelik soyut kavramları somutlaştırmaya yarayan görselleştirme yazılımları olduğu açıktır. Tanınmış görselleştirme araçlarından biri Alice’dir. Alice, nesne yönelimli ve 3 boyutlu etkileşimli görsel destekli bir programlama ortamıdır. Bu çalışmada; programlamaya giriş dersindeki düşük başarı oranlarından hareketle öğrencilerin söz konusu becerileri geliştirmelerine yardımcı olacak Alice ortamının PHP programlama dilinin öğretimi için kullanımı değerlendirilmiştir. Deney ve kontrol gruplarının oluşturulduğu araştırmada deney grubunda Php programlama dili Alice yardımı ile öğretilirken, kontrol grubunda herhangi bir yardımcı araç kullanmadan öğretim yapılmıştır. Araştırma; deney grubunda 20, kontrol grubunda 19 kişi olmak üzere toplam 39 lisans öğrencisi ile gerçekleştirilmiştir. Süreç içinde ALICE ortamının; öğrencilerin eleştirel düşünme ve problem çözme becerileri ile üstbilişsel farkındalık düzeylerine etkisi incelenmiş, araştırma sonucunda elde edilen verilerin analizi ile Alice ortamının bu 3 değişken üzerinde anlamlı bir fark yaratmadığı ortaya çıkmıştır. Bulgular, benzer araştırma sonuçları ile karşılaştırılarak irdelenmiş ve gelecek araştırmalar için çeşitli öneriler verilmiştir.
PROGRAMLAMA ÖĞRENİMİNDE GÖRSELLEŞTİRMENİN ETKİSİ: ALİCE
___
- Adán-Coello, J. M., Tobar, C. M., Faria, E. J. , Menezes, W. S. ve Freitas, R. L. (2011). Forming groups
for collaborative learning of introductory computer programming based on students’
programming skills and learning styles. International Journal of Information and Communication
Technology Education, 7(4), 34-46.
- Akın, A., Abacı, R. ve Çetin, B. (2007). The validity and reliability of the Turkish version of the
metacognitive awareness inventory. Educational Sciences: Theory & Practice, 7(2), 671-678.
- Baldwin, L. P. ve Kuljis, J. (2001, January). Learning programming using program visualization
techniques. Paper presented at the 34th annual Hawaii international conference on system sciences,
Maui, HI, USA.
- Ben—Ari, M. (2013). Visualization of programming. İçinde Kadijevich, D. M., Angeli, C. ve Schulte, C.
(Ed.), Improving Computer Science Education (ss. 61-74). New York: Routledge.
- Berge, O., Borge, R.E., Fjuk, A., Kaasboll, J., ve Samuelsen, T. (2003, November). Learning object
oriented programming. Paper presented at the Norsk informatik konferanse (Norwegian informatics
conference), Oslo, Norway.
- Borg, W. R. ve Gall, M. D. (1979). Educational Research: An Introduction (third edition). London:
Longman.
- Brusilovsky, P., Kouchnirenko, A., Miller, P. ve Tomek, I. (1994, June). Teaching programming to
novices: a review of approaches and tools. Proceedings of ED-MEDIA 94--World conference on
educational multimedia and hypermedia, Vancouver, British Columbia, Canada, pp. 103-110.
- Brusilovsky, P., Calabrese, E., Hvorecky, J., Kouchnirenko, A. ve Miller, P. (1997). Mini-languages: a
way to learn programming principles. Education and Information Technologies, 2, 65-83.
- Bucci, P., Long, T. J. ve Weide, B. W. (2001). Do we really teach abstraction?. ACM SIGCSE Bulletin,
33(1), 26-30.
- Büyüköztürk, Ş. (2008). Sosyal Bilimler için Veri Analizi El Kitabı, 9.Baskı. Ankara: Pegem Akademi.
- Carlisle, M.C., Wilson, T. A., Humphries, J. W., ve Hadfield, S. M. (2005). RAPTOR: A visual
programming environment for teaching algorithmic problem solving. ACM SIGCSE Bulletin
37(1), 176-180.
- Cervesato, I. (2008). On teaching programming languages using a wiki. Report, Computer Science
Department, Carnegie Mellon University, USA. Retreived from
http://repository.cmu.edu/compsci/2
- Cliburn, D. C. (2008, October). Student opinions of Alice in CS1. Paper Presented at the 38th Annual
Frontiers in Education Conference, Saratoga Springs, NY, USA, doi: 10.1109/FIE.2008.4720254
- Cohen, L., Manion, L. ve Morrison, K. (2007). Research Methods in Education (Sixth Edition). London:
Routledge.
- Cooper, S., Dann, W. ve Pausch, R. (2000a). Alice: A 3-D tool for introductory programming concepts.
Journal of Computing Sciences in Small Colleges, 15(5), 107-116.
- Cooper, S., Dann, W. ve Pausch, R. (2000b). Developing algorithmic thinking with Alice. In D. Colton
(Ed.), Proceedings of the 17th Information Systems Education Conference (ISECON 2000) (pp. 506-
539), Pensilvania, USA, Vol. 17.
- Cooper, S., Dann, W. ve Pausch, R. (2003). Using animated 3D graphics to prepare novices for CS1.
Computer Science Education, 13 (1), 3-30.
- Costa, C. J., Aparicio, M. ve Cordeiro, C. (2012, June). A solution to support student learning of
programming. Proceedings of The Workshop on Open Source and Design of Communication (pp. 25-
29). ACM.
- Dann, W., Cooper, S. ve Pausch, R. (2000, July). Making the connection: programming with animated
small worlds. Proceedings of the 5th Annual SIGCSE Conference on Innovation and Technology in
Computer Science Education (ITiCSE 2000) ( pp. 41-44), Helsinki, Finland.
- Dass, N., Kim, J., Ford, S., Agarwal, S. ve Chau, D. H. P. (2018, April). Augmenting coding:
augmented reality for learning programming. Proceedings of the Sixth International Symposium of
Chinese CHI (pp: 156-159), Montreal, Canada.
- Doherty, L. ve Kumar, V. (2009, August). Teaching programming through games. Paper presented at
International Workshop on Technology for Education. Bangalore, India.
- Driscoll, M. (1994). Gagne’s theory of instruction. Psychology of Learning for Instruction. Boston, MA,
Allyn and Bacon, 329-358.
- Futschek, G. (2006). Algorithmic thinking: the key for understanding computer science. In R. T.
Mittermeir (Ed.), Proceedings of Evolution and Perspectives: 2nd International Conference in
Informatics in Secondary Schools (ISSEP 2006) (pp. 159 – 168). Berlin: Springer.
- Gagné, R. M. (1985). The conditions of learning and theory of instruction. New York: Holt, Rinehart and
Winston.
- Gallant, R. J. ve Mahmoud, Q. H. (2008, March). Using greenfoot and a moon scenario to teach java
programming in CS1. Paper presented at the 46th Annual Southeast Regional Conference on XX,
Auburn, Alabama, USA, New York: ACM.
- Gomes, A. ve Mendes, A. J. (2007, September). Learning to program – difficulties and solutions. Paper
presented at International Conference on Engineering Education, Coimbra, Portugal.
- Grant, N. S. (2003, October). A study on critical thinking, cognitive learning style, and gender in
various information science programming classes. Proceedings of the 4th Conference on
Information Technology Curriculum (pp. 96-99), Lafayette, Indiana, doi:10.1145/947121.947142
- Gundurao, H.K., Manjunath, N. S. ve Nachappa, M. N. (2010). Computer technology and computer
programming. IND: Global Media.
- Hansen, M. R. ve Kristensen, J. T. (2008). Experiences with functional programming in an introductory
curriculum. İçinde Bennedsen, J., Caspersen, M. E. ve Kölling, M. (Ed.), Reflections on the
teaching of programming methods and implementations (ss. 30-46). Berlin: Springer-Verlag.
- Helminen, J. ve Malmi, L. (2010, October). Jype - a program visualization and programming exercise
tool for Python. Proceedings of the 5th International Symposium on Software Visualization (pp. 153-
162), Utah, USA, doi:10.1145/1879211.1879234
- Heppner, P. P. ve Petersen, C. H. (1982). The development and implications of a personal problemsolving inventory. Journal of Counseling Psychology, 29(1), 66-75.
- Hernandez, C. C., Silva, L., Segura, R. A., Schimiguel, J., Ledon, M. F. P., Bezerra, L. N. M. ve Silveira,
I. F. (2010). Teaching programming principles through a game engine. Clei Electronic Journal,
13(2), 1-8.
- Howard, E. V., Evans, D., Courte, J. ve Bishop-Clark, C. (2006). A qualitative look at Alice and pairprogramming. Information Systems Education Journal, 7(80).
- Ibrahim, R., Rahim, N. Z. A., Ten, D. W. H., Yusoff, R., Maarop, N. ve Yaacob, S. (2018). Student's
opinions on online educational games for learning programming ıntroductory. International
Journal of Advanced Computer Science and Applications, 9(6), 332-340.
- Karsten, R., Kaparti, S. ve Roth, R. M. (2005). Teaching programming via the web: a time-tested
methodology. College Teaching Methods and Styles Journal, 1(3), 73- 79.
- Kay, J., Barg, M., Fekete, A., Greening, T., Hollands, O., Kingston, J. H. ve Crawford, K. (2000).
Problem-based learning for foundation computer science courses. Computer Science Education,
10(2), 109-128.
- Kalelioğlu, F. (2015). A new way of teaching programming skills to K-12 students: Code.org.
Computers in Human Behavior, 52, 200-210.
- Kiser, S. S. (1989). Logo programming, metacognitive skills in mathematical problem solving and mathematics
achievement. Unpublished Doctoral Dissertation, North Carolina University, USA.
- Klassen, M. (2006, July). Visual approach for teaching programming concepts. Proceedings of 9th
International Conference on Engineering Education (ICEE 2006) (pp. 23-28), San Juan, Puerto Rico.
- Kosurkar, V., Zade, A., Tikas, A., Prasad, S. ve Sure, B. (2017). Learning programming language with
game-like elements integrated on a web-based platform and assessment using formative
feedback. International Journal of Engineering Science, 7(3), 5268-5271.
- Kökdemir, D. (2003). Belirsizlik durumlarında karar verme ve problem çözme. Yayınlanmamış Doktora Tezi
(Unpublished doctoral dissertation), Social Science Institute, Ankara University, Ankara,
Turkey.
- Kölling, M. (2008). Greenfoot: a highly graphical ide for learning object-oriented programming. ACM
SIGCSE Bulletin, 40(3), 327-327.
- Lawrence, A., Badre, A. ve Stasko, J. (1994, October). Empirically evaluating the use of animations to
teach algorithms. Proceedings of 1994 IEEE Symposium on Visual Languages (pp. 48-54), St. Louis,
MO, USA, doi: 10.1109/VL.1994.363641
- Lin, H. ve Kuo, T. (2010, June). Teaching programming technique with edutainment robot
construction. Paper presented at The 2nd International Conference on Education Technology and
Computer (ICETC), Shanghai, China, doi: 10.1109/ICETC.2010.5529557
- Maloney, J., Burd, L., Kafai, Y., Rusk, N., Silverman, B. ve Resnick, M. (2004, January). Scratch: a sneak
preview. Paper presented at the 2nd International Conference On Creating, Connecting And
Collaborating Through Computing, Kyoto, Japan, pp. 104-109. doi: 10.1109/C5.2004.1314376
- Maloney, J., Resnick, M., Rusk, N., Silverman, B. ve Eastmond, E. (2010). The scratch programming
language and environment. ACM Transactions on Computing Education (TOCE), 10(4), 16, 1-15.
- Miyadera, Y., Kurasawa, K., Nakamura, S., Yonezawa, N. ve Yokoyama, S. (2007). A real-time
monitoring system for programming education using a generator of program animation
systems. Journal of Computers, 2(3), 12-20.
- Mohorovicic, S. ve Tijan, E. (2011). Blende learning model of teaching programming in higher
education. The Journal of Knowledge and Learning, 7(1), 2, 86-98.
- Moskal, B., Lurie, D. ve Cooper, S. (2004). Evaluating the effectiveness of a new instructional
approach. ACM SIGCSE Bulletin, 36(1), 75-79.
- Nascimento, M. R., Mendonça, A. P., Guerrero, D. D. S. ve Figueiredo, J. C. A. (2010, October).
Teaching programming for high school students: a distance education experience. Paper
presented at the 40th ASEE/IEEE Frontiers in Education Conference, Washington, DC, USA, 27-30
October 2010, doi:10.1109/FIE.2010.5673642.
- Ouahbi, I., Kaddari, F., Darhmaoui, H., Elachqar, A. ve Lahmine, S. (2015). Learning basic
programming concepts by creating games with scratch programming environment. ProcediaSocial and Behavioral Sciences, 191, 1479-1482.
- Partovi, H. ve Sahami, M. (2013). The hour of code is coming!. ACM SIGCSE Bulletin, 45(4), 5-5.
- Pausch, R. (head), Burnette, T., Capeheart, A. C., Conway, M., Cosgrove, D., DeLine, R., Durbin, J.,
Gossweiler, R., Koga, S. ve White, J. (1995). Alice: rapid prototyping system for virtual reality.
IEEE Computer Graphics and Applications, 15(3), 8-11.
- Price, K. W. (2003). Using visual technologies in the ıntroductory programming courses for computer science
majors. Doctoral dissertation, Nova Southeastern University Graduate School of Computer
and Information Sciences, USA.
- Radosevic, D., Orchovacki, T. ve Lovrencic, A. (2009, September). New approaches and tools in
teaching programming. Paper presented at the 20th Central European Conference on Information
And Intelligent Systems, Varazdin, Croatia, pp.49-57. Retrieved from
https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2505767
- Reigeluth, C. M. (1987). Instructional theories in action. Lessons illustrating selected theories and models.
Hillsdale, NJ: Lawrence Elrbaum Associates.
- Repenning, A. ve Sumner, T. (1995). Agentsheets: A medium for creating domain-oriented visual
languages. IEEE Computer, 28(3), 17-25.
- Resnick, M., Maloney, J., Monroy-Hernández, A., Rusk, N., Eastmond, E., Brennan, K., Millner, A.,
Rosenbaum, E., Silver, J., Silverman, B. ve Kafai, Y. (2009). Scratch: programming for all.
Communications of the ACM, 52(11), 60-67.
- Rogalski, J. ve Samurcay, R. (1990). Acquisition of programming knowledge and skills. İçinde Hoc, J.
M., Green, T. R. G., Samurcay, R. ve Gillmore, D. J. (Ed.). Psychology of programming (ss. 157-
174). London: Academic Press.
- Sagisaka, T. ve Watanabe, S. (2008, October). Toward the development of adaptive learning system ---
investigations of beginners in programming course based on learning strategies and
programming test with gradual levels. Paper presented at IADIS International Conference on
Cognition and Exploratory Learning in Digital Age (CELDA 2008), Freiburg, Germany.
- Sanders, D. ve Dorn, B. (2003). Jeroo: a tool for introducing object-oriented programming. ACM
SIGCSE Bulletin, 35(1), 201-204.
- Schraw, G. ve Dennison, R. S. (1994). Assessing metacognitive awareness. Contemporary Educational
Psychology, 19(4), 460-475.
- Shaft, T. M. (1995) Helping programmers understand computer programs: the use of metacognition.
ACM SIGMIS Database, 26(4), 25-46.
- Shneiderman, B. ve Mayer, R. (1979). Syntactic/semantic interactions in programmer behavior: a
model and experimental results. International Journal of Computer and Information Sciences, 8(3),
219-238.
- Şahin, N., Şahin, N. H. ve Heppner, P. P. (1993). Psychometric properties of the problem solving
inventory in a group of Turkish university students. Cognitive Therapy and Research, 17(4), 379-
396.
- Şendağ, S. ve Başer, Y. G. (2013). Öğretim teorileri ve öğretim teknolojileri. İçinde Çağıltay, K. ve
Göktaş, Y. (Ed.), Öğretim teknolojilerinin temelleri: teoriler, araştırmalar, eğilimler (ss. 133-151).
Ankara: Pegem Akademi.
- Tekdal, M. (2013). The effect of an example-based dynamic program visualization environment on
students' programming skills. Journal of Educational Technology & Society, 16(3), 400-410.
- Tsalapatas, H., Heidmann, O., Alimisi, R. ve Houstis, E. (2012). Game-based programming towards
developing algorithmic thinking skills in primary education. Scientific Bulletin of the Petru
Maior University of Targu Mures, 9(1), 56-63.
- Vihtonen, E., Alaoutinen, S. ve Kaarna, A. (2001, October). Computer supported learning environment
for c programming language. Proceedings of the First Annual Finnish / Baltic Sea Conference On
Computer Science Education (pp:27-32), Koli, Finland. Retrieved from
https://www.kolicalling.fi/old_cms/archive/2001/koli_proc_2001.pdf#page=31
- Wang, T., Mei, W., Lin, S., Chiu, S. ve Lin, J. M. (2009, October). Teaching programming concepts to
high school students with Alice. Paper presented at the 39th ASEE/IEEE Frontiers in Education
Conference, San Antonio, TX, USA, doi:10.1109/FIE.2009.5350486.
- Wilson, C. (2015). Hour of code---a record year for computer science. ACM Inroads, 6(1), 22-22.
Winslow, L. E. (1996). Programming pedagogy – a psychological overview. ACM SIGCSE Bulletin,
28(3), 17–22.
- Zaccone, R., Cooper, S. ve Dann, W. (2003, November). Using 3d animation programming in a core
engineering course seminar. Paper presented at the 3rd ASEE/IEEE Frontiers in Education
Conference, Westminster, CO, USA. Retrieved from
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1264764
- Zapušek, M. ve Rugelj, J. (2013). Learning programming with serious games. EAI Endorsed Trans. Game
Based Learn, 13(01), e6.
- Zhao, D., Chis, A. E., Muntean, G. M. ve Muntean, C. H. (2018, July). A large-scale pilot study on
game-based learning and blended learning methodologies in undergraduate programming
courses. Paper presented at EDULEARN Conference, Palma de Mallorca, Spain. Retrieved from
http://www.newtonproject.eu/wp-content/uploads/2018/08/4.-
Zhao_EDULEARN_CameraReady.pdf