210 likes | 382 Views
CPS 1: Computer Science Fundamentals. Vijay Abhijit 17th May, 2001. Many thanks to Prof Jeff Forbes and Prof Dietolf Ramm for slide content !!!.
E N D
CPS 1: Computer Science Fundamentals Vijay Abhijit 17th May, 2001
Many thanks to Prof Jeff Forbes and Prof Dietolf Ramm for slide content !!!
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
Getting Help! • Contact Information • Vijay Abhijit : abhijit@cs.duke.edu OR vijay.abhijit@duke.edu • 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
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
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...
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
Course Mechanics (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
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
Assignment 0 • Send me email! (abhijit@cs.duke.edu OR vijay.abhijit@duke.edu) [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?
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
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
Survey the Field • Artificial Intelligence • Graphics / Multimedia • Programming Languages • Systems & Architecture • Theory • Parallel Computation
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
Layers of Abstraction The User Applications Programming Languages Operating Systems Machine Architecture Circuits Physics
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…
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
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
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
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