2. CS 101
Introduction to Computer Science
Aaron Bloomfield
University of Virginia
Spring 2007
3. 3
Who we are
Aaron Bloomfield: CS 101
Office: Olsson 228D
Office hours will be posted on
the website
Email:
Michele Co: CS 101-E
Office: Olsson 228A
Office hours will be posted on
the website
Email:
4. 4
Who they are
Both instructors also accept appointments
We have 16 undergraduate teaching assistants
And 1 graduate teaching assistant
Their information and hours will be posted on the
website
5. 5
What this course is
An introduction to programming using Java
An introduction to theoretical problems in computer
science
We’ll start seeing these next time
6. 6
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 (well, not much)
How to use Microsoft office or create a web page
7. 7
Course objectives
Understand fundamentals of programming such as
variables, conditional and iterative execution, methods, etc.
Understand fundamentals of object-oriented programming,
including defining classes, invoking methods, using class
libraries, etc.
Gain exposure to the important topics and principles of
software development.
Have the ability to write computer programs to solve
specified problems.
Be able to use a software development environment to
create, debug, and run programs.
8. 8
Honor Policy
Honor Policy: The University of Virginia Honor Policy is in
effect in this class. As a student in the course you also
agree to follow the following principles.
Unless otherwise specified, the only allowed collaboration for the
homeworks and labs is the discussion of ideas; no collaboration is
allowed on the exams and lab quizzes.
No code or solutions are to be distributed to other students either
electronically (i.e. e-mail) or on paper. If you are looking at another
student's code, you are in violation of this honor policy.
Unless otherwise noted, exams and individual assignments are
pledged: you promise that you have neither given nor received
unauthorized help.
When there is doubt regarding the honorability of an action, you will
ask before doing it.
9. 9
Honor Policy
Honor Policy: The University of Virginia Honor Policy is in
effect in this class. As a student in the course you also
agree to follow the following principles.
You are not allowed to describe problems on an exam or quiz 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.
You are not allowed to debug your fellow student's code – there is
ample teaching assistant support, and they can help debug code.
This will be discussed in more detail once we start getting into
writing (and debugging) Java programs.
You may not use another students 'clicker' during lecture (we will be
discussing clickers shortly).
10. 10
Honor Policy
If you find yourself looking at somebody else's
code, and doing such was not explicitly allowed,
then you are in violation of this policy!
Any honor violation or cheating will be referred to
the honor committee, and will result in an
immediate failure for the course, regardless
of the outcome of the honor trial or your
other grades.
No exceptions!
11. 11
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
But will probably be editing them that day
Don’t bother writing down what’s on the slides!
There will also be videos of 101 lectures
12. 12
Textbook
Starting Out with Java 5
from Control Structures to
Objects
Tony Gaddis
We’ll be covering the first 6
chapters and chapters 8
and 9
This is not the same
textbook that was used last
semester!
13. 13
Clickers
These are RF “remote
controls”
Allow me to ask questions
during class and get
responses from everybody
Very useful in large
lecture halls…
The bookstore has them
(or will shortly)
It is required: there will
be a grade penalty if you
do not get one
14. 14
Keeping the class interesting
Humor breaks
Actually helps with attention span!
Not surprisingly, most of it will be computer humor!
17. 17
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 February, 28 March, 25 April
20% – Final exam
Scheduled time is Friday, 4 May from 7 pm. to 10 pm
We will discuss conflicts as the semester progresses
APMA 310, MATH 111, 114, 121, and 122, and STAT 110
Will be following the standard 10-point curve scale
18. 18
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
19. 19
Grading critera
We reserve the right to modify the weighting,
especially if attendance drops off significantly
Any such change will be announced in lecture
20. 20
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
We reserve the right to possibly institute a
“penalty” on “whiny” regrades
21. 21
Homeworks
These are programming homeworks
We estimate 9 or so of them
Are due at 10 a.m. on Friday
Late policy:
1 second late to 24 hours late: -25%
24 hours and 1 second late: -100%
22. 22
Labs
Will have one each week
Total of 11 (or so) 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
23. 23
Lab scheduling problems
I expect about some students will switch into CS 101-E
Using last spring semester as a guide
That will free up space in all the lab sections
I then have to course action in the lab section 10 people
We will get everybody registered for a lab section that fits
their schedule
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!
24. 24
Exams
There will be three midterms, all pledged
21 February, 28 March, 25 April (all are Wednesdays)
There will be three lab quizzes, all pledged
During lab sections the week of the midterms
The tests are going to be hard!
Final exam
Scheduled time is Friday, 4 May from 7 pm. to 10 pm
We will discuss conflicts as the semester progresses
APMA 310, MATH 111, 114, 121, and 122, and STAT 110
25. 25
Home directory service
All assignments and lab files must be kept on your
home directory
http://www.virginia.edu/homedir
26. 26
My philosophy: hard but fair
Fairness is a challenge in a class of 375 students
If you feel something is not fair, you need to let me
know
I will do my best to correct it
If you think that this course is not hard, let me
know
I will do my best to correct it
27. 27
Who to contact
I am not always the best person
I easily get inundated with emails, as I have hundreds of
students
The TAs can often answer a question just as easily as I
can, and much quicker
There will be a dedicated graduate TA for grading issues
Any administrative requests should be e-mailed to
cs101@cs.virginia.edu, not the instructors or
TAs
Lab section switches, homework questions, etc.
Anything that does not need to be answered by the
instructors
28. 28
Office hours
Office hours will be posted on the website
Note that changes to an individual week will be posted
there as well
Please check it before you head off to office hours!
There will be a lot of TA office hours
We expect to provide over 50 office hours during a given
week
Please utilize them!!!
29. 29
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…
30. 30
Learning the material
There are a number of ways we provide to help you learn
the material
Lecture
Lecture videos
Slides on the website
Programming 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
31. 31
Sections
CS 101
Students have little or no programming experience
Mandatory scheduled closed labs
Meets three times a week (M/W/F 3:00-3:50)
CS 101-E
Students with programming experience
Open labs that are to be completed by a scheduled time
Meets two times a week (M/W 2:00-3:15)
CS 101-X
Is being run separately from 101/101-E
101 & 101-E students take same quizzes and tests, and do the same
assignments
The 10-point curve is the same for everybody
So helping your fellow students out does not hurt you
32. 32
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
Optional lab session for 101-E students Sunday at 5 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 will need to sign a pledge stating this
You did not get a 4 or a 5 on the AB level AP computer science
exam, or a 5 on the A level AP exam
33. 33
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 MEC 205