Transcript Document

CS203 LECTURE 1

John Hurley Cal State LA

Introduction

John Hurley

Call me John, especially outside class.

If that’s too informal for you, you can call me “Instructor”

[email protected]

Office hours listed on course page.

CS 203

 CS 203: Programming With Data Structures the three-term Java Programming sequence. is the third course in  This is a critical class for CS majors. All the programming classes you take after this will build on this material. Accordingly, the workload will be high, even for a 5-unit course.

 Most class meetings will be split roughly evenly between lecture and lab time

Course Information

 All information on the course is on CSNS  Course schedule and Software Download Links  Textbook Info  Grading policies  Assignments

Grading

 Grading: A, B, C, (with + and -), NC.  If you don’t get at least a C (undergraduate) or B (graduate), you get an NC.  Grading standards in this class will be tougher than in my 100 level classes.  See the grading scale on the syllabus  No curve  You will have your midterm grades before the withdrawal-with W deadline  I have toughened my policy on late work; see the course web page

This Is A Difficult Class!

• Like CS201 and 202, this class is essential to your success as a CS major. • This is a 5 unit course • About 30% of my students in 200 level sources drop or receive NC. Around half of those put some effort into the course, but still failed.

• If you do not do the work or do failing work, do not ask me to pass you for financial aid / family / visa / whatever reasons. If you need to pass the class, study the material until you understand it, do the work, and turn everything in on time.

Assignments

  All assignments will be linked from the course page.

Hand in via CSNS.   If you have not previously used CSNS, go to csns.calstatela.edu and login using your CIN as both username and password. Change your password. Let me know immediately if you have any difficulties with this.

If you don’t have a logon to the lab network, get one from the IT staff in the library right after this class

Quizzes

      Quizzes will consist of multiple choice, short answers, and one-paragraph writing questions.

There are a few definitions and descriptions you will have to memorize for this class. Closed-book quiz questions may test your knowledge of these. Slides marked “memorize this slide” obviously contain information likely to be on closed-book quizzes, but I don’t always add that note. I will always make it clear verbally when you need to memorize something. Quizzes may test your knowledge of material from the textbook, even if it did not appear in the lectures Most quizzes will be open-book and open-note  Use the book and notes for details. If you don’t understand the material you will not have time to learn it during the exam. No quiz makeups unless you can document an emergency

Exams

 One midterm, one final exam  Makeup midterms are allowed with no explanation required, but will be

much more difficult

than the original exam.  Since I began this policy, very few students have ever asked for make-up exams.

 No final exam makeups without well-documented justification. If you miss the final exam, you will receive an NC for the course. If you can document an emergency, you can take a makeup exam next term and I will change the grade. For spring quarters, "next term" will not arrive for four months.

Individual Meetings

 I will hold individual meetings with each of you during labs in weeks 3 though 6.  Meeting times are reserved with a sign up sheet that I will pass around ahead of time.

 If you are worried about this class, sign up for the earliest meeting time you can get. If you are confident, take a later time.

 This is just a way for me to see if you need help with the class and for you to ask any questions you may be shy about in class. You do not need to prepare anything.

Individual Presentations

 Each of you will make a three-minute presentation in which you will explain some of your own code line-by-line  These presentations will start in week four. I will add a sign up sheet to the wiki (linked from the CSNS page) in week 3.

Textbook

 Liang, Daniel, Introduction to Java® Programming, Comprehensive Version, Tenth Edition • Be careful to get the right edition; there are other books with very similar titles. The right one has this ISBN-13: 978-0-13-376131-3 • The textbook is absolutely required  Book costs about $140 on Amazon.com. Amazon and coursesmart.com offer limited-time rentals, but you will probably be using the same book again in CS203. Unfortunately, you are not likely to get a good deal on an international edition for this book.

• • • •

I'm Fed Up With Cheating!

This is a foundational course in a practical field in which you are presumably considering making a career. Although this is a difficult class, if you have to cheat here you are not likely to succeed as a programmer and should change your major.

If I let students get away with cheating, particularly in the 201-202-203 sequence, your degree would have significantly less value in the job market. Also, I would get fired.

The comments an instructor makes when grading work are among the most useful aspects of any college class, but I have to waste a large proportion of my grading time detecting cheating. I also have to design my grading scale in a way that makes compromises between effective teaching and cheating mitigation. This is detrimental to students who take the work seriously, the ones who are likely to succeed as programmers. For these reasons, I am *really angry about the prevalence of cheating,* particularly code copying on labs. Cheat and you will fail the course.

Cheating: Copying

 Presenting an answer that is copied from any source other than your brain is always cheating.

 You may not copy code from other students or allow anyone to copy your code.  I will punish all students involved in copying equally , even though it is usually obvious who copied from whom. This is much harder on the student who can do the work and lets others copy his/her work, who is the one with more to lose. However, it is the only way to stop competent students from letting others copy their work.

 If someone asks to copy your work, s/he is asking you to risk failing the class for his or her gain.

Cheating: Copying

• • This course teaches a set of skills that you need to learn individually. Multiple people can not add up their skills to write the same code. Universities have a highly individualistic set of values. What some students think of as "working together" is, by our standards, code copying. If you turn in the same code as another student on a one person lab, you are cheating,

Cheating on Exams and Quizzes

  Examples of cheating on exams and open-book quizzes:    Copying code or text from other students or any other source  I can detect this!

Answering short-answer questions with direct quotes from any source (restate them in your own words!) Communicating during an exam or quiz with any human being other than me via email, chat, phone, or any other means Using internet sources other than the lecture notes. If you have taken previous courses with me, note that this is a change in policy.

Not Cheating on Exams and Quizzes

 OK   on exams and open-book quizzes: Consulting lecture notes, textbooks, or your own notes Copying code examples from the lecture notes or textbook only and modifying them to solve the problems assigned. I expect you to do this.

Cheating Detection

It is completely obvious when students answer short-answer and essay questions with text copied from professional-level sources like Wikipedia and textbooks.

    I understand the nuances of code better than you do. There are many ways to get caught copying, even when the code is good. Besides that, if you copy answers you will sooner or later copy an identifiable incorrect answer or trip up in some other way.

I will be using several different automatic tools to detect copying. If you copy code, you will almost certainly eventually get caught. People who do well on labs but poorly on exams and quizzes receive very careful scrutiny!

I change my labs at least a little bit every term, sometimes in subtle ways. If you present a solution that is a correct answer to last term's lab assignment but is not correct for this term's version of the assignment, I will know it is copied.

Cheating Detection

Don’t post partial solutions online!

 Don’t post partial or full solutions to the labs on StackOverflow.com or other web sites!