cps 1: computer science fundamentals vijay abhijit 17th may, 2001
TRANSCRIPT
![Page 1: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/1.jpg)
CPS 1: Computer Science Fundamentals
Vijay Abhijit
17th May, 2001
![Page 2: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/2.jpg)
Many thanks to Prof Jeff Forbes and Prof Dietolf Ramm
for slide content !!!
![Page 3: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/3.jpg)
Welcome! Computer Science Fundamentals : CPS 1 D106, Levine Science Research Center — M, T, W, Th, F 2:00 - 3:15 Lab 130 North Building — T, Th 3:20 - 4:20 Instructor: Vijay Abhijit
![Page 4: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/4.jpg)
Getting Help!
• Contact Information– Vijay Abhijit : [email protected] OR
[email protected]– Ph : 660 - 4007– Office Hours at 07 North Building
• Mon : 3:20 - 4:30• Wed : 3:20 - 4:30, or by appointment
• Peer Tutors– Peer Tutoring Office, 217 Academic Center, East Campus, Ph: 684-8832
![Page 5: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/5.jpg)
Administrivia
• Read webpage regularly– http://www.cs.duke.edu/education/courses/summer01/cps001
• Read newsgroup – news:duke.cs.cps001
• On webpage you will find:– Assignment information– Syllabus and timetable– Handout of slides
![Page 6: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/6.jpg)
Today’s Topics
• Who is this guy talking to us?
• What is this course about?
• How are we going to learn it?
• Where do we go from here?– A peek into the world of HTML...
![Page 7: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/7.jpg)
Course Mechanics
• What is the prerequisite?– High School Algebra (?)
• How does this course fit into the curricula?– A survey, service course designed for non-
majors– CPS 4 and 6 are more programming oriented
![Page 8: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/8.jpg)
Course MechanicsMechanics (contd.)
• Study Material– Text Books
Course Pack (available from Book Store)
Great Ideas in Computer Science by A. Biermann, 2nd ed, MIT Press, 1997
OPTIONAL: Programming.Java by R. Decker and S. Hirshfield, 2nd ed, PWS, 2000.
– Handouts
![Page 9: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/9.jpg)
Course Mechanics (contd.)
• Flat grading (no marking on curve)– Programs, problems 25%
– Programming test (in last lab. meeting) 10%
– Project 15%
– Quizzes 15%
– Mid Term Exam 15%
– Final Exam 20%
– Class Participation
![Page 10: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/10.jpg)
Assignment 0
• Send me email! ([email protected] OR [email protected]) [due Fri, May 18, 11:59pm]
– Your name
– Major
– Class [Fresh / Soph / Jun / Sen / Grad]
– Box at home? [PC / Mac]
– Programmed before? [Never / Basic / Pascal / HTML / Java / C++ / C / Other]
– What would you like to learn from this course?
![Page 11: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/11.jpg)
On the subject of questions
• Did you ask any good questions today?– Questions which illuminate help nourish ideas– Children are born curious– Fear of public displays of ignorance prevents
learning
• Participate in class
• Go to office hours
• Make study groups with your classmates
![Page 12: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/12.jpg)
Quotations about Computer Science
• “Computer Science has such intimate relations with so many other subjects that it is hard to see it as a thing unto itself”
– Marvin Minsky, 1979
• “It has often been said that a person does not really understand something until he teaches it to someone else”
– Donald Knuth
• “Actually a person does not really understand something until he can teach it to a computer”
– Judith Gal-Ezer and David Harel
![Page 13: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/13.jpg)
Survey the Field
• Artificial Intelligence
• Graphics / Multimedia
• Programming Languages
• Systems & Architecture
• Theory
• Parallel Computation
![Page 14: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/14.jpg)
Precise, Logical Thinking
• Breaking down a task into unambiguous steps• Computers are deterministic• Debugging
– Programs will rarely work the first time one writes them
– Systematic approach to detecting, diagnosing and fixing errors
– Debugging skills are useful in many parts of life
![Page 15: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/15.jpg)
First Bug!
![Page 16: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/16.jpg)
The User
Applications
Programming Languages
Operating Systems
Machine Architecture
Circuits
Physics
Layers of Abstraction
![Page 17: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/17.jpg)
The Web and HTML!
• Lots of computers connected together in a collection of networks
• Internet started in 1969 as DARPAnet– To survive a nuclear attack by the USSR– 4 computers in 1969, millions today…
![Page 18: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/18.jpg)
The Web and HTML (contd.)
• HTML (Hyper Text Markup Language) is a common formatting language for the web
• Hypertext (from the Webopedia)– A special type of database system, invented by
Ted Nelson in the 1960s in which objects (text, pictures, music, programs and so on) can be creatively linked to each other
• Hypertext is the idea of a link or a reference
![Page 19: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/19.jpg)
HTML
• HTML uses “tags”• Tags are unprinted, formatting markers
– Identified by angle brackets i.e. (<TAG>)– eg: <TITLE> The Human Tornado </TITLE>– NOT case sensitive
• Most people don’t write HTML– Save as HTML in Microsoft Word– Netscape Composer/ Microsoft Front Page
![Page 20: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/20.jpg)
Delimiting with Tags
• First tag says “Begin Mode”
• Second tag says “End Mode”
• So <TITLE> The Human Tornado </TITLE> means:– Begin TITLE mode– The text “The Human Tornado” is in TITLE
mode– End TITLE mode
![Page 21: CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001](https://reader036.vdocuments.mx/reader036/viewer/2022062408/56649eb35503460f94bbb326/html5/thumbnails/21.jpg)
Delimiting with Tags (contd.)
• Using these constructs we can nest several different modes and have really interesting behavior
• Good tutorial on HTML at http://www.w3.org/markup/guide
• In lab you will create a webpage