32,358 research outputs found

    Enhancing apprentice-based learning of Java

    Get PDF
    Various methods have been proposed in the past to improve student learning by introducing new styles of working with assignments. These include problem-based learning, use of case studies and apprenticeship. In most courses, however, these proposals have not resulted in a widespread significant change of teaching methods. Most institutions still use a traditional lecture/lab class approach with a strong separation of tasks between them. In part, this lack of change is a consequence of the lack of easily available and appropriate tools to support the introduction of new approaches into mainstream courses.In this paper, we consider and extend these ideas and propose an approach to teaching introductory programming in Java that integrates assignments and lectures, using elements of all three approaches mentioned above. In addition, we show how the BlueJ interactive programming environment [7] (a Java development environment aimed at education) can be used to provide the type of support that has hitherto hindered the widespread take-up of these approaches. We arrive at a teaching method that is motivating, effective and relatively easy to put into practice. Our discussion includes a concrete example of such an assignment, followed by a description of guidelines for the design of this style of teaching unit

    Teaching Data Science

    Get PDF
    We describe an introductory data science course, entitled Introduction to Data Science, offered at the University of Illinois at Urbana-Champaign. The course introduced general programming concepts by using the Python programming language with an emphasis on data preparation, processing, and presentation. The course had no prerequisites, and students were not expected to have any programming experience. This introductory course was designed to cover a wide range of topics, from the nature of data, to storage, to visualization, to probability and statistical analysis, to cloud and high performance computing, without becoming overly focused on any one subject. We conclude this article with a discussion of lessons learned and our plans to develop new data science courses.Comment: 10 pages, 4 figures, International Conference on Computational Science (ICCS 2016

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Development, implementation and evaluation of an interactive multimedia instructional model : A teaching and learning programming approach

    Get PDF
    This study sought to explore the outcomes from the use of a dynamic interactive visualisation tool among novice programmers in an introductory computer programming course. The proposed model, Dynamic Interactive Visualisation Tool in Teaching C (DIVTIC), was designed to use multimedia and visual imagery to provide learners with a step-by-step representation of program execution in the C language as a means of enhancing their understanding of programming structures and concepts. DIVTIC was designed to support constructivist learning principles and combined collaborative and visualisation learning strategies with use of the Internet and the World Wide Web to support the learning of programming. The feasibility and effectiveness of DIVTIC was explored among a cohort of 100 undergraduate engineering students, 50 in a control group and another 50 in an experimental group, studying an introductory programming course at Suranaree University of Technology (SUT) in Thailand, The study found that the use of DIVTIC was a successful complement to conventional teaching. The results clearly demonstrated the advantage of using DIVTIC among low achieving students. The students from this level in the experimental group significantly outscored their counterparts in the control group in the final test suggesting that DIVTIC was an important element in their learning process. Interestingly, these low achieving students used DIVTIC most and achieved highest grades. However, lower achieving students appeared to learn from simply viewing the animations rather than being highly interactive and stopping and starting them consistently. The study found that the visualisation process implemented in DIVTIC could be of considerable assistance to a particular group of students, those with a low GPA, in developing their understanding of difficult programming concepts

    Teaching embedded software development utilising QNX and Qt with an automotive-themed coursework application

    Get PDF

    Improving Progression and Satisfaction Rates of Novice Computer Programming Students Through ACME - Analogy, Collaboration, Mentoring and Electronic Support

    Get PDF
    The problems encountered by students in first year computer programming units are a common concern in many universities, including Victoria University. As a fundamental component of a computer science curriculum computer programming is a mandatory unit. It is also one of the most challenging units for many commencing students who often drop out from a computing course as a consequence of having failed, or performed poorly, in an introductory programming unit. This paper reports on a research project undertaken to develop and implement a strategy to improve the learning outcomes of novice programming students. Aimed at ‘befriending’ computer programming to help promote success among new programming students, the strategy incorporates the use of analogy, collaboration, mentoring sessions, and electronic support. The paper describes the elements of the strategy and discusses the results of its implementation in semester 1, 2007

    Design and Assessment of an Interactive Digital Tutorial for Undergraduate-Level Sandstone Petrology

    Get PDF
    This study describes the goals, features and effectiveness of a digital interactive tutorial which was created to provide undergraduates a 'virtual microscope' resource for learning sandstone petrology. The goal of the tutorial is to provide students exposure to the highly visual subject matter of petrography outside the confines of organized laboratory exercises. The hope is that widespread use of such digital interactive formats will allow students to gain high levels of expertise with description and interpretation of earth materials despite the reduced amounts of hands-on laboratory practice that are allowed by modern curricula. Educational levels: Graduate or professional

    Intelligent computer-aided training and tutoring

    Get PDF
    Specific autonomous training systems based on artificial intelligence technology for use by NASA astronauts, flight controllers, and ground-based support personnel that demonstrate an alternative to current training systems are described. In addition to these specific systems, the evolution of a general architecture for autonomous intelligent training systems that integrates many of the features of traditional training programs with artificial intelligence techniques is presented. These Intelligent Computer-Aided Training (ICAT) systems would provide, for the trainee, much of the same experience that could be gained from the best on-the-job training. By integrating domain expertise with a knowledge of appropriate training methods, an ICAT session should duplicate, as closely as possible, the trainee undergoing on-the-job training in the task environment, benefitting from the full attention of a task expert who is also an expert trainer. Thus, the philosophy of the ICAT system is to emulate the behavior of an experienced individual devoting his full time and attention to the training of a novice - proposing challenging training scenarios, monitoring and evaluating the actions of the trainee, providing meaningful comments in response to trainee errors, responding to trainee requests for information, giving hints (if appropriate), and remembering the strengths and weaknesses displayed by the trainee so that appropriate future exercises can be designed
    • 

    corecore