CS2 Winter 2005 - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

CS2 Winter 2005

Description:

Usually split into a 'design' component and an 'implementation' component. ... the basic concepts that will have longevity even after Java is long gone. ... – PowerPoint PPT presentation

Number of Views:58
Avg rating:3.0/5.0
Slides: 13
Provided by: alb78
Category:
Tags: cs2 | winter

less

Transcript and Presenter's Notes

Title: CS2 Winter 2005


1
CS2Winter 2005
  • Instructor Al Barr
  • E-mail barradmin_at_cs.caltech.edu
  • TA e-mail cs2staff_at_ugcs.caltech.edu

2
CS2 Course Objectives
  • Introduction to Programming Methods
  • Overview of CS concepts
  • Limits of computation, scaling arguments,
    reusability,
  • Design strategies
  • Issues of Representation
  • The "decomposition" process, divide and conquer,
  • Data structures
  • Stacks, heaps, lists, directed graphs, hash
    tables
  • Algorithms
  • 7 key algorithm structures whats the
    invariant, n log n complexity,
  • Numerics
  • Elements of CS history
  • CS Pioneers

3
Class Structure
  • Ten Weeks
  • Lectures and recitations
  • 1 assignment per week
  • Usually split into a design component and an
    implementation component. Sometimes will have
    written components.
  • Design portion due separately, so can have two
    due-dates per week
  • Implementation is programming in Java
  • Using Sun NetBeans IDE (Integrated Development
    Environment)
  • Java is an object oriented imperative language

4
Administrative Issues
  • Write name, e-mail, and intended major(s) on
    class list
  • TAs still in process of being selected.
  • Web site for this year is still being set up
  • www.cs.caltech.edu/courses/cs2
  • E-mail mailing list will be created

5
Ends and Means
  • You might think the class is about programming in
    Java
  • But thats only a means to the end.
  • The purpose of the class is to cover the
    fundamentals,
  • the basic concepts that will have longevity even
    after Java is long gone.
  • Each modern technology is usually quite short
    lived,
  • But the principles behind the technology usually
    have longevity

6
A Digression The Story of the Teleharmonium
  • Patented 1897, Thaddeus Cahill
  • first significant electronic musical instrument
  • first fully completed model presented in 1906
  • Based on mathematics of Fourier series
  • (any periodic waveform can be represented
    arbitrarily closely as a sum of sines and cosines
    of different frequencies)
  • F(x) S aN Cos(N p x/L) bN Sin(N p x/L)

7
How would you design it?
  • Took place before amplifiers (by 20 years)
  • before invention of the vacuum tube
  • Took place after the invention of the telephone
  • And after the invention of the AC current
    generator
  • 145 modified dynamos w/ specially geared shafts
    to produce alternating currents of different
    audio frequencies.
  • Weighed 200 tons! Filled a factory.
  • Linked directly to telephone network and to a
    series of telephone receivers fitted with special
    acoustic horns.
  • Needed enough current (1 amp) for all combined
    listeners.
  • Masked and disrupted all other signals on the
    phone line in NYC during performances

8
Teleharmonium, conclusion
9
Teleharmonium, conclusion
  • Performances continued until 1916
  • Made obsolete by radio
  • See http//www.obsolete.com/120_years/machines/tel
    harmonium/
  • Synthesis principles later adapted to Hammond
    Organ and many other electronic instruments.
  • The moral of the story is that the mathematical
    and theoretical foundations long outlasted the
    implementation using the most modern technology
    of the time (generators, gears, and motors).
  • As technologists and scientists, we need to focus
    on the mathematical and theoretical fundamentals
    to keep current.

10
Is CS Fundamental?
  • Is Computer Science a Science?
  • (Or is it merely the study of boxes and arrows)?
  • Unlike physics, CS not invented by Aristotle. (He
    was close see below
  • . . . That physics, then, is a theoretical
    science, is plain from these considerations.
    Mathematics also, is theoretical, but whether its
    objects are immovable and separable from matter,
    is not at present clear. Aristotle, Metaphysics,
    Book VI, 350BC
  • Can think of fundamental CS as study of how
    information might be stored and processed in
    material structures
  • Includes digital and analog computation, like the
    Teleharmonium
  • Is Information real?
  • yes, related to entropy (Shannon)

11
Ok, back to Design
  • Internal design of text editor?
  • ? Sequential, monolithic program? Why not?
  • A good design would have three separate threads
    or processes
  • one independent thread to manage the data in the
    text buffer
  • one independent thread to handle the display of
    the text, updating continuously from the data
    buffer
  • One thread to handle the interaction from the
    user (keyboard clicks, mouse commands, etc.)

12
Programming Objects
  • state descriptions compare to physical
    objects
  • History of objects no silver bullet by Fred
    Brooks
  • Work with TAs to help set up NetBeans, your
    Java environment
  • See http//java.sun.com/docs/books/tutorial/java/c
    oncepts/index.html
Write a Comment
User Comments (0)
About PowerShow.com