• Title/Summary/Keyword: programming course

Search Result 193, Processing Time 0.03 seconds

Effective Strategies for Teaching a Web-based Programming Course (웹 기반 프로그래밍 과목의 효과적인 강의 전략)

  • Lee, Chungki;Hong, Sukwon
    • The Journal of Korean Association of Computer Education
    • /
    • v.7 no.3
    • /
    • pp.1-14
    • /
    • 2004
  • The demand for learning programming anywhere at a low cost at any time is increasing. Accordingly, there have been a great number of web-based programming courses. Generally, teaching Web-based programming classes is very challenging. Thus effective methods for teaching these courses should be researched. Based on several years of experiences in teaching a Web-based programming course as well as the related literature, this paper presents its effective teaching strategies. First, some design strategies of its course contents for developing programming skills are proposed, considering the characteristics of programming courses as well as potential learners. Next, its effective assessment and class management strategies are proposed. Finally, we evaluate the results of student grades and operation of a Web-based programming course offered most recently using proposed strategies. They demonstrate that we can enhance learning effects of the course.

  • PDF

A Constraint Programming-based Automated Course Timetabling System

  • Hwang, Junha
    • Journal of the Korea Society of Computer and Information
    • /
    • v.24 no.4
    • /
    • pp.27-34
    • /
    • 2019
  • The course timetabling problem is a kind of very complex combinatorial optimization problems, which is known as an NP-complete problem. Sometimes a given course timetabling problem can be accompanied by many constraints. At this time, even if only one constraint is violated, it can be an infeasible timetable. Therefore, it is very difficult to make an automated course timetabling system for a complex real-world course timetabling problem. This paper introduces an automated course timetabling system using constraint programming. The target problem has 26 constraints in total, and they are expressed as 24 constraints and an objective function in constraint programming. Currently, we are making a timetable through this system and applying the result to the actual class. Members' satisfaction is also much higher than manual results. We expect this paper can be a guide for making an automated course timetabling system.

Constraint Programming Approach for a Course Timetabling Problem

  • Kim, Chun-Sik;Hwang, Junha
    • Journal of the Korea Society of Computer and Information
    • /
    • v.22 no.9
    • /
    • pp.9-16
    • /
    • 2017
  • The course timetabling problem is a problem assigning a set of subjects to the given classrooms and different timeslots, while satisfying various hard constraints and soft constraints. This problem is defined as a constraint satisfaction optimization problem and is known as an NP-complete problem. Various methods has been proposed such as integer programming, constraint programming and local search methods to solve a variety of course timetabling problems. In this paper, we propose an iterative improvement search method to solve the problem based on constraint programming. First, an initial solution satisfying all the hard constraints is obtained by constraint programming, and then the solution is repeatedly improved using constraint programming again by adding new constraints to improve the quality of the soft constraints. Through experimental results, we confirmed that the proposed method can find far better solutions in a shorter time than the manual method.

The Effect of teaching Scratch in introductory programming course (프로그래밍입문 수업에서 스크래치 활용 효과분석)

  • Park, JungShin;Cho, SeokBong
    • Journal of Digital Convergence
    • /
    • v.10 no.9
    • /
    • pp.449-456
    • /
    • 2012
  • The college students who have relatively weak academic background feel more difficult in learning programming language grammars and programming skills in introductory course. At the end of semester, most of students had the negative attitude to programming and only a few students could write the programs for the given problems because they spent most of time to learn grammars instead of learning problem solving skills and logics. In this study, we propose to use Scratch in introductory programming course to help students to understand grammars and problem solving skills. It's necessary to educate first-time programmers how to solve the problems before they learn grammars of the programming language in their first programming language course. This paper shows that Scratch allows students not only to learn problem solving skills in programming but also to motivate students themselves in the class.

A Case Study of Puzzle Solving Applied to Programming Practice

  • Kang, Dae-Ki
    • Journal of Engineering Education Research
    • /
    • v.13 no.2
    • /
    • pp.3-6
    • /
    • 2010
  • In this paper, we report a case study of applying puzzle solving as a programming practice. There are many students, who have attended computer programming language courses, have had difficulties in accomplishing the course assignments. It is because just following and citing the programming language course materials is not sufficient for constructing computer programs. Many professional developers have stated that computer programming for small problems is an art of puzzle solving, where developing enterprise-size computer programming projects involves architectural insights which are already dealt in software engineering literatures. Following those backgrounds, we have explored the applicability of puzzle solving in a C++ object oriented programming course and have reported the results. The experimental results show that puzzle solving is effective to the students who are interested in computer programming and have at least beginner-level knowledge and expertise, but it turned out that puzzle solving assignments still does not draw much attention of the students who are not seriously interested in computer programming.

  • PDF

