Course Introduction - University of Virginia

advertisement
CS 101
Today’s class will begin
about 5 minutes late
CS 101
Introduction to Computer Science
Aaron Bloomfield
University of Virginia
Instructors
• Instructors
– Aaron Bloomfield: CS 101
• Office: Olsson 228D
• Hours: M 3:30-4:30, W/F 11-noon
• Email:
– David Luebke: CS 101-E
• Office: Olsson 219
• Hours: Tu/Th 10:30-noon
• Email:
• Both instructors also accept appointments
• Other course personnel (TAs) will be posted on the website
shortly
What this course is
• An introduction to programming using Java
What this course is not
• We do not talk about (in any depth):
–
–
–
–
Applications of computing
Other programming languages (C, C++, Matlab, etc.)
History of computing
How to use Microsoft office or create a web page
Objectives
• Understand fundamentals of programming such as variables,
conditional and iterative execution, methods, etc.
• Understand fundamentals of object-oriented programming in Java,
including defining classes, invoking methods, using class libraries,
etc.
• Be aware of the important topics and principles of software
development.
• Have the ability to write a computer program to solve specified
problems.
• Be able to use the Java SDK environment to create, debug and run
simple Java programs.
Honor policy
• The University of Virginia Honor Policy is in effect in this class. As a
student in the course you are agreeing to the following principles.
– When there is doubt regarding the honorability of an action, you will ask before
doing it.
– When possible to do so with honor, you will help your fellow classmates learn
and improve.
– You will get help from classmates and course staff before succumbing to
frustration. Frustration leads to the dark path.
• Unless otherwise noted, exams and individual assignments will be
pledged that you have neither given or received unauthorized help.
Honor policy
• By default, the only allowed collaboration is the discussion of ideas.
No code or solutions are to be distributed to other students either
electronically or on paper.
• You are not allowed to describe problems on an exam to a student
who has not taken it yet. You are not allowed to show exam papers to
another student or view another student's exam papers while working
on an exam. An academic irregularity on any exam may result in
failure of the course and be brought to the honor committee.
• If you have questions on what is allowable, ask!
Honor policy
• Academic irregularities may result in failure of the
course and be brought to the honor committee
• Beware of MOSS
Website
• At http://www.cs.virginia.edu/~cs101
• The syllabus is there (with most of the info in this
slide set)
– And all the lecture notes
• I will try to post all slide sets on the website the
night before lecture
• Don’t bother writing down what’s on the slides!
Text
• Java
5.0
Program
Design, McGraw-Hil.
– Cohoon and Davidson
• Make sure to get the
shrink-wrapped version
with the CodeLab license!
• A
rough
schedule
of what we will be
covering
when
is
on the website
• The bookstore does
currently have copies
Textbook versions
CodeLab license
• Don’t throw it out!
Grading criteria
• 10% – Laboratory participation
– However, if you miss more than 2 labs, you are subject to failure
for the course
– More on this in a bit…
• 10% – Laboratory programming quizzes
• 30% – Homework assignments
• 30% – Midterms
– 21 September, 18 October, 16 November
• 20% – Final exam
– Scheduled time is Monday, 12 December from 7 pm to 10 pm
• NOT on Saturday
– We will discuss conflicts as the semester progresses (APMA 310
and ECON 201)
• Average grade will be at least a B-
Grades
• All grades will be kept online
– Viewing your grades will be gone over in the first lab
• All electronically submitted assignments (labs,
HWs, lab quizzes) will be graded electronically
– They are still graded by a human, of course
– You will receive an e-mail about your grade
• Only the exams will be graded via paper
Regrades
• When an assignment is graded, the grading
guidelines will be posted
• If you feel you deserve more credit, you need to
submit a regrade
– Paper-based for the exams, electronically for labs, HWs,
and lab quizzes
• Regrades must be submitted within 10 (ten) days
• More on regrades in the first lab
Keeping the class interesting
• Like many intro courses, this course does not really
show why CS is a fascinating field
– I’ll be bringing in guest lecturers to give short (5 minute)
talks about why they like CS
• At the beginning of lecture
• Humor breaks
– Actually helps with attention span!
– Not surprisingly, most of it will be computer humor!
Motivational posters…
18
Homeworks
• There are two types of homeworks:
• Programming homeworks
– a.k.a. “J” homeworks
– 6-7 of them
• CodeLab homeworks
–
–
–
–
–
–
Via http://www.turingscraft.com
a.k.a. “C” homeworks
An online service
6-8 of them
All the CodeLab problems will count as one J homework
We will go over CodeLab in a future class
Labs
• Will have one each week
– Total of 11 throughout the semester
• Lab attendance is REQUIRED
– If you miss more than 2 labs, you are subject to course failure for the
course
– If you show up to a different lab section without permission, it counts as
missing that lab
– There ARE labs this first week
• Lab grading will be discussed in the first lab
• If you don’t finish the lab during lab period, you can finish it within the
next 24 hours
– More details on this in the first lab
• If for a valid reason you are unable to do your lab, there will be a
make-up lab on Sunday night, provided that you get permission prior
to your scheduled lab
Lab scheduling problems
• I expect about 25 students will switch into CS 101-E
– Using last fall semester as a guide
• That will free up space in all the lab sections
• If you are not registered for a lab section this week, you can
go to any lab
– But only if you aren’t registered for any lab section!
• We will get everybody registered for a lab section that fits
their schedule
Exams
• There will be three midterms, all pledged
– 21 September, 18 October, 16 November
• There will be three lab quizzes, all pledged
– During lab sections the week of the midterms
• Final exam
– Scheduled time is Monday, 12 December from 7 pm. to 10 pm
• NOT on Saturday
– We will discuss conflicts as the semester progresses (APMA 310
and ECON 201)
• All exams are open book
Home directory service
• All assignments and lab files must be kept on your
home directory
– http://www.virginia.edu/homedir
Fairness
• A difficult thing in a class of 150 students
• If you feel something is not fair, you need to let me
know
– I will do my best to correct it
Who to contact
• I am not always the best person
– I easily get inundated with emails, as I have 150
students
– The TAs can often answer a question just as easily as I
can, and much quicker
• Office hours will be posted on the website
Feedback
• It’s a very good thing!
• Feel free to leave us feedback
– Can be done anonymously, if you wish
• Via the Toolkit or the CS dept website
• It’s hard for the instructors to know what the
students think of the course…
Learning the material
• There are a number of ways we provide to help you learn
the material
–
–
–
–
–
–
–
–
–
–
Lecture
Slides on the website
Programming homeworks
CodeLab homeworks
Labs
Textbook
Previous years’ tests
TAs (during labs or office hours)
Professors (office hours)
Fellow students
• Find what works best for you and use it
Sections
• CS 101
– Students have little or no programming experience
– Mandatory scheduled closed labs
• CS 101-E
– Students with programming experience
– Open labs that are to be completed by a scheduled time
• All students take same quizzes and tests, and do the same
assignments
• Course curve is based on the section with the lower average
– CS 101 students hate this policy…
Differences with 101-E
• Labs are done by all 101-E students on their own time
– If you miss more than 2, you are still subject to failure
– Labs due 8:30 p.m. on Sunday
– Lab session for 101-E students Sunday at 7 p.m.
• Pace through the textbook is the same
– They may go through it in more detail, though
• The following is assumed for students in 101-E
– You have taken a course in programming
• Thus, you know the basics of programming
– You did not get a 4 or a 5 on the AP computer science exam (AB
level)
Should you be in 101-E?
• If you have had a semester’s worth of programming,
then yes
• Stay to the end of this lecture, then start going to
the other section next time
– Meets in OLS 009
Human stupidity
31
Download