EECS168:Syllabus

From ITTC
Jump to: navigation, search
Navigation
Home
Information

Syllabus
Schedule
Exam Reviews

Classwork

Labs
Submitting Work


Course Description

EECS 168: Introduction to Programming assumes no programming background. Using C++, we will learn the fundamentals of programming including:

  • Variables types
  • Input/Output (terminal and file I/O)
  • Control statements
  • Loops
  • Functions
  • Arrays (1D, 2D)
  • Dynamic memory allocation and pointers
  • Memory visualization
  • Classes and object oriented programming basics

Resources

General Course Information

Course-related questions

Questions dealing with projects and laboratory assignments are to be directed first to one of the GTAs. Feel free to see whichever one is available when you need help. If you are still having difficulty after talking with a GTA, see the instructor for help. In addition to questions related to projects and other laboratory work, the GTAs can help you with any course-related question, whether it is about the lectures or laboratory assignments.

Development Environment

All programs will be developed in C++ on the departmental linux systems. If you use another development environment at home or elsewhere, it is your responsibility to make sure the code you submit compiles and runs correctly in the linux environment used in the lab. If it does not, your project will not be considered submitted and you will be given no extra time to make corrections.

Attendance (A little different while KU courses are online)

Both the lab and lecture sessions are integral to your success. Laboratory attendance is mandatory. If you have a legitimate excuse to miss a lab, contact me and your GTA in advance for approval not be penalized for excused absences.

Important:

  • To receive a grade for a lab you must attend lab
  • If you must miss a lab lecture give us prior notice; don't contact us after the fact
  • Three unexcused absences or three zeros on lab assignments will result in a failing grade for this course

During online-only courses

  • Keep up with videos daily
  • Contact professor and TAs with issues/problems immediately
  • Allow ample time for replies from professor/TAs

Announcements

You are responsible for all announcements we make in class, such as information about exams, projects, changes in the syllabus, etc.

Cheating

The "Am I Cheating?" Checklist (includes but not limited to):

  • Looking at a solution of another student (past or present)
  • Looking at a solution online
  • Emailing another student code
  • Posting a lab/exam problem to online forum or the like
  • Having someone dictate code to you

You are allowed to get help from others, but the help must be at a conceptual level, not just getting a solution.

Cheating and Plagiarism will not be tolerated and will be treated severely whenever found. Unless an assignment explicitly states otherwise, all work (projects, homework, and exams) must be strictly your own. Sharing your work or copying is cheating, and submitting a work that is not all yours is also considered cheating. Any cheating will result in an F for the course for all parties involved. Reports of such detected academic misconduct will also be made to your major department, school/college, and university, which oftentimes will result in more serious sanctions.

Be aware many coding problems have solutions online, but the copying of these solutions is not only detrimental to your education, it is plagiarism, which is a violation of the KU academic code.

From section 2.6.1 of the University Senate Rules and Regulations: Academic misconduct by a student shall include, but not be limited to, disruption of classes; threatening an instructor or fellow student in an academic setting, giving or receiving of unauthorized aid on examinations or in the preparation of notebooks, themes, reports or other assignments; knowingly misrepresenting the source of any academic work; unauthorized change of grades; unauthorized use of University approvals or forging of signatures; falsification of research results, plagiarizing of another’s work; violation of regulations or ethical codes for the treatment of human and animal subjects; or otherwise acting dishonestly in research.

Posting Solutions

Students are forbidden from posting any solutions to labs or exams publicly as long as you are a student at KU. This includes, but is not limited to, a personal github repository.

You reuse code for future personal projects, but anything you post publicly must not be a solution for any EECS 168 or 268 assignment nor should it be easily searchable (e.g. the name of your repository is "EECS 168 Lab##").

Any posting of a solution, even for the purposes of sharing with an employer, will be considered an act of academic misconduct.

Class Conduct

Punishments of reduction of overall grade, zero for lab or homeworks, exam score reduction, and/or academic misconduct violation can result from any of, but is limited to, the following:

  • Talking during class
  • Distracting others during class
  • Using phone during class
  • Not participating in class
  • Disrepecting, insulting, or intimidating students or staff in or out of class
  • Misusing KU facilities
  • Other means of circumventing the academic process


I will issue warnings as I see fit, but will proceed straight to disciplinary action if I see fit.


Grading

Grading System