The Programming Education Framework for Programming Course in University (대학 프로그래밍 강좌를 위한 프로그래밍 교육 프레임워크)

  • Choe, Hyun-Jong
    • The Journal of Korean Association of Computer Education
    • /
    • v.14 no.1
    • /
    • pp.69-79
    • /
    • 2011
  • In this paper I present the framework for programming education relating to the programming course in university. First of all, I identify the literature of the psychological and educational study of programming in domestic and foreign country. Some outstanding papers in foreign country show that the mental model, programming knowledge and strategies are the important difference between novice and expert programmers. And various problems experienced by novice programmers are identified. I summarise this material and suggest some practical implications for programming teachers in their teaching activity. The framework for programming education presented by this work has three dimensions of program development process, programming learning factors and teaching and learning methods for programming to develope the novice's programming skill. It helps the programming teacher to design, implement and evaluate their programming course with the guideline of programming activities.

  • PDF

The Effects of 4CID Model based Robot Programming Learning on Learners' Flow Level (4CID 모델 기반 로봇 활용 프로그래밍 학습의 몰입 효과 분석)

  • Lee, EunKyoung;Lee, YoungJun
    • The Journal of Korean Association of Computer Education
    • /
    • v.11 no.4
    • /
    • pp.37-46
    • /
    • 2008
  • Using robots in the programming classes may help to induce learners' interest and motivation. However, simple introduction of new media, such as robots, may cause to increase learners' interest level temporarily, but also may give cognitive overload and offense against learning motivation. We developed a robot programming course to induce intrinsic motivation and to reduce cognitive load for learners in the programming education. And then, we implemented the developed course in college programming classes and analysed the educational effects of robot programming learning on novice learners' flow level. We found that robot programming course was helpful in enhancing novice learners' flow level. Especially, the element of 'autotelic experience', which explains an intrinsic motivation, was higher than conventional programming course group. It means that the developed strategies for robot programming course provides positive effects on learners' intrinsic motivation.

  • PDF

The Effect of a Robot Programming Learning on Problem Solving Ability (로봇 프로그래밍 학습이 문제해결력에 미치는 영향)

  • Lee, EunKyoung;Lee, YoungJun
    • The Journal of Korean Association of Computer Education
    • /
    • v.10 no.6
    • /
    • pp.19-27
    • /
    • 2007
  • To help programming learning, we have designed a robot programming course that improves complex cognitive abilities. The developed course was implemented in college programming classes and educational effects were analysed. While students are learning through LEGO Mindstorms NXT and NXT-G software, the students' problem solving abilities have been enhanced. The developed robot programming course gives positive effects on learners' problem solving abilities. It means that the developed course helps a learner in a cognitive domain.

  • PDF

Design of Teaching·Learning Model for Programming Language Education (프로그래밍 언어 교육을 위한 교수·학습 모델 설계)

  • Kang, Hwan Soo
    • Journal of Digital Contents Society
    • /
    • v.13 no.4
    • /
    • pp.517-524
    • /
    • 2012
  • This paper deals with the design of teaching learning model for programming language education. Various courses related to programming language education have opened at the university having many academic majors. In the meantime, a variety of programming languages have been developed, many integrated development environments of programming language have also been developed for users to make a program easily. But it is difficult for many novice learners to learn programming language still, likewise it is difficult for many teachers to teach the introduction course of programming language. In this paper, we have designed a teaching learning model based on scholastic achievements and blended learning for programming language education. The teaching learning model designed in this study was applied to a course opened in the second semester of 2011. According to the course evaluation result, the teaching learning model for programming language has shown to be an effective for novice learner.

The University Examination And Course Timetabling Problem With Integer Programming

  • Chung, Yerim;Kim, Hak-Jin
    • Journal of the Korea Society of Computer and Information
    • /
    • v.24 no.9
    • /
    • pp.9-20
    • /
    • 2019
  • In this paper, we study the university timetabling problem, which consists of two subproblems, the university course timetabling problem and the examination timetabling problem. Given a set of classrooms, students, teachers, and lectures, the problem is to assign a number of courses (and examinations) to suitable timeslots and classrooms while satisfying the given set of constraints. We discuss the modeling and solution approaches to construct course and examination timetables for one of the largest Korean university. By using binary integer programming formulations, we describe these two complex real-world problems. Then, we propose a solution method, called NOGOOD, to solve the examination timetabling model. The computation results show that NOGOOD finds the optimal examination schedule for the given instance. Although we consider a specific instance of the university timetabling problem, the methods we use can be applicable to modeling and solving other timetabling problems.