1,097 research outputs found

    A proposal of recommendation function for element fill-in-Blank problems in java programming learning assistant system

    Get PDF
    Purpose To advance Java programming educations, the authors have developed a Web-based Java programming learning assistant system (JPLAS). It offers the element fill-in-blank problem (EFP) for novice students to study Java grammar and basic programming skills by filling in the missing elements in a source code. An EFP instance can be generated by selecting an appropriate code, and applying the blank element selection algorithm. As it is expected to cover broad grammar topics, a number of EFP instances have been generated. This paper aims to propose a recommendation function to guide a student solving the proper EFP instances among them. Design/methodology/approach This function considers the difficulty level of the EFP instance and the grammar topics that have been correctly answered by the student, and is implemented at the offline answering function of JPLAS using JavaScript so that students can use it even without the Internet connections. Findings To evaluate the effectiveness of the proposal, 85 EFP instances are prepared to cover various grammar topics, and are assigned to a total of 92 students in two universities in Myanmar and Indonesia to solve them using the recommendation function. Their solution results confirmed the effectiveness of the proposal. Originality/value The concept of the difficulty level for an EFP instance is newly defined for the proper recommendation, and the accuracy in terms of the average numbers of answer submission times among the students is verified

    The Effects Of Applying Authentic Learning Strategies To Develop Computational Thinking Skills In Computer Literacy Students

    Get PDF
    This study attempts to determine if authentic learning strategies can be used to acquire knowledge of and increase motivation for computational thinking. Over 600 students enrolled in a computer literacy course participated in this study which involved completing a pretest, posttest and motivation survey. The students were divided into an experimental and control group based on class meeting day. The experimental group was given access to an authentic learning tool called COTHAULE. COTHAULE, which is an acronym that stands for Computational Thinking Authentic Learning Environment, is a website that was developed using a variety of technologies. The intellection behind COTHAULE was to take every-day experiences that could pertain to life in a college campus environment and merge them with computational thinking concepts and the learning objectives of a common computer literacy course. Examples of experiences were formed into five case studies each containing seven scenarios that read like a conversation taking place between students. The basic functionality of the tool was to load a video clip into the website for the student to watch for each scenario then present the student with an authentic learning activity and problem to solve. The authentic learning activities involved such topics as searching, sorting and filtering tables using software such as Microsoft Word and Excel and translating the activities into computational thinking concepts. A control group received a set of traditional textbook style online learning materials. A pretest and posttest was used to measure learning for each group. The study concluded that although there was a significant increase in learning between the pretest and posttest for both groups, there was no significant difference in learning by one group over the other group. The study also concluded that the motivation of the control group was significantly greater than the experimental group. There were some gaps in the COTHAULE tool as it compares to the expectations of an authentic learning environment and should be revisited. Improvements to the overall design of COTHAULE should also be considered

    Toward Productivity Improvements in Programming Languages Through Behavioral Analytics

    Full text link
    Computer science knowledge and skills have become foundational for success in virtually every professional field. As such, productivity in programming and computer science education is of paramount economic and strategic importance for innovation, employment and economic growth. Much of the research around productivity and computer science education has centered around improving notoriously difficult compiler error messages, with a noted surge in new studies in the last decade. In developing an original research plan for this area, this dissertation begins with an examination of the Case for New Instrumentation, draw- ing inspiration from automated data mining innovations and corporate marketing techniques in behavioral analytics as a model for understanding and prediction of human behavior. This paper then develops and explores techniques for automated measurement of programmer behavior based on token level lexical analysis of computer code. The techniques are applied in two empirical studies on parallel programming tasks with 88 and 91 student participants from the University of Nevada, Las Vegas as well as 108,110 programs from a database code repository. In the first study, through a re-analysis of previously captured data, the token accuracy mapping technique provided direct insight into the root cause for observed performance differences comparing thread-based vs. process-oriented parallel programming paradigms. In the second study com- paring two approaches to GPU programming at different levels of abstraction, we found that students who completed programming tasks in the CUDA paradigm (considered a lower level abstraction) performed at least equal to or better than students using the Thrust library (a higher level of abstraction) across four different abstraction tests. The code repository of programs with compiler errors was gathered from an online programming interface on curriculum pages available in the Quorum language (quorumlanguage.com) for Code.org’s Hour of Code, Quorum’s Common Core-mapped curriculum, activities from Girls Who Code and curriculum for Skynet Junior Scholars for a National Science Foundation funded grant entitled Inno- vators Developing Accessible Tools for Astronomy (IDATA). A key contribution of this research project is the development of a novel approach to compiler error categorization and hint generation based on token patterns called the Token Signature Technique. Token Signature analysis occurs as a post-processing step after a compilation pass with an ANTLR LL* parser triggers and categorizes an error. In this project, we use this technique to i.) further categorize and measure the root causes of the most common compiler errors in the Quorum database and then ii.) serve as an analysis tool for the development of a rules engine for enhancing compiler errors and providing live hint suggestions to programmers. The observed error patterns both in the overall error code categories in the Quorum database and in the specific token signatures within each error code category show error concentration patterns similar to other compiler error studies of the Java and Python programming languages, suggesting a potentially high impact of automated error messages and hints based on this technique. The automated nature of token signature analysis also lends itself to future development with sophisticated data mining technologies in the areas of machine learning, search, artificial intelligence, databases and statistics

    An Intelligent Debugging Tutor For Novice Computer Science Students

    Get PDF
    Debugging is a necessary aspect of computer science that can be difficult for novices and experienced programmers alike. This skill is mainly self-taught and is generally gained through trial and error, perhaps with some assistance from a professor or other expert figure. Novices encountering their first software defects may have few avenues open to them depending on the environment in which they are learning to program. The evident problem here is that the potential for a student to become stuck, frustrated, and/or losing confidence in their ability to pursue computer science is great. For a student to be successful when working professionally or progressing through academia they need to be able to function independently; trusting their own knowledge on par or above that of others so that their productivity does not rely on the knowledge of someone else. In order to solve this problem an Intelligent Tutoring System for teaching debugging skills to the novice utilizing Case Based Reasoning, Static Program Slicing, and the student\u27s preferred learning style was proposed. Case acquisition and automatic Exercise Generation were also explored. The system built for this research program was evaluated using novice students at the College and High School levels. Results of this evaluation produced statistically significant results at the p\u3c.05 and p\u3c.01 levels, with generated exercises exhibiting significance at the p\u3c.01 level. These results prove that the methodology chosen is a valid approach for the problem described, that the system does in fact teach students how to debug programs, and that the system is capable of successfully generating exercises on the fly

    Supporting the Algebra I Curriculum with an Introduction to Computational Thinking Course

    Get PDF
    The Louisiana Workforce Commission predicts a 33.6% increase in computer science and mathematical occupations by 2022 and the Bureau of Labor Statistics foresees a 16% increase in computer scientists from 2018-2028. Despite these opportunities for job and financial security, the number of Louisiana students enrolled in a nationally accredited computing course is less than 1%, compared to national leaders California and Texas which have 3% and 3.8% of students respectively. Furthermore, the international assessments of mathematical literacy, PISA and TIMMS, both report American students continue to fall further behind their international peers in mathematics achievement. This thesis rejects these statistics as definitive and attempts to contribute to an expansion of the mathematical libraries of a computational thinking course that a teacher could use to support a standards-based Algebra I course. The framework presented in this thesis supports the Louisiana State University (LSU) STEM Pathway course entitled Introduction to Computational Thinking (ICT). The course introduces students to a systematic problem-solving approach in which they learn to solve problems computationally, that is, through abstraction, decomposition, and pattern recognition. ICT utilizes the functional programming language Haskell in the educational programming environment “CodeWorld” in order to create pictures and animations. Jean Piaget, the great child cognitive development psychologist, proclaimed “The goal of intellectual education is not to know how to repeat or retain ready-made truths”; rather, one becomes educated by “learning to master the truth by oneself” (Piaget, 1973). Because of the graphical outputs that one can easily code in CodeWorld, students have the ability to explore an algebraic concept with a computer programmed model, alongside the textbook’s given table, equation and graph. This thesis provides additional projects for supporting the Algebra I curriculum through LSU’s ICT course and an overview of the history of computing with an emphasis on highlighting some of the attempts that were undertaken within the past 80 years to use computational thinking and programming to support problem solving across disciplines, including the humanities, math and sciences

    Research in Applied Mathematics, Fluid Mechanics and Computer Science

    Get PDF
    This report summarizes research conducted at the Institute for Computer Applications in Science and Engineering in applied mathematics, fluid mechanics, and computer science during the period October 1, 1998 through March 31, 1999

    Revista Economica

    Get PDF

    A graph-based approach for sustainable walking tour recommendations: The case of Lisbon overcrowding

    Get PDF
    Motivation: Mass tourism brought problems of carrying capacity in city management. More and more tourists flock to the most famous zones, thereby causing overcrowding situations, while other sustainable points of interest (POIs) are under-visited. Goal: Allow local tourism managing authorities to assemble a database of georeferenced sustainable POIs. Then, combine the latter with local crowding data and implement a walking tour recommender system. Proposal: A web platform to experts adds, in an intuitive way by using a map,POIs with sustainable data. Creating a new database of Lisbon (case of study) sustainable POIs. Implement a tour generator graph-algorithm that receives: user preferences, tour constraints, sustainable POIs and crowd data. Providing a customize tour, that obeys the domain constraints, suggests sustainable POIs and avoids the more crowded areas. Solving a multicriteria shortest path problem. Conclusion: Evidence is provided on the feasibility of computing walking tour recommendations, meeting multiple and complex constraints, namely by promoting sustainability and mitigating crowding, using a graph search algorithm.Motivação: O turismo em massa trouxe problemas de controlo da capacidade de carga na gestão das cidades. Os turistas, em número crescente, aglomeram-se nas zonas mais famosas, causando aí situações de sobrelotação, enquanto outros pontos de interesse (POIs, em Inglês) sustentáveis são sub-visitados. Objetivo: Permitir que as autoridades gestoras do turismo local montem uma base de dados de POIs sustentáveis, georreferenciados. Em seguida, combinar estes últimos com os dados de aglomeração local e implementar um sistema de recomendação de passeios turísticos pedestres. Proposta: Uma plataforma web para que o especialistas adicionem, de forma intuitiva através de um mapa, os pontos de interesse sustentáveis. Implementar um algoritmo de grafos, que gera caminhos e que recebe: as preferências do utilizador, as restrições do domínio do caminho, pontos de interesse sustentáveis e dados de congestionamento. Fornecendo assim, um caminho personalizado que obdece às restrições, sugere pontos de interesse sustentáveis e evita as áreas mais movimentadas. Deste modo, resolve o problema do caminho mais curto com multicriterias. Conclusão: São fornecidas evidências sobre a viabilidade de computar recomendações de passeios turísticos a pé, atendendo a restrições múltiplas e complexas, nomeadamente promovendo a sustentabilidade e mitigando a superlotação, usando um algoritmo de pesquisa em grafos
    corecore