CSC 1701B Computing: Science and Creativity https://sites.google.com/site/csc170spring15/

Slides:



Advertisements
Similar presentations
COMPSCI 105 S Principles of Computer Science 12 Abstract Data Type.
Advertisements

DECISION SUPPORT SYSTEM ARCHITECTURE: THE MODEL COMPONENT.
The Beauty and Joy of Computing Lecture #18 Higher Order Functions I Instructor: Sean Morris
The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction Instructor : Sean Morris Watch the student testimonials about the course, what it means.
What does that mean? And, Is it the best way to live?
The Beauty and Joy of Computing Lecture #18 Besides Blocks I: Intro to Python Amazon Dash is Not an April Fools Joke UC Berkeley EECS Head TA Michael Ball.
Your experience ‘Some concepts are very difficult to understand…’ ‘Some ideas are too complex…’ ‘I find it difficult to make sense of what is presented…’
Presenter : Shih-Tung Huang Tsung-Cheng Lin Kuan-Fu Kuo 2015/6/15 EICE team Model-Level Debugging of Embedded Real-Time Systems Wolfgang Haberl, Markus.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction At CES 2011 in Vegas, companies showed lots of tablets and internet TV.
CSC 160 Computer Programming for Non-Majors Draft Chapter: The UFO Example Prof. Adam M. Wittenstein
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction Watch the student testimonials about CS10, what it means to them, and how.
CS10 The Beauty and Joy of Computing Lecture #17 Higher Order Functions I Silicon (normally what processors are made of) is rigid and expensive,
CS39N The Beauty and Joy of Computing Lecture #6 : Programming Paradigms In response to a 30,000+ signature petition, British PM Gordon Brown.
Introducing Computer Science in the Classroom
Computer-Aided Drawing (CAD)
1 Joe Meehean. 2 Testing is the process of executing a program with the intent of finding errors. -Glenford Myers.
The Beauty and Joy of Computing Lecture #6 Algorithms Alan Turing ( ) would have turned 100 this year. He was a brilliant British mathematician.
CS61A Lecture 2 Functions and Applicative Model of Computation Tom Magrino and Jon Kotker UC Berkeley EECS June 19, 2012.
Goodbye, world! CSE Major themes Abstraction –Leverage existing components without understanding details –Create components that can be used as.
The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction Watch the student testimonials about the course, what it means to them, and how it has.
Essence and Accident in Software Engineering By: Mike Hastings.
Early Design Process Brent M. Dingle, Ph.D Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin.
1 Chapter No 3 ICT IN Science,Maths,Modeling, Simulation.
The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction Watch the student testimonials about the course, what it means to them, and how it has.
The Beauty and Joy of Computing Lecture #3 : Creativity & Abstraction UC Berkeley EECS Lecturer Gerald Friedland.
Computer Science II 810:062 Section 01. How is CS I different from CS II? When you teach Java there are a series of decisions that have to be made…
Within our time at Latrobe we had the opportunity of an interview with Dr Christopher Adda, a scientist indevelopment of a malaria vaccine antigen. With.
The role of data mining in the last presidential election. A mind-blowing piece on how the Obama campaign used various sources of data to target voters.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction The algorithm is rapidly taking over vital functions of businesses, from.
What did I take from the research in AMT to the research in Computer Science and Software Engineering Education? Orit Hazzan Department of Education on.
Naturalistic Decision Making. What is decision making? Given some set of options, pick one. How is it studied? –Give people sets of options, let them.
Models in Science SWBAT describe various types of models; discuss limitations of models.
Milwaukee, WI Rediscovering the Passion, Beauty, Joy, and Awe Making Computing Fun Again, pt 3.
I'll give you time to fill out evals at the end. Please wait until I'm out of the room! Goodbye, world!
I'll give you time to fill out evals at the end. Please wait until I'm out of the room! Goodbye, world!
NEW CHAPTER Circuits and Electronics CHAPTER the BIG idea Circuits control the flow of electric charge. Charge needs a continuous path to flow. Circuits.
Rediscovering the Passion, Beauty, Joy, and Awe Making Computing Fun Again, pt Dallas, TX.
INTRODUCTION GORT is a virtual 3D modeling environment for computer programmers. Its main area of focus is to aid in the education of programmers learning.
Selected Responses How deep does the question dig?????
WHAT IS COMPUTER SCIENCE? Phil Sands K-12 Outreach Coordinator for Computer Science.
2a – Object Oriented Lingma Acheson Department of Computer and Information Science, IUPUI CSCI N331 VB.NET Programming.
International Baccalaureate
ANU COMP2110 Software Design in 2003 Lecture 10Slide 1 COMP2110 Software Design in 2004 Lecture 12 Documenting Detailed Design How to write down detailed.
1. Mr. Henry Ford, what would today’s student need to know in order for them to be successful in organizing an assembly line? 2. Mr. Henry Ford, what.
(c) University of Washington02-1 CSC 143 Java Object and Class Relationships: Interfaces Reading: Ch. 9 (on Java interfaces)
Goodbye, world!. 2 Major themes Abstraction Leverage existing components without understanding details Create components that can be used as black boxes.
The Beauty and Joy of Computing Lecture #5 A Computer Science Research Field: Multimedia Computing
Lecture VIII: Software Architecture
Topic 2 Collections. 2-2 Objectives Define the concepts and terminology related to collections Discuss the abstract design of collections.
Computational Thinking
 Creative  Abstract  Algorithm  Programming  Data  Internet  Impact.
