Download presentation
Presentation is loading. Please wait.
1
2005.02.08 - SLIDE 1IS146 - Spring 2005 Computation: Programming Concepts Prof. Marc Davis & Prof. Peter Lyman UC Berkeley SIMS Tuesday and Thursday 2:00 pm – 3:30 pm Spring 2005 http://www.sims.berkeley.edu/academics/courses/is146/s05/ IS146: Foundations of New Media
2
2005.02.08 - SLIDE 2IS146 - Spring 2005 Free Pizza Dinner!!! Online survey about technology use
3
2005.02.08 - SLIDE 3IS146 - Spring 2005 New Room Starts Thursday 247 Cory Hall Entrance on Hearst Street
4
2005.02.08 - SLIDE 4IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
5
2005.02.08 - SLIDE 5IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
6
2005.02.08 - SLIDE 6IS146 - Spring 2005 Assignment 2 Check In Group names? Group members or size? Artifact choice questions?
7
2005.02.08 - SLIDE 7IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
8
2005.02.08 - SLIDE 8IS146 - Spring 2005 Assignment 3: Documenting Artifact Usage Status update –How is it going? –Any questions on Objectives Questions Methods Deliverables –How is working together in your group?
9
2005.02.08 - SLIDE 9IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
10
2005.02.08 - SLIDE 10IS146 - Spring 2005 Reading Questions Papert –What is computation? What does it enable us to do? –What assumptions have you had about computing and mathematics that Papert is challenging? –How do you use computing today to enhance your learning at Berkeley? –How could you use computing differently than you do today to enhance your learning at Berkeley? –Why is programming not taught in the English department? Should it be? If it were, how would your understanding of language, computation, and New Media change?
11
2005.02.08 - SLIDE 11IS146 - Spring 2005 Computation and Learning Computer-aided instruction –The computer is being used to program the student Constructionism –The student programs the computer –Objects to think with –Microworlds
12
2005.02.08 - SLIDE 12IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
13
2005.02.08 - SLIDE 13IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
14
2005.02.08 - SLIDE 14IS146 - Spring 2005 Reading Questions Hillis –What is computation? What does it enable us to do? –What is the difference between computation and a computer? –What are the differences between digital and analog representations? –What are the various levels of a modern computing machine? –What are some of the “simple ideas that make computers work”? –How might these ideas affect your understanding of language, computation, and New Media?
15
2005.02.08 - SLIDE 15IS146 - Spring 2005 A Computer Glossary (Video) Charles and Ray Eames are considered to be among the finest designers of the 20th century They are best known for their groundbreaking contributions to architecture, furniture design, industrial design and manufacturing The legacy of this husband and wife team includes more than 75 films that reflect the breadth and depth of their interests
16
2005.02.08 - SLIDE 16IS146 - Spring 2005 Programming As Representation There is a structure of formal symbols that can be manipulated according to a precisely defined and well-understood system of rules There is a mapping through which the relevant properties of the domain can be represented by symbol structures This mapping is systematic in that a community of programmers can agree as to what a given structure represents
17
2005.02.08 - SLIDE 17IS146 - Spring 2005 Programming As Representation There are operations that manipulate the symbols in such a way as to produce veridical results—to derive new structures that represent the domain in such a way that the programmers would find them accurate representations Programs can be written that combine these operations to produce desired results
18
2005.02.08 - SLIDE 18IS146 - Spring 2005 Levels of Representation Physical machine –Wires, chips, disks, or pipes, valves, sinks, or tinker toys Logical machine –And-gates, or Or-gates, inverters, etc. Abstract machine –Machine instructions for manipulating stored symbols High-level language –Java, C++, Lisp, etc. (operator, data structures, etc.) Representation language –Represents primitives and operations about a domain
19
2005.02.08 - SLIDE 19IS146 - Spring 2005 Algorithms and Programming Algorithm –A step-by-step description of a procedure to achieve a desired result Programming –Primitives –Means of combination –Means of abstraction
20
2005.02.08 - SLIDE 20IS146 - Spring 2005 From Algorithms to Programs Algorithm –A step-by-step description of a procedure to achieve a desired result –How can we walk a square? Walk forward Turn Walk forward Turn Walk forward Turn Walk forward
21
2005.02.08 - SLIDE 21IS146 - Spring 2005 LOGO Square Example to square –forward 50 –right 90 –forward 50 –right 90 –forward 50 –right 90 –forward 50 –end
22
2005.02.08 - SLIDE 22IS146 - Spring 2005 LOGO Square Example to square –params [size] –forward :size –right 90 –forward :size –right 90 –forward :size –right 90 –forward :size –end
23
2005.02.08 - SLIDE 23IS146 - Spring 2005 LOGO Window Example to window –params [size] –square :size –end
24
2005.02.08 - SLIDE 24IS146 - Spring 2005 LOGO Window Example to window –params [size] –repeat 4 [square :size] –end
25
2005.02.08 - SLIDE 25IS146 - Spring 2005 LOGO Window Example to window –params [size] –make squaresize (:size/2) –repeat 4 [square :squaresize] –end
26
2005.02.08 - SLIDE 26IS146 - Spring 2005 LOGO Square Example to square –params [size] –forward :size –right 90 –forward :size –right 90 –forward :size –right 90 –forward :size –end
27
2005.02.08 - SLIDE 27IS146 - Spring 2005 LOGO Square Example to square –params [size] –forward :size –right 90 –forward :size –right 90 –forward :size –right 90 –forward :size –end
28
2005.02.08 - SLIDE 28IS146 - Spring 2005 LOGO Square Example to square –params [size] –forward :size –right 90 –forward :size –right 90 –forward :size –right 90 –forward :size –end
29
2005.02.08 - SLIDE 29IS146 - Spring 2005 LOGO Square Example to square –params [size] –forward :size –right 90 –forward :size –right 90 –forward :size –right 90 –forward :size –end
30
2005.02.08 - SLIDE 30IS146 - Spring 2005 LOGO Polygon Example to poly –params [sides length] –repeat :sides [forward :length right (360/:sides)] –end
31
2005.02.08 - SLIDE 31IS146 - Spring 2005 LOGO Polywindow Example to polywindow –params [sides length] –make polyangle (360/:sides) –repeat (:sides*2) [poly :sides :length right (:polyangle-180)] –end
32
2005.02.08 - SLIDE 32IS146 - Spring 2005 Programming Concepts Modeling in computational language –Primitives –Means of combination –Means of abstraction Basic programming constructs –Parameters –Loops –Procedural abstraction –Subroutines –Conditionals
33
2005.02.08 - SLIDE 33IS146 - Spring 2005 Hector Jimenez on Hillis According to Hillis, most computational functions are based on and/or functions. To me, this appears to be far from the spectrum of logical possibilities. It is as if fundamentally they can only see in black and white, no shades of grey. Am I correct in this analogy? Has anyone tried to rethink this process or has the technology become too fundamental for all computers.
34
2005.02.08 - SLIDE 34IS146 - Spring 2005 Lecture Overview Assignment Check Ins –Assignment 2: Group Formation –Assignment 3: Documenting Artifact Usage Review of Last Time –Computation: History and Ideas Today –Computation: Programming Concepts Preview of Next Time –Computation: Programming Languages
35
2005.02.08 - SLIDE 35IS146 - Spring 2005 Reading for Thursday Seymour Papert. Mindstorms: Children, Computers, and Powerful Ideas, New York: Basic Books, Inc., 1980, p. 55-134. –Discussion Questions Trevor Newhouse
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.