9 research outputs found
Improving First-year Success and Retention through Interest-Based CS0 Courses
Many computer science programs suffer from low student retention rates. At Cal Poly San Luis Obispo, academic performance and retention rates among first year computer science students are among the lowest on campus.
In order to remedy this, we have developed a new CS0 course featuring different tracks that students can choose from (e.g. robotics, gaming, music, mobile apps). This allows students to learn the basics of programming, teamwork, and college-level study in a domain that is of personal interest. In addition, the course relies on classic Project-based Learning (PBL) approaches as well as a focus on both academic and non-academic factors shown to increase student retention.
Initial assessment demonstrates positive results in the form of increased academic performance in post CS0 courses and student retention
Automatically Generating CS Learning Materials with Large Language Models
Recent breakthroughs in Large Language Models (LLMs), such as GPT-3 and
Codex, now enable software developers to generate code based on a natural
language prompt. Within computer science education, researchers are exploring
the potential for LLMs to generate code explanations and programming
assignments using carefully crafted prompts. These advances may enable students
to interact with code in new ways while helping instructors scale their
learning materials. However, LLMs also introduce new implications for academic
integrity, curriculum design, and software engineering careers. This workshop
will demonstrate the capabilities of LLMs to help attendees evaluate whether
and how LLMs might be integrated into their pedagogy and research. We will also
engage attendees in brainstorming to consider how LLMs will impact our field.Comment: In Proceedings of the 54th ACM Technical Symposium on Computing
Science Educatio
An evaluation of interactive test-driven labs with webIDE in CS0
WebIDE is a framework that enables instructors to develop and deliver online lab content with interactive feedback. The ability to create lock-step labs enables the instructor to guide students through learning experiences, demonstrating mastery as they proceed. Feedback is provided through automated evaluators that vary from simple regular expression evaluation to syntactic parsers to applications that compile and run programs and unit tests. This paper describes WebIDE and its use in a CS0 course that taught introductory Java and Android programming using a test-driven learning approach. We report results from a controlled experiment that compared the use of dynamic WebIDE labs with more traditional static programming labs. Despite weaker performance on pre-study assessments, students who used WebIDE performed two to twelve percent better on all assessments than the students who used traditional labs. In addition, WebIDE students were consistently more positive about their experience in CS0
ACT Scores, SAT Scores, and High School GPA as Predictors of Success in Online College Freshman English
SAT and ACT scores are often used by colleges and universities as indicators of ability to perform college work in a residential setting, although few studies have focused on the use of these scores to predict success in an online setting. The purpose of this study is to examine the potential of the SAT score, ACT score, and high school grade point average (HSGPA) to predict success as indicated by a numerical grade in freshman college English for online students. Freshman English is considered crucial to successful completion of a college degree. The sample included 1,008 college freshmen taking English enrolled in multiple sections of an online English course. This hierarchical study will attempt to determine if there is a correlation between SAT or ACT scores, HSGPA, and the students’ final grade in an online college freshman English composition course
Desarrollo de un juego serio basado en test.driven learning para la enseñanza de matrices y transformaciones geométricas en cursos de programación de los primeros años de la Escuela Profesional de Ingeniería de Sistemas
Este trabajo nace de nuestra preocupación por la dificultad en el aprendizaje de cursos de
programación y matemáticas en los estudiantes de primeros años de la carrera de Ingeniería de
Sistemas. Actualmente en la currícula de este programa en la Universidad Católica de Santa
María, los cursos de programación y/o matemáticas impartidas durante los primeros años
pueden llegar a ser muy complejos, ocasionando dificultades en su aprendizaje. La solución
que plantea el presente trabajo está basada en la construcción de un Juego Serio utilizando el
enfoque: Test Driven Learning con el uso de estrategias enseñanza-aprendizaje para promover
el aprendizaje de matrices y implementación de operaciones básicas, aplicadas en
transformaciones geométricas.
Fue aplicado en cursos de 1er año y de 2do año en los años 2017 y 2018 obteniendo resultados
relevantes de la experimentación los cuales se analizaron estadísticamente, utilizando las
pruebas de Kolmogorov-Smirnov y Wilcoxon para determinar si existen diferencias
significativas, además se realizó una medición de patrones en actividad cerebral utilizando un
dispositivo para este fin (Emotiv Insight), finalmente se incorporó encuestas estructuradas a los
estudiantes para comprender sus percepciones de la metodología propuesta en relación a la
tradicional. Se concluyó que los estudiantes incrementan su motivación al experimentar una
metodología basada en juegos, así mismo quedó demostrado que los estudiantes mejoraron sus
calificaciones utilizando el videojuego en parejas, se determinó que no existe una diferencia
significativa con una metodología tradicional en cuanto conocimientos, pero se puede decir que
la metodología experimental generó mayor motivación en los estudiantes.
Palabras clave: TDD, TDL, Estrategias de enseñanza, Transformaciones Geométricas,
Deserción, Ingenierías, Juegos Serios
Development and Application of a Rasch Model Measure of Student Competency in University Introductory Computer Programming
University computer programming instruction nomenclature commonly uses the term Computer Science 1 (CS1) to describe introductory units of study. Success in CS1 is important as a pre-requisite for further study in programming and related disciplines. It is important to measure student progress and the antecedent influences. This study applied the Rasch Model and Messick’s Unified Theory of Validity to construct an interval level measure of CS1 competency with demonstrable suitability for this purpose
Technical Interviews: Another Barrier to Broadening Participation in Computing?
What does it take to obtain a computing position in the industry? Although anecdotal reports state that ``hiring is broken,\u27\u27 empirical evidence is necessary to identify the flaws in the existing system. The goal of this dissertation was to understand what expectations companies have for job seekers in computing, and to explore students\u27 experiences with technical interviews and their pathways to job attainment. In particular, this work considered how hiring practices may impact populations already underrepresented in computing such as women, Black/African American students, and Hispanic/Latinx students. It also sought to understand how minoritized populations leverage their own inherent capital to overcome obstacles throughout the process. The theoretical frameworks of community cultural wealth, social cognitive career theory, identity theory, and intersectionality guided the studies, to answer the following research questions: 1) What does the hiring process in computing look like from both the applicant and industry perspective?; 2) How do cultural experiences impact technical interview preparation?; 3) How do technical interviews, and other professional and cultural experiences impact computing identity?; and 4) How do students describe their experiences with the hiring process in computing?
To address these questions, a variety of methods were employed, beginning with a systematic literature review. This was followed by an explanatory sequential mixed-methods design that utilized a survey, statistical analysis, and semi-structured interviews. Discursive phenomenography was also the methodology chosen which shaped the qualitative inquiry. The findings illustrated the unique experiences and support mechanisms students from different gender, racial, and ethnic backgrounds utilize to succeed in hiring. These results not only serve to inform students, educators, and administrators how to best prepare for technical interviews, but also present a call to action for industry to change hiring and workplace practices that limit diversity. Suggestions and guidelines are given to enable a hiring process that can still achieve its target of finding qualified employees, but that does so in a manner more inclusive to all job seekers
Retention in Introductory Programming
The introductory programming course is one of the very first courses that computer science students encounter. The course is challenging not only because of the content, but also due to the challenges related to finding a place in a new community. Many have little knowledge of what to expect from university studies, some struggle to adjust their study behavior to match the expected pace, and a few simply cannot attend instruction due to e.g. family or work constraints. As a consequence, a considerable number of students end up failing the course, or pass the course with substandard knowledge. This leads to students failing to proceed in their studies at a desirable pace, to students who struggle with the subsequent courses, and to students who completely drop out from their studies.
This thesis explores the issue of retention in introductory programming courses through multiple viewpoints. We first analyze how the teaching approaches reported in literature affect introductory programming course pass rates. Then, changes on the retention at the University of Helsinki are studied using two separate approaches. The first approach is the use of a contemporary variant of Cognitive Apprenticeship called the Extreme Apprenticeship method, and the second approach is the use of a massive open online course (MOOC) in programming for recruiting students before they enter their university studies. Furthermore, data from an automatic assessment system implemented for the purposes of this thesis is studied to determine how novices write their first lines of code, and what factors contribute to the feeling of difficulty in learning programming.
On average, the teaching approaches described in the literature improve the course pass rates by one third. However, the literature tends to neglect the effect of intervention on the subsequent courses. In both studies at the University of Helsinki, retention improved considerably, and the students on average also fare better in subsequent courses. Finally, the data that has been gathered with the automatic assessment system provides an excellent starting point for future research.Ohjelmointi on nykyajan käsityöläistaito, jolle on akuutti tarve työelämässä. Tämän taidon opettelua harkitseva tietää harvoin, kuinka riippuvainen yhteiskuntamme on ohjelmoinnin tuotoksista eli ohjelmistoista. Ilman ohjelmointia esimerkiksi yhteydenpito, kaupankäynti, matkustaminen ja terveydenhuolto olisivat heikommalla tasolla. Puhelimet eivät toimisi, internettiä ei olisi, eikä lääketeollisuus pystyisi käsittelemään yhtä suuria datamassoja uusia parannuskeinoja etsiessä. Kukaan ei olisi kirjoittanut ohjelmaa, joka auttoi avaruuteen pääsemisessä.
Väitöskirjassa tarkastellaan ohjelmoinnin opetusmenetelmiä ja niiden toimivuutta korkeakouluissa sekä esitellään kognitiiviseen oppipoikamalliin (Cognitive Apprenticeship) perustuva “ajatuskäsityöläisten” opetusmenetelmä tehostettu kisällioppiminen (Extreme Apprenticeship). Tehostetussa kisällioppimisessa oppimista edesauttava yksilöllinen ohjaus on mahdollista skaalata satoja opiskelijoita sisältäville kursseille. Väitöskirjatyössä ehdotetaan lisäksi kaikille avoimen verkkokurssin (MOOC) käyttöä yliopisto-opiskelijoiden valintaan sekä tarkastellaan tällaisen valintaväylän toimivuutta tietojenkäsittelytieteen alalla.
Väitöskirja käsittelee myös ohjelmointitehtävien automaattista arviointia ja esittelee tähän tarkoitetun Test My Code -järjestelmän, jota voidaan käyttää askeleittaisten ohjeiden ja palautteen antamiseen aloitteleville ohjelmoijille sekä tiedon keräämiseen ohjelmointiprosessissa esiintyvistä ongelmista. Tällaista tietoa voidaan tutkia oppimisanalytiikan menetelmin. Väitöskirjassa tarkastellaan myös aloittelevien ohjelmoijien ensimmäisten ohjelmien kirjoittamisessa esiintyviä ongelmia sekä esitellään ohjelmointitehtävien vaikeuden ennustamiseen sopivia menetelmiä
Recommended from our members
Gender and computer programming: teaching and learning strategies designed to increase the engagement of girls
The purpose of this research was to examine why so many girls decided to stop studying
computer programming when they transition from middle school to senior school. This thesis
examined ability and gender attitudes towards computer programming in middle school
students at an International school in South Korea. In this study, 194 students in Year 8 and
Year 9 in single-sex classes were taught Python and HTML5/CSS using a variety of teaching
and learning strategies including tutorials, problem-based learning, tasks that included visual
design, game-based learning, and storytelling. At the year-end, participants were given a
computer programming assessment, with girls, relative to boys, demonstrating significantly
greater computer programming ability. There was no difference between genders in the mostable programmers.
Student opinions were gathered from questionnaires and group interviews. Findings showed
that there was a gender difference in preferred learning strategies, with girls enjoying
computer programming incorporating visual design, storytelling, and problem-based projects
more than the boys. Further, there was no significant gender difference in enjoyment,
confidence, or anxiety after a year of programming using the various teaching and learning
strategies.
Boys and girls did not differ in their reasons for choosing to study a subject from the
following list (parents’ opinions; friends’ opinions; teachers’ opinions; useful life skills;
lesson enjoyment; career/university skills; role models). The biggest influencing factor for
both genders was lesson enjoyment and the opinion of friends was the least influential factor.
The findings indicated that if computer programming is taught using the preferred teaching
and learning strategies more girls are likely to choose to continue studying computer
programming. In this study, the number of Year 9 girls choosing to continue studying
computer programming increased from 5 girls in the first year (13% of the total) to 17 girls
(38% of the total)