EE 209 Programming Structures for Electrical Engineering

(Note: many sentences from below are borrowed from Princeton COS 217 homepage since they apply to our course as well.)

Lectures and Precepts

Lecture and precept attendance are mandatory. You are responsible for the materials presented in the lecture and precepts. Some of the content is not in the textbook. Students are expected to regularly check the course webpage for announcements, class schedule updates, lecture notes, programming assignments and other related course materials.

Attending another precept instead of your precept:

Generally it is not acceptable to attend another precept instead of your precept. After all, your preceptor will determine your class participation grade. Your grade will be poor if you do not participate in your precept. However, it is acceptable to attend another precept instead of your precept occasionally whenever a conflict with your precept arises. (Indeed you should do so.) In that case, as soon at you become aware of the conflict, send e-mail to your preceptor, the other preceptor, and Dr. Park informing them of the situation. The other preceptor thus will know to duplicate handouts for you.

Attending another precept in addition to your precept:

Generally it is not acceptable to attend another precept in addition to your precept. After all, if even a small fraction of the course's students did that routinely, then some precepts would be very large (or even overflow) routinely. Precepts containing a large number of students are less effective than those containing a small number. However, it could be acceptable to attend another precept in addition to your own occasionally. In that case, send e-mail to the other preceptor and Dr. Park the day before the precept, asking permission to attend. The other preceptor and Dr. Park then will make the decision. If the decision is "yes," then the other preceptor will duplicate handouts for you, make sure you have a seat, etc.


10% Class participation
20% Mid-term exam
20% Final exam
22.5% The first three programming assignments (7.5 % each)
5% The fouth programming assignment (Assembly language programming)
10% The fifth programming assignment (Memory Manager)
12.5% Final programming assignment (

We will use our KAIST Moodle EE209 page for assignment discussion and submission. Your registration is mandatory.

Assignment & Exam Policy

Receiving help from others

Programming is an individual creative process much like composition. You must reach your own understanding of the problem and discover a path to its solution. During this time, discussions with other people are permitted and encouraged. However, when the time comes to write code that solves the problem, such discussions (except with course staff members) are no longer appropriate: the code must be your own work. If you have a question about how to use some feature of C, Unix, etc., you certainly can ask your friends or the teaching assistants, but specific questions about code you have written must be treated more carefully.

For each assignment you must specifically state, in your readme file, the names of any individuals from whom you received help, and the nature of the help that you received. That includes help from friends, classmates, lab TAs, course staff members, etc.

Do not, under any circumstances, copy another person's code. Incorporating someone else's code into your code in any form is a violation of academic regulations. This includes adapting solutions or partial solutions to assignments from any offering of this course or any other course. There is one exception to the code-sharing rule: You may adapt code from the EE 209 course materials provided that you explain what code you use, and cite its source in your readme file.

Copying and transforming someone else's code (by rearranging independent code, renaming variables, rewording comments, etc.) is plagiarism. Some inexperienced programmers have the misconception that detecting such plagiarism is difficult. Actually, detecting such plagiarism is quite easy. Not only does such plagiarism quickly identify itself during the grading process, but also we can (and do) use software packages, such as Alex Aiken's renowned MOSS software, for automated help.

If a student is confirmed to commit plagiarism on an assignment, then the standard penalty is automatic failure (F) of the EE 209 course.

Providing help to others

Abetting plagiarism or unauthorized collaboration by "sharing" your code is prohibited. Sharing code in digital form is an especially egregious violation. Do not e-mail your code or make your code available to anyone. Do not share your code with anyone even after the due date/time of the assignment.

You are responsible for keeping your solutions to the EE 209 programming assignments away from prying eyes. If someone else copies your code, we have no way to determine who is the owner and who is the copier. If you are working on a public lab computer, make sure that you do not leave the computer unattended, and that you delete your local files and logout before leaving. You should store all of your assignment files in a private directory. You can create a private directory using commands similar to these:

% mkdir ee209
% chmod 700 ee209

Exam Conduct

If we find a student commits inappropriate conduct during an in-class exam, the standard penalty is automatic failure (F) of the EE 209 course.
Last Update: