The effect of visual and text interfaces in teaching robot programming
Robot programlama öğretiminde görsel ve metin arayüzlerin etkisi
- Tez No: 485318
- Danışmanlar: YRD. DOÇ. DR. GÖKHAN İNCE
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2017
- Dil: İngilizce
- Üniversite: İstanbul Teknik Üniversitesi
- Enstitü: Fen Bilimleri Enstitüsü
- Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
- Bilim Dalı: Bilgisayar Mühendisliği Bilim Dalı
- Sayfa Sayısı: 67
Özet
Programlama, eğitim alanında popüler bir konudur ve uzmanlar çocuklara lisede ya da daha erken yaşta programlama öğretmenin önemini vurgulamaktalar. Bir çok Avrupa ülkesinde, eğitim bakanlıkları programlama eğitimini okul müfredatlarına eklemeye çalışmaktadır. Bazı ülkeler liselerde zaten bir programlama sınıfına sahipler ve daha genç öğrencilere programlama sınıfı sağlamayı düşünüyorlar. Bu açıdan, programlama eğitiminde kullanılacak yöntemler çok önemli bir konu olmaktadır ve daha başarılı bir yöntem belirlemek bu alanın en büyük problemlerinden biridir. Bu çalışma, bu soruna değinmekte ve farklı programlama arayüzlerini birbirleriyle karşılaştırmaktadır. Programlamayı öğretirken programlama ortamının anlaşılmasını arttırmak için ise bir eğitim robotu kullanılmıştır. Seçilen eğitim robotu Thymio, önceden herhangi bir elektronik bilgiye sahip olunmasına ihtiyaç duymamakta ve programlamadan önce donanımla ilgili bir yapılandırmaya ihtiyaç duymamaktadır. Bu nedenle, Thymio kullanırken öğrenciler yalnızca programlama kısmına odaklanarak robotun farklı işlevlerini kullanabilirler. Thymio basit yapılıdır, üzerinde yeterince sayıda sensör barındırır. Kendine özel bir programlama dili ve farklı işletim sistemleri için geliştirme ortamı bulunmaktadır ve daha önemlisi daha erişilebilir ve çocuklar için daha uygundur. çünkü basit ve sınırlı sayıda sensör ve çıkış aygıtı ile yapılmıştır. Ayrıca Thymio iki farklı programlama arabirimini destekler. Birincisi, Aseba Event Scripting Language (AESL) olarak adlandırılan metin tabanlı programlama dili ve diğeri Visual Programming Language (VPL) olarak adlandırılan ikon tabanlı programlama arabirimidir. Bu çalışma, programlama arayüzleri ve bunların programlama eğitiminin başarısı üzerindeki etkileri üzerine yoğunlaşmıştır. Bu nedenle, öğrencilere programlama öğretmek için AESL ve VPL arayüzleri kullanılmıştır. VPL tamamen simge tabanlı bir programlama arabirimidir ve anahtar kelimeler içermez. Robotlar, arayüzde gerekli simgeleri sürükleyip bırakarak programlanabilir. Öğrencilerin klavyeyi kullanmaları veya herhangi bir teknik ayrıntı bilmeleri gerekmez. Öte yandan, AESL, farklı anahtar kelimelerle sözdizimi kurallarına sahip kelime tabanlı bir metin programlama dilidir. Değişkenler, karar mekanizması, döngüler vb. temel programlama özelliklerini içerir. Robot olaylarıyla uyumlu olması için olay tabanlı bir dil olarak tasarlanmıştır. AESL arayüzünü kullanabilmek için öğrencilerin ˙Ingilizce anahtar kelimeleri anlayabilmesi ve temel seviyede ˙Ingilizce bilmeleri gerekmektedir. Bu gerekliliğin etkisini test etmek için, orijinal AESL arayüzlerine ek olarak, TAESL denilen eşdeğer bir Türkçe anahtar kelime tabanlı AESL arayüzü geliştirilmiştir. TAESL'de tüm anahtar kelimeler ve yerli işlevler, Türkçe anahtar kelimelerle yeniden adlandırılmıştır. Bunu yapabilmek için geliştirme ortamını ve robot gömülü yazılımı değiştirilmiştir. Robot ile programlamayı öğreterek arayüzleri öğrencilerle test edebilmek için bir müfredat oluşturuldu. AESL ve VPL arayüz yapılarına ve Thymio'nun özelliklerine göre üç ders hazırlandı. Birinci ders genellikle giriş konuları ile programlama ve geliştirme ortamına yönelik hazırlandı. ˙Ikinci derste, Thymio'nin basit sensörleri ve çıkış aygıtları ile karar mekanizmasına odaklandık. Üçüncü derste, robot bileşenlerinin ve programlama özelliklerinin tamamlayıcı unsurları incelendi. Yeni konulara ek olarak, algoritmaların ve yeni konuların daha iyi anlaşılmasını sağlamak için eski konular pekiştirildi. Öğretim stratejisi ve sonuçta yapılan değerlendirme deneyleri temel programlama konularına odaklandı. Öğrencilerin kişisel becerilerinin ve bilişsel düzeylerinin etkilerini göz ardı edebilmemiz için konuları oldukça basit tutuldu. Ayrıca, VPL ve AESL dilleri, robotu kontrol etmek için uzun kod parçasına ihtiyaç duymadığından, karmaşık algoritmalardan ve uzun kod parçalardan kaçınıldı. Bu nedenle örneklerin neredeyse tamamı birkaç satırlık koddan oluşmaktadır. Bu, öğretimin karmaşıklığını en aza indirdi ve böylece algoritma oluşturma, hata ayıklama ve değerlendirme üzerindeki etkileri göz ardı edilebildi. Eğitmenin etkilerini azaltmak için her ders için video dersi hazırlandı. Buna ek olarak dersler bire bir eğitim şeklinde organize edildi, böylece sınıf ortamlarının öğretmeyle olan etkileri en aza indirildi. Her dersin klasik tarzda 45 dakikalık bir oturum olması planlandı. Dersin ilk 20 dakikası ders bölümüne ayrılmıştır. Bu bölümde, öğrenciler ders videolarını izlediler ve sorularını sordular. Sonraki 10 dakika, robotla pratik yapmak için ayrılmıştır. Son 15 dakikalık bölüm sınav bölümüne ayrılmıştır. Değerlendirme aşamasında ise toplanan kodlar, gerekli yerlerde engeller ve boşluklar olan önceden tasarlanmış değerlendirme ortamında test edilmiştir. Her bir hedef, verilen sırayla değerlendirilmiş ve yalnızca, kodun beklenen sonuca ulaşması durumunda başarılı sayılmıştır. Testlerimize yaşları 7 ile 24 arasında ortalama 14.3 ve standart sapması 5.25 olan 32 öğrenci katılmıştır. Öğrencilerin çoğunluğu daha önce hiç programlama tecrübesine sahip değildiler ve geri kalanlarının programlama konusunda az seviyede ön bilgileri mevcuttu. Öğrencileri, görsel programlama (Grup 1), metin programlama (Grup 2) ve görsel programlamadan sonra metin programlama çalışan (Grup 3) öğrenciler şeklinde üç farklı gruba ayırdık. Deney sonucuna göre, görsel programlama ile eğitim gören öğrenciler yalnızca metin programlamayı okuyan öğrencilere göre daha başarılı olmuşlardır. Bu beklenen bir sonuçtur, çünkü görsel programlama çok daha hızlı ve basittir. Yani, görsel programlama dillerinin programlamayı öğrenmek için daha uygun olduğu söylenebilir. Yalnızca metin programlamayı öğrenen öğrencileri önce görsel programlama sonra metin programlama öğrenen öğrencilerle karşılaştırdığımızda önce görsel programlama sonra metin programlama öğrenen öğrencilerin yalnızca metin programlama öğrenenlerden daha başarılı olduklarını gördük. Bu karşılaştırmalar görsel dillerle kodlama öğrenmenin daha sonra metin tabanlı programlama dilleri öğrenmeye yardımcı olduğunu gösteriyor. Testlerimizde bir diğer değerlendirme kriteri, her arabirim için harcanan zamandı. görsel programlama arayüzü üzerinde harcanan zaman görsel programlamanın sadeliğinden ötürü daima diğerlerinden daha küçük olsa da, görsel programlama dillerinin etkileri, görsel programlamadan sonra metin programlama ile sadece metin programlama arayüzleri arasında programlama için harcanan zaman farkları kullanılarak görülebilir. Bu sonuçlara göre, görsel dillerle kodlama öğrenmenin metin tabanlı programlamayı daha hızlı öğretmeyi sağladığını söyleyebiliriz. Ayrıca orijinal AESL ile öğrenen öğrencilerin sonuçları ve Türkçe AESL ile çalışan öğrencilerin sonuçları karşılaştırılmıştır. Test sonuçlarımızda orijinal AESL ve Türkçe AESL başarı oranları arasında anlamlı bir fark bulunamamıştır. Orijinal AESL ve Türkçe AESL arasında ortalama başarı oranları neredeyse aynıdır. Sonuç olarak robotlarla programlama öğretmek için farklı programlama arabirimleri kullandık ve deneylerin sonuçlarını karşılaştırdık. Deney sonuçlarımıza göre, görsel programlama dillerinin daha kolay kullanılabilir olduklarını ve programlamanın daha çabuk öğrenildiğini doğruladık. Deneylerde, görsel programlama ile kodlama yapan öğrenciler genel olarak daha yüksek başarı oranına sahipti. Buna ek olarak, metin programlamayı öğrenirken, öğrencilerin daha önce görsel programlama geçmişlerine sahip olmaları durumunda, metin programlama kavramlarını öğrenmede daha başarılı sonuçlar elde ettiklerini gördük. Görsel programlama dilleri ilk kez programlama öğrenmek için kullanılıyorsa öğrenciler diğer programlama dillerine daha kolay uyum sağlarlar. Ayrıca, testimize göre, bir anadil tabanlı programlama dili kullanmak, programlama öğrenimine herhangi bir etki yapmamaktadır.
Özet (Çeviri)
Programming is a popular subject in education and experts emphasize the importance of teaching programming to the children in the high school or even earlier. In European countries, ministries of education give efforts to integrate programming education to school curricula. Some of these countries already have programming classes in high schools and consider to give programming class to younger students. In this respect, methods of the programming education is an important subject and deciding on more successful methods is the problem of this area. In this work, we address this problem and compare different programming interfaces to each other. While teaching programming, we use an educational robot to increase the understanding of the programming environment. Thymio, which is the educational robot we choose, does not require any knowledge of electronics beforehand and it is in no need of hardware related constructions before the programming. Therefore, when using Thymio our students can focus only the programming part and use different prebuilt functions of the robot. Thymio is simple structured, has a special programming language and development environment for different operating systems and more importantly it is more accessible and suitable for children because it was made of simple and limited number of sensors and actuators. Also Thymio supports two different programming interfaces. First one is text based programming language which is called Aseba Event Scripting Language (AESL) and the other is icon based programming interface which is called Visual Programming Language (VPL). This study focuses on the programming interfaces and their effects on the performance of programming education. Therefore, we use text programming and visual programming interfaces to teach programming to students. VPL is a purely icon based programming interface and it does not have keywords. Robots can be programmed using only drag and dropping the required icons on the interface. Students do not need to use keyboard and they are not required to know any technical details. On the other hand, AESL is keyword based text programming language which has syntax rules with different keywords. Basic programming features such as variables, decision mechanism, loops etc. are included in the language. It has been designed as event based language to be compatible with robot events. To be able to use AESL interface, students must know basic English and must understand English keywords. To test the effect of this requirement, in addition to original AESL interface we developed an equivalent Turkish keyword based AESL, which we call TAESL. In TAESL, all the keywords and native functions are replaced with Turkish keywords. To be able to do this, we modify the development environment and robot's firmware. To test our interfaces with the students, we also prepared a curriculum for teaching programming with a robot. We prepare three lessons according to text programming and visual programming interface structures and Thymio's features. First lesson generally covered introductory subjects to programming and development environment. In the second lesson, we focused on the decision mechanism with minor sensors and actuators of Thymio. In the third lesson, we covered complementary elements to robot components and programming features. In addition to new topics, we have reinforced previous topics to reach a better understanding of algorithms as well as introducing new topics. Our teaching strategy as well as the consequent assessment experiments focused on basic programming subjects. We kept the lectures rather simple, so that we can ignore effects of personal skills and cognitive levels of the students. Also the languages, VPL and AESL, do not need long code portions to control the robot; so we avoid using complex algorithms and long code parts. Almost all of the examples consist of a few lines of code. This minimizes the complexity of teaching, thus we ignore the algorithm creation, debugging and testing effects on our evaluation. In order to reduce the effects of lecturer, we prepare in the form of recorded lectures based on video for each lesson. In addition to that, we organize the lectures as one to one training, thus we minimized the effects of the classroom environments in teaching. Each lecture is planned to be a traditional 45-minutes long session. First 20 minutes of the lesson is devoted to the lecture part. In this section, students watch the lecture videos and ask their questions. Next 10 minutes are reserved for practicing with the robot freely. The final 15 minutes section is dedicated to the exam part. In the evaluation phase, collected codes are tested by our team in predesigned evaluation environment which has obstacles and cliffs at necessary locations. Each objective is assessed in the given order and the student is considered successful only if the code produces the expected outcome. In our experiments, 32 students, within ages of 7 to 24 with an average 14.3 and standard deviation 5.25 participated. The majority of the students had no experience with programming before and rest of them had barely some experience on programming. We divided students into 3 different groups, students who studied visual programming (Group 1), students who studied text programming (Group 2) and students who studied text programming after visual programming (Group 3). According to the results of experiments, students who studied with visual programming have been more successful than students who studied only text programming. This is an expected result because visual programming is faster and simpler to program. So, it can be said that the visual programming languages are better for learning programming. When we compare the performance of the students who studied only text programming, with the performance of the students who studied visual programming first and then text programming, we observed that students who studied text programming after visual programming have been more successful than students who studied text programming only. This comparison shows that learning programming with visual languages helps to learn text based programming languages later. Another performance criterion in our tests is the time spent on each interface. While time spent on the visual programming interface is always less than the others because of the simplicity of the visual programming, the effects of the visual programming languages can be seen on the time spend for programming on between text programming after visual programming and just text programming interfaces. According to these result we can say that learning programming with visual languages helps to adapt text based programming faster. We also compared the results of the students who study with original text programming to the results of the students who study with TAESL. In our test results there is no significant difference between the success rates of original AESL and TAESL. Average success rates is nearly identical in original AESL and TAESL. In conclusion, we used different programming interfaces to teach programming using robots and compared the results of the experiments. According to result of our experiments, visual programming languages are found to be easier and quicker to learn. In the experiments, using visual programming students had higher success rates overall. In addition to that, when learning text programming, if students have visual programming background before, they had more successful results on learning text programming concepts. So, we verified that if visual programming languages are used for learning programming first time, students can adapt to other programming languages easier. Also, according to our experimental results, using a mother-tongue based programming language does not have any effect on the learning of programming.
Benzer Tezler
- The significance and the contribution of 6+1 traits of writing to the success of the students in writing courses in English language teaching
Yazmanın 6+1 özelliğinin İngilizce öğretiminde yazılı anlatım derslerindeki öğrenci başarısına katkısı ve önemi
ÖZLEM YAZAR
Yüksek Lisans
İngilizce
2004
Eğitim ve ÖğretimGazi Üniversitesiİngiliz Dili Eğitimi Ana Bilim Dalı
YRD. DOÇ. DR. PAŞA TEVFİK CEPHE
- Seçilmiş Türk efsanelerinden etkileşimli bir elektronik kitap uygulaması
An interactive electronic book application interacted with selected Turkish legends
BANU BULDUK
Sanatta Yeterlik
Türkçe
2015
Güzel SanatlarHacettepe ÜniversitesiGrafik Ana Sanat Dalı
PROF. DR. İNCİLAY YURDAKUL
- Doğu Karadeniz mimari arşivi için sanal gerçeklik modeli
Virtual reality model for Eastern Black Sea architectural archive
AYHAN KARADAYI
- Üniversite öğrencilerinin eğitsel yazılım ekran tasarımı seçiminde kişiliğin etkisi
The effect of personality on university students? preferences of educational software interface design
ÜMİT DEMİR
Doktora
Türkçe
2009
Eğitim ve ÖğretimDokuz Eylül ÜniversitesiEğitim Bilimleri Bölümü
DOÇ. DR. ERALP ALTUN
- A Numerical study on pile deflection-soil reaction (p-y) curves
Kazık yer değiştirmesi-toprak itkisi (p-y) eğrileri üzerine sayısal bir çalışma
GÖKHAN GÖZÜTOK
Yüksek Lisans
İngilizce
1999
İnşaat MühendisliğiBoğaziçi Üniversitesiİnşaat Mühendisliği Ana Bilim Dalı
PROF. DR. GÖKHAN BAYKAL