Title: CS 1311
1CS 1311
Lecture 1
2Instructors
- Bill Leahy
- bleahy_at_cc.gatech.edu
- Office CoC 121
- Office Hours Tue Thur 3 - 5
- David Smith
- dmsmith_at_cc.gatech.edu
- Office CoC 121
- Office Hours Mon Wed 1 - 3
3Welcome
- Were glad youre here.
- We hope you will learn useful things.
- Find the course challenging.
- Have fun!
4Why take CS1311
- Required, but why?
- Pervasiveness of Computing Technology
- Probably eventually work with computers
- Will definitely work with computer people
- Critical resources for Tech Experience
- See supplemental chapter in textbook.
5Misconceptions
- All computer programming is done by computer
scientists. - Im a(n) (engineering/architecture/music/managemen
t) major. Why would I ever use this stuff?
6University Vocabulary
- Lecture Typically led by Professor or Lecturer.
Sometimes big. - Lab Formerly held in equipped laboratory,
involving immediate hands on doing. Now hands on
projects done on your own. - Recitation Typically led by Teaching Assistant
(TA). Smaller group. Questions and answers.
7Lecture
- You are here!
- Will generally follow notes but not guaranteed.
- Questions welcome.
- All sections should be synchronized
- Attendance strongly encouraged
- Clear link between attendance and grades
8Lab
- Required by your department
- Graded by a Lab TA
- First lab This week
- Projects take some time because youre learning.
9Recitation
- Led by TA
- Quiz
- TA will explain details.
- Bring questions.
10Office Hours
- Bill Leahy
- TBA
- David Smith
- Mon Wed 100 - 300 p.m.
- Take advantage!!!
11Help Sessions
- Led by TAs or instructors
- Offered for you and driven by your questions.
- Take advantage early
- Not to do your homework for you!
12Books
- Required
- Introduction to Computing and Algorithms
- Custom Edition
- Russell L. Shackelford
- Lecture Notes
- Lab Manual
- Optional
- Algorithmics -- The Spirit of Computing
- David Harel
13(No Transcript)
14Map to Engineers
15WebCT
- Comprehensive package that will be used for
- Announcements
- Discussions
- Assignment Retreival and Turn in
- etc.
- First use in CS 1311
- New version
- Everyone Instructors/TAs/Administrators/Yall
is having their first experience this Semester - Your patience and understanding will be
appreciated
16WebCT
- Available at
- http//webct3.gatech.edu
- NOT AVAILABLE UNTIL SATURDAY!!!
- Username GT Number
- Initial Password Social Security Number
- It might not work!
17Help
- Follow the following sequence of people
- TA (or newsgroup)
- STA
- Instructor/Program Manager
18Our Roles
- Your role
- You are required to demonstrate that you have
learned this material. - You have hired us as trainers to assist you.
- You are ultimately responsible for learning.
- Our role
- We will supply you with a variety of resources to
enable you to learn effectively. - We will evaluate your performance.
- This evaluation will be part of your permanent
record.
19Cafeteria Approach
- Resources are available.
- You pick the ones you want to use.
- Evaluation is like the cash register at the end.
- In this case, evaluation is ongoing so you dont
get a nasty surprise at the end.
20Evaluation
- Homeworks
- Turned in electronically, graded by Rec TAs
- Quizzes
- Taken in Recitation, graded by Rec TAs
- Lab projects
- Turned in electronically, graded by Lab TA
- Lab Midterm
- Taken electronically
- Lab Final
- Taken electronically
- Lecture Final (Official)
21Schedule This Week
- Go to lecture (Tuesday Thursday)
- Go to Recitation (See your schedule)
- Do not go to lab!
- Make sure you have a GT Account
- Buy books, start reading
22How the course works
Sun
Mon
Thu
Wed
Tue
Sat
Fri
23You are here
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
24There will be lecture Tuesdays and Thursdays
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
25You will have recitation Tuesday or Wednesday or
Thursday
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
26There is no scheduled Lab time
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
27Homework will be assigned on Fridays. It will be
available electronically.
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
HW Assigned
28Homework will then be due the following Friday at
900 a.m.
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
HW Due
29Homework will, in general, be based on the
preceding Thursdays and Tuesdays material
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
HW Due
30Quizzes will be given in recitation. In general,
they will cover the material from the previous
homework
Sun
Mon
Thu
Wed
Tue
Sat
Fri
You are here
HW Due
QUIZ
31Questions?
32Buzzback
- Mandatory survey tool
- Counts towards grade
- We need and want your feedback.
- This course has been heavily influenced by
Buzzback - Totally anonymous
- Details later.
33Student/TA Meetings
- Mandatory meeting between small group of students
(lt5) and TA. - Held weekly
- Get back homework and quizzes
- Discuss problems
- Contributes towards grade.
34Grading
- Lab Projects 10
- Lab Midterm 10
- Lab Final 10
- Homework 10
- Quizzes 30
- Lecture Final 30
- Buzzback complete all 1
- Meetings w/TA each miss -1
- Final gt Quiz Final replaces quiz
- No curve
35Personnel
- You will have
- A lecturer (bleahy_at_cc OR dmsmith_at_cc)
- A lab TA
- A recitation TA
- A senior TA (STA)
- A Program Manager (progmgr_at_cc)
36Is 1311 The Shaft
- The course requires a lot of work.
- We bend over backwards to be fair.
- For many students it is a rude awakening from
their carefree high school years. - Some students wait until it is too late to
realize that they are locked in a death spiral. - Resources are there to be used. Make use of
them!!! - There is absolutely no mandate to run a
weed-out course.
37Questions?
38CS 1311 Introduction to ComputingOverview
- 1. Basic algorithmic/procedural programming
- 2. Object oriented programming
- 3. Performance Issues
39Part 1
- Introduction to Procedural or Imperative
Programming - Language Pascal like Pseudocode
- Will cover essential programming concepts and
introduce some basic data structures
40And now for something completely different...
- Part 2 has traditionally been an introduction to
Object Oriented programming - Up until now it has been taught using a
modification of the basic pseudocode used in Part
1 - Starting now we will now be introducing Object
Oriented Programming using Java
41Part 3
42Part 1 Programming
- We will be writing general algorithms
- There will not be a specific target machine
- Programming will be done in pseudocode
- Hand graded
- Simplified model
- Focus on algorithms and style
- Avoid syntactic details
43Machine Model
- Mental model
- Machine capabilities overview
- Important
- Focus on the right way to do things
- Based on both theory and practice
- Not based on what a given machine or language
will allow
44Machine Model
Central Processing Unit
- CPU controls the operation
- Executes sequences of commands
- Typically called instructions
- Capabilities
- Math
- Compare numbers
- Make simple decisions.
45Machine Model
Memory
Central Processing Unit
- Memory stores data used by programs
- Data
- Numbers
- Text
- Logical (boolean i.e. TRUE/FALSE)
- Other used in operations (e.g. addresses)
46Machine Model
Memory
Central Processing Unit
- Memory holds instructions (programs)
- Not a focus of this course
47Machine Model
Memory
Central Processing Unit
- CPU and Memory communicate via bus (wires)
- Type of communication channel allows
interconnection
48Machine Model
Memory
Central Processing Unit
Display
There are also input and output devices attached
to the bus.
Keyboard
49Basic Capabilities
- We will get into exact details of how we write
algorithms in pseudocode next time. - For now to get the basic idea we can imagine
capabilites like - Moving data from the keyboard to memory
- Moving data from the memory to the CPU
- Performing math
- Storing the result in memory
- Writing the result on the display tube
50Basic Capabilities
- // Our first algorithm (minus some details)
- //
- // Declare which variables well need
- Time, Speed, Distance isoftype Num
- // Get a number from keyboard and store it.
- read(Time)
- // Get another from keyboard and store it.
- read(Speed)
- // Get the values from memory, multiply them
- // together and then store in memory
- Distance lt- Time Speed
- // Get a number from memory and display it
- print(Distance)
- // The end!
51Questions?
52(No Transcript)