933 research outputs found

    Language Choice in Introductory Programming Courses at Australasian and UK Universities

    Get PDF
    Parallel surveys of introductory programming courses were conducted in Australasia and the UK, with a view to examining the programming languages being used, the preferred integrated development environments (if any), and the reasons for these choices, alongside a number of other key aspects of these courses. This paper summarises some of the similarities and differences between the findings of the two surveys. In the UK, Java is clearly the dominant programming language in introductory programming courses, with Eclipse as the dominant environment. Java was also the dominant language in Australasia six years ago, but now shares the lead with Python; we speculate on the reasons for this. Other differences between the two surveys are equally interesting. Overall, however, there appears to be a reasonable similarity in the way these undergraduate courses are conducted in the UK and in Australasia. While the degree structures differ markedly between and within these regions -- a possible explanation for some of the differences -- some of the similarities are noteworthy and have the potential to provide insight into approaches in other regions and countries

    Factors Affecting the Adoption of Peer Instruction in Computing Courses

    Get PDF
    Peer Instruction (PI) as defined by Mazur, and variations on this pedagogic technique, have been in use in computing courses for about a decade. Despite dozens of educational research publications documenting positive learning effects, improved retention, student acceptance, and effectiveness for large classes; PI does not appear to be widely adopted for computing courses. This paper reports on a three-way investigation into this apparent contradiction. First, the authors reflect on their own adoption, practice, experience, and abandonment of the use of PI in computing courses. Second, we surveyed the literature regarding the use of PI in computing courses and present a summary of the research findings, variations, and extensions to PI used in computing courses. Third, a survey of computing instructors was conducted to gauge the attitude toward PI in computing courses. To add context, this report considers publications documenting usage of PI in STEM courses, and the adoption of other pedagogic techniques in computing. Particular effort was made to identify the reasons computing instructors don’t adopt PI. This report also includes advice to instructors considering adopting PI in computing courses

    Current Trends of Teaching Computer Programming in Undergraduate CS Programs: A Survey from Ecuadorian Universities

    Get PDF
    Abstract. Computer programming has become a relevant element of the modern era. Practically it is involved in all sectors of modern society. Currently, many universities around the globe offer bachelor’s degree programs that contain computer programming related courses. In order to gain insight into how computer programming is taught in Ecuadorian Higher Education Institutions (HEIs), we have conducted the first national survey on teaching computer programming in undergraduate CS programs. In this survey participated 53 respondents from 13 Ecuadorian HEIs. We report on programming paradigms, programming languages, integrated development environments and teaching strategies used in the programming learning process. We found that the object-oriented paradigm along with the Java programming language are the most often used. The NetBeans integrated development environment is the most commonly used among the respondents. Concerning teaching strategies, e-learning platforms are commonly used as part of computer programming courses. More than half of the respondents use collaborative strategies such as pair programming in their courses. Finally, a half of the respondents use traditional computer labs for teaching programming; however, other approaches such as mobile devices, games and simulations, Arduino kits and robots start to be used as a teaching strategy. Our findings can serve as a starting point for addressing reforms in computer programming courses taught in Ecuadorian CS undergraduate programs

    Scrum-Based Learning Environment: Fostering Self-Regulated Learning

    Get PDF
    Academics teaching software development courses are experimenting with teaching methods aiming to improve students’ learning experience and learning outcomes. Since Agile software development is gaining popularity in industry due to positive effects on managing projects, academics implement similar Agile approaches in student-centered learning environments. In this paper, we discuss teaching introductory programming based on Scrum. Our learning environment, supported by the Doubtfire learning management system, fosters perceived autonomy and perceived competence by providing tools and opportunities for self-regulated learners to adjust their learning strategies. Evaluation of the learning environment revealed that students want to be in control of their learning

    Factors influencing the learning of introductory computer programing at the Durban University of Technology.

    Get PDF
    Masters Degree. University of KwaZulu-Natal, Durban.Computer programming is an extremely difficult skill to master for students who are novice computer programmers. The preceding assertion is based on reports of high failure rates in introductory computer programming courses offered by tertiary education institutions. This is not just a South African problem but a number of cross-institutional and multi-national studies show that the problem is well known and is common (Grover et al., 2016). The current study investigated the factors influencing the learning of introductory computer programing at Durban University of Technology (DUT). The objectives of the study were to understand the influence of previous experience on students’ learning of introductory computer programming as well as to understand the influence of self-efficacy on students’ learning of introductory computer programming. The study also focused on understanding the influence of the ‘mental model ‘representation of the problem domain on students’ learning of introductory computer programming, and to understand the influence of the ‘mental model’ representation of the problem domain on students’ self-efficacy in the learning of introductory computer programming. The study adopted the quantitative research method to investigate the subject matter. This study embraced a survey research strategy and data collection carried out was over a short period. The study used simple random sampling to select 200 respondents at DUT. Data were collected using questionnaires. Data quality control was ensured by conducting a reliability and validity test on the data collection instrument used in this study. Ethical approval for the study was obtained from DUT. The quantitative data collected were analyzed using the SPSS, version 25.0. The study utilized statistics such as frequency, descriptive (mean and standard deviation) and inferential statistics (Cronbach’s alpha and Spearman correlation). The overall findings from the study suggested that the self-efficacy level of the research participants was high. The results of the study revealed that there was a moderate positive relationship between self-efficacy and computer programming. Furthermore, it found was that the mental model adopted by students when solving computer programming problems positively influences student performance in computer programming. An outcome of the study is the recommendation that the teaching and learning of computer programming should focus on language structure and the correct mental interpretation of the problem domain so that students could improve their performance

    What Are Cybersecurity Education Papers About? A Systematic Literature Review of SIGCSE and ITiCSE Conferences

    Get PDF
    Cybersecurity is now more important than ever, and so is education in this field. However, the cybersecurity domain encompasses an extensive set of concepts, which can be taught in different ways and contexts. To understand the state of the art of cybersecurity education and related research, we examine papers from the ACM SIGCSE Technical Symposium and ACM ITiCSE conferences. From 2010 to 2019, a total of 1,748 papers were published at these conferences, and 71 of them focus on cybersecurity education. The papers discuss courses, tools, exercises, and teaching approaches. For each paper, we map the covered topics, teaching context, evaluation methods, impact, and the community of authors. We discovered that the technical topic areas are evenly covered (the most prominent being secure programming, network security, and offensive security), and human aspects, such as privacy and social engineering, are present as well. The interventions described in SIGCSE and ITiCSE papers predominantly focus on tertiary education in the USA. The subsequent evaluation mostly consists of collecting students' subjective perceptions via questionnaires. However, less than a third of the papers provide supplementary materials for other educators, and none of the authors published their dataset. Our results are relevant for instructors, researchers, and anyone new in the field of cybersecurity education, since they provide orientation in the area, a synthesis of trends, and implications for further research. The information we collected and synthesized from individual papers are organized in a publicly available dataset

    Introductory Mathematics and STEM Persistence: Examining the Differences between Online and In-Person Performance at a HBCU

    Get PDF
    The United States is losing its position as an innovative global leader because of a shortage of skilled workers in STEM. This decline is due in part to the US producing a lower number of graduates from STEM related fields. One reason for the shortage is that US students are selecting or graduating with STEM majors at a lower rate than those of competing countries. As a result of these shortages, the US has undertaken several initiatives to increase public awareness of and training in STEM that will ultimately produce STEM degrees. The purpose of this research was to examine the performance differences that exist between web-based introductory math courses and classroom-based introductory math courses at an HBCU over 3 academic years. The research questions that guided this study were: 1. What differences, if any, exist between an online introductory math class and a classroom-based introductory math class as it relates to grades, race, gender, age, and major? 2. What difference, if any, exists between STEM majors in an online introductory math class and classroom-based introductory math class? To discover answers to the research questions, I conducted a non-experimental descriptive comparative study utilizing quantitative methods and found that when using independent sample t tests, student performance in the introductory mathematics course significantly differed according to gender, race, and academic major. This demographic difference in academic performance were specifically seen with female students, White students, and students of non-STEM majors as they outperformed their respective counterparts. The end result is that HBCUs are a relevant solution to the STEM challenge in the United States. The outstanding institutions of higher learning can not only address the global shortage of innovative STEM workers, but can also lead the way for an even more diverse and inclusive workforce and community

    Teaching Computational Thinking

    Get PDF
    Computational thinking is a fundamental skill for everyone, not just computer scientists. Computational thinking is the thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information processing agent. Teaching Computational Thinking introduces the fundamental principles of communicating computing to learners across all levels. The book delves into the philosophical and psychological foundations of computer science as a school subject as well as specific teaching methods, curriculum, tools, and research approaches in computing education. This book is intended as a guide and teaching companion for pre-service and in-service computer science teachers

    Effects of regular use of scalable, technology enhanced solution for primary mathematics education

    Get PDF
    Mathematics is one of the key subjects in any school curriculum and most teachers agree that mathematical skills are important for students to master. There is an abundance of research in learning mathematics and a consensus exists among researchers that technology can enhance the learning process. However, many factors need to be taken into consideration when introducing technology into teaching mathematics. Developing a more natural collaboration between learning technology experts, teachers, and students ensures all stakeholders are considered. Involving teachers early on helps develop enduring commitment to innovations and practical solutions. Moreover, creating a culture of collaboration between experts in the field and teachers brings to bear the best of what both worlds have to offer. This thesis synthesizes six papers and offers additional findings that focus on how technology experts can collaborate with elementary teachers to improve student learning outcomes. We focus on managing educational change in ways that improve the sustainability of innovations. We also explore how technical and teaching experts co-create effective lesson plans. In one of the six papers we collected and reported teachers’ responses to survey questions covering typical usage patterns on a platform. Teachers’ direct feedback was collected and incorporated to improve technical solutions. Moreover, one study was conducted abroad to measure the effect of culture on the teaching and learning process. Evidence of effectiveness of technologically enhanced lessons and corresponding homework was based on multiple studies in grades 1 - 3, covering 379 students. The effectiveness of educational technology was measured based on two variables: student performance in mathematics, based on the learning objectives specified in the curriculum, and arithmetic fluency measured by how rapidly and accurately students solved basic arithmetic operations. Statistically significant findings show that educational technology can improve two target variables when comparing students who did not use educational technology to students who did. An additional effect size analysis was conducted to verify and compare results with previous research. Based on these results, platform use produced the same or better effect than previous studies. Based on teacher feedback and user growth on the platform, we managed to integrate technology into the regular school classroom in meaningful and sustainable ways. We were clearly able to support teachers in their practice in a manner that resulted in noticeable student achievement gains. A survey revealed a need to emphasize new features that were introduced to the platform in teacher training programs. Teachers also reported having a positive attitude towards the platform and the initiative gained wide acceptance among their peers.Matematiikka on yksi tärkeimmistä kouluaineista pelkästään tuntimääräisesti mitattunakin. Matematiikan osaamista ja oppimista pidetään yleisesti tärkeänä ja arvostettuna taitona. Matematiikan oppimisesta on valtavasti tutkimusta ja tutkijoiden keskuudessa vallitsee yhteisymmärrys tietotekniikan positiivisista mahdollisuuksista edistää matematiikan oppimista. Tietotekniikan ja oppimisen vuorovaikutus on kuitenkin monisyinen vyyhti ja sen onnistunut hyödyntäminen vaatii tutkijoiden, opettajien ja oppilaiden välistä tiivistä ja vuorovaikutteista yhteistyötä. Uusien innovaatioiden ja kokeilujen onnistumiselle ja niihin sitoutumiselle luodaan vahva pohja, kun opettajat otetaan mukaan kehitystyöhön ensimetreiltä lähtien. Tällaisen tiiviin yhteistyökulttuurin vaaliminen mahdollistaa käytännön työn ja teorian vahvuuksien hyödyntämisen. Tämä väitöstyö koostuu kuudesta artikkelista. Artikkelit kuvaavat, kuinka tutkijat ja opettajat työskentelivät yhdessä parantaakseen oppilaiden matematiikan oppimista. Tavoitteenamme oli muuttaa koulun käytänteitä pitkäjänteisesti ja kestävällä tavalla. Tutkimme kuinka tutkijat ja opettajat pystyivät yhdessä luomaan onnistuneita ja tehokkaita oppimiskokonaisuuksia. Opettajat olivat koko ajan kehitystyön keskiössä. Yhdessä kuudesta artikkelista tutkittiin kyselytutkimuksen avulla opettajien kokemuksia ja käyttötottumuksia. Näitä vastauksia hyödynnettiin teknisessä kehitystyössä ja hyvien käytänteiden hiomisessa. Yksi väitöskirjan tutkimuksista tehtiin ulkomailla opetus- ja oppimiskulttuureista vaikutusten huomioimiseksi. Sähköisten oppituntien ja kotitehtävien vaikuttavuuden arviointi perustuu useisiin 1.-3. luokilla tehtyihin tutkimuksiin ja kaikkiaan 379 oppilaan vastauksiin. Sähköisten oppituntien vaikuttavuutta arvioitiin kahden eri mittarin perusteella. Ensin matematiikan taitojen perusteella, eli kuinka hyvin kunkin luokka-asteen oppimistavoitteet olivat täyttyneet ja myöhemmin myös laskusujuvuuden perusteella, eli kuinka nopeasti ja tarkasti oppilaat pystyivät laskemaan peruslaskutoimituksia. Tulokset osoittavat, että opetusteknologian avulla pystytään parantamaan oppilaiden suoriutumista edellä mainittujen osa-alueiden osalta verrattuna oppilaisiin, jotka eivät käyttäneet opetusteknologiaa. Tulokset olivat tilastollisesti merkitseviä. Näiden tulosten varmistamiseksi laskettiin vaikuttavuuden suuruus ja sitä verrattiin aiempiin alan tutkimuksiin. Tulosten perusteella sähköisillä oppitunneilla oli sama tai parempi vaikuttavuus kuin aiemmissa tutkimuksissa. Opettajien palautteiden ja kasvavan käyttäjämäärän perusteella voidaan sanoa, että onnistuimme tavoitteessamme integroida opetusteknologiaa mielekkäällä tavalla osaksi koulutyötä. Onnistuimme myös tukemaan ja auttamaan opettajia opetustyössään ja samalla merkittävästi parantamaan oppilaiden suoriutumista. Kyselytutkimuksen perusteella huomasimme, että uusien ominaisuuksien kouluttamiseen tulee kiinnittää enemmän huomiota. Samassa tutkimuksessa opettajat raportoivat olevansa tyytyväisiä alustaan ja sähköiset oppitunnit näyttävät saaneen vankan jalansijan suomalaisessa opettajakunnassa

    On Designing Programming Error Messages for Novices: Readability and its Constituent Factors

    Get PDF
    The 2021 ACM CHI Virtual Conference on Human Factors in Computing Systems (CHI'21), Virtual Conference, 8-13 May 2021Programming error messages play an important role in learning to program. The cycle of program input and error message response completes a loop between the programmer and the compiler/interpreter and is a fundamental interaction between human and computer. However, error messages are notoriously problematic, especially for novices. Despite numerous guidelines citing the importance of message readability, there is little empirical research dedicated to understanding and assessing it. We report three related experiments investigating factors that influence programming error message readability. In the first two experiments we identify possible factors, and in the third we ask novice programmers to rate messages using scales derived from these factors. We find evidence that several key factors significantly affect message readability: message length, jargon use, sentence structure, and vocabulary. This provides novel empirical support for previously untested long-standing guidelines on message design, and informs future efforts to create readability metrics for programming error messages
    corecore