UC Berkeley EECS Sr Lecturer SOE Dan Garcia printing-aims-to-prevent-a-piracy-plague/ Quest.
Lesson 3.1 Review: audible tri-tone Write a snap script that… Asks the user to enter 3 numbers corresponding to tone values Checks for valid inputs and.
In this lecture What is Programming? A useful definition Object Orientation (and it’s counterparts) Thinking OO Programming Blocks – Variables – Logic.
The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction Watch the student testimonials about the course, what it means to them, and how it has.
The following principles must be kept in mind while formulating models.  PRINCIPLE OF SIMPLICITY Mathematicians are of the habit of making complex models.
UC Berkeley EECS Sr Lecturer SOE Dan Garcia Valve (video game makers of Half-Life) believes the future of video games may not be in the input device (ala.
An introduction to abstraction: Guess What? The national curriculum for computing leaves abstraction until key stage 3, although it is part of the overarching.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction
Week 3 - Wednesday CS 113.
7 Big Ideas of Computing:
Demystifying Programming
PRINCIPALES OF OBJECT ORIENTED PROGRAMMING
Introduction to Problem Solving and Programming CS140: Introduction to Computing 1 8/19/13.
An introduction to abstraction: Guess What?
Vertical Farm Vocabulary
Abstraction and Hierarchy
Workshop for Programming And Systems Management Teachers
Semantic Nets and Frames
Presentation transcript:

CSC 1701B Computing: Science and Creativity

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (2) FriedlandMercer  Abstraction: a technique for managing complexity of computer systems  Establish a level of complexity on which a person interacts with the system Suppress the more complex details below the current level. Abstraction in General Henri Matisse “Naked Blue IV”

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (3) FriedlandMercer  Abstraction: a technique for managing complexity of computer systems  Establish a level of complexity on which a person interacts with the system Suppress the more complex details below the current level. Abstraction in Computing Henri Matisse “Naked Blue IV”

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (4) FriedlandMercer  Generalization: The process of formulating general concepts by abstracting common properties of instances” Abstraction Henri Matisse “Naked Blue IV”

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (5) FriedlandMercer Detail Removal Automatic Generation of Detail Maps Maneesh Agrawala (UCB EECS), among others

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (6) FriedlandMercer  You’ll want to write a project to simulate a real- world situation, or play a game, or …  Abstraction is the idea that you focus on the essence, the cleanest way to map the messy real world to one you can build  Experts are often brought in to know what to remove and what to keep! Detail Removal (in BJC) The London Underground 1928 Map & the 1933 map by Harry Beck.

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (7) FriedlandMercer  You have a farm with many animal kinds.  Different food for each  You have directions that say  To feed dog, put dog food in dog dish  To feed chicken, put chicken food in chicken dish  To feed rabbit, put rabbit food in rabbit dish  Etc…  How could you do better?  To feed, put food in dish Generalization Example

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (8) FriedlandMercer  You are going to learn to write functions, like in math class: y = sqrt(x)  x is the argument Generalization in code sqrt

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (9) FriedlandMercer  Examples:  Functions, e.g., sqrt(x)  Hiring contractors  Application Programming Interfaces (APIs)  Technology (e.g., cars)  Amazing things are built when these layer  And the abstraction layers are getting deeper by the day! The Power of Abstraction, everywhere! Abstraction Barrier (Interface) (the interface, or specification, or contract) Below the abstraction line This is where / how / when / by whom it is actually built, which is done according to the interface, specification, or contract. We only need to worry about the interface, or specification, or contract NOT how (or by whom) it’s built Above the abstraction line

UC Berkeley “The Beauty and Joy of Computing” : Programming Paradigms (10) FriedlandMercer  Abstraction is one of the big ideas of computing and computational thinking  Think about driving. How many of you know how a car works? How many can drive a car? Abstraction! Summary Someone who drove in 1930 could still drive a car today because they’ve kept the same Abstraction! (right pedal faster, left pedal slow)