Written Exam 1: 20%
Written Exam 2: 20%
Written Final Exam: 30%
Lab Exercises (~8 total): 30%

This course is an entitlement course. Grading works differently than in other you courses you may have taken. You cannot pass the course (i.e., get a D or better) unless you have at least a 60% average in BOTH the lab AND the exam portions of the course. Similarly, in order to be eligible to receive a "C" or above in the course, you must have a weighted exam of 70% or higher and a lab average of 70% or higher. This means it is possible to have an overall grade average of C or higher, but still receive a D or F if either your exam average or your lab average is not a C or higher.

Once you have a C or higher in both exam and lab averages, then your grade will behave as normal.

Your overall letter grade will be on the following scales. Please note: not all EECS course use a plus/minus system. See your course's syllabus for grading details.

168 Percentages Grade
[90-100]% A
[80-90)% B
[70-80)% C
[60-70)% D
< 60% F
169 Percentages Grade
[93-100]% A
[83-93)% B
[73-83)% C
[63-73)% D
< 63% F

Compiling Requirement

All code must compile. Any code that does not compile will not be graded, and hence receive zero credit. You must develop good coding practices to ensure that your code is always in a working state.

Late Submission of Labs

Indicated on each lab is the lab due date. Programming assignments must be turned in by this due date in order to be eligible for full credit. Programming assignments may be turned in up to one week later with a 50% penalty. That is, the programming assignment will first be graded as if it were turned in on time. Then 50% of your score will be deducted. No programming assignment will be accepted which is either (i) more than one week late, or (ii) not submitted by 11:59pm the day before Stop Day.

Late work summary

  • Labs
    • 100% credit - within 7 days from start of lab
    • 50% credit - between 7 and 14 days hours from start of lab
    • 0% credit - after 14 days or does not compile

Appeals

Should you wish to appeal a grade that you have received on a laboratory assignment, exam, or anything else, you must do so within one week of receiving the graded item. In the case of items such as exams which are handed back in class, you will have one week from the day they were handed back in class, regardless of whether you were in class that day. For the final exam, you will have one week from the day class grades are posted to appeal.


Grade Responsibilities

This course does not use blackboard. All written exams are graded by the professor and handed back in class. All other grades are available from your TA. If you need a specific grade or you have not received a grade you were expecting it is your responsibility to email your TA and the professor no later than 10 days past the due date of the grade in question.

This exam's date, format, and location are all subject to change.

Submission Responsibilities

After you submit your assignments, your TA will contact within 24 hours to verify they received your submission.

The following is your responsibility:

  • ensure your submissions work on the lab machines
  • send a tar ball with a file name of the required format
  • remove all .o, executable, or any other invalid files from your submission that may cause it to be rejected by the email servers

Invalid Excuses

This is non-conclusive list of invalid excuses.

  • I have a lot going on in other classes
  • I'm very busy at my job
  • I didn't notice that instruction
  • I overslept
  • I couldn't make it to class because I'm behind in lab
  • I couldn't make it to lab because I'm behind in earlier labs
  • I sent an email and never got a reply
  • I didn't know I couldn't share my answers with others
  • I didn't know I couldn't copy code from an online source/printed source/other student/anywhere
  • I didn't know when the exam was
  • I wasn't in class when that was announced
  • I already booked my flight but it leaves when our final exam is
  • It works on my machine, but not on the machines it actually is supposed to work on
  • It works in my ZyBook but not the lab machine
  • My computer crashes and I lost my work
  • I submitted the wrong file
  • I thought I submitted it but I didn't


I know life happens. I know things can get stressful and you can feel overwhelmed, but out of respect for those that have to deal with illness, trauma, family issues, or other near catastrophic life events, please do your best to stay on top of this course. Sometimes you'll have to take a late grade or a low grade, but that's why we have many assignments and exams across the entire semester.

Academic Achievement and Access Center

Any student in this course who has a disability that may prevent him/her from fully demonstrating his/her abilities should contact me personally as soon as possible so we can discuss accommodations necessary to ensure full participation and facilitate the educational opportunity.

The staff of Academic Achievement and Access Center (AAAC), AAACTesting@ku.edu, coordinates accommodations and services for KU courses. If you have a disability for which you may request accommodation in KU classes and have not contacted them, please do so as soon as possible. Please also see me privately in regard to this course.

See Also