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.

Slides:



Advertisements
Similar presentations
The Beauty and Joy of Computing Lecture #19 Higher Order Functions II Instructor: Sean Morris Twitter Can Tell Whether Your Community Is Happy or Not
Advertisements

Week 1 Part II Kyle Dewey. Overview Lab The art of programming Basic data types Variable declaration and initialization Data representation.
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.
CS10 The Beauty and Joy of Computing Lecture #7 Algorithmic Complexity One million Wi-Fi devices isn’t cool. You know what’s cool? A Billion.
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.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction At CES 2011 in Vegas, companies showed lots of tablets and internet TV.
CS10 The Beauty and Joy of Computing Lecture #5 : Programming Paradigms Intel has shown demos of the game Wolfenstein whose visual images weren’t.
CS3: Introduction to Symbolic Programming Spring 2006Nate Titterton Lecture 2: Introduction, and Conditionals.
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 #5 : Programming Paradigms Times like these make us all appreciate the value of freedom… China.
CS10: The Beauty and Joy of Computing Lecture #7: Algorithm Complexity TA Jon Kotker ( ) LEDs + Math = Art Leo Villareal combines modern LED control.
CS39N The Beauty and Joy of Computing Lecture #6 : Programming Paradigms In response to a 30,000+ signature petition, British PM Gordon Brown.
The Beauty and Joy of Computing Curriculum and the AP CS: Principles project Brian Harvey, UC Berkeley Dan Garcia, UC Berkeley Jens Mönig, MioSoft.
CS10 : The Beauty and Joy of Computing Lecture #10 Social Implications of Computing CS10 has been chosen as one of 30 courses (all across 10.
Grammars and Parsing. Sentence  Noun Verb Noun Noun  boys Noun  girls Noun  dogs Verb  like Verb  see Grammars Grammar: set of rules for generating.
The Beauty and Joy of Computing Lecture #25 Summary & Review Facebook’s purchase of Oculus Rift is one indication that this is an incredibly HOT potential.
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.
CSC 1701B Computing: Science and Creativity. Outline  Types  Variables  Operators  Control: sequence, selection, repetition  Functions (block headings.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Teaching is not just a process of imparting knowledge to an attentive child. Learning needs to be engaging, social and interactive. It is also vital that.
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.
Introduction to Python
The Beauty and Joy of Computing Lecture #5 Programming Paradigms Story details the move to Digital of many things precious to us – music, photos, videos.
UC Berkeley EECS Sr Lecturer SOE Dan Garcia printing-aims-to-prevent-a-piracy-plague/ Quest.
The Beauty and Joy of Computing Lecture #3 : Creativity & Abstraction UC Berkeley EECS Lecturer Gerald Friedland.
Major objective of this course is: Design and analysis of modern algorithms Different variants Accuracy Efficiency Comparing efficiencies Motivation thinking.
Games Development 2 Concurrent Programming CO3301 Week 9.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction The algorithm is rapidly taking over vital functions of businesses, from.
The Beauty and Joy of Computing Lecture #5 Programming Paradigms UC Berkeley EECS Sr Lecturer SOE Dan Garcia invent.citris-uc.org motherboard.vice.com/read/click-print-gun-the-inside-story-of-the-3d-printed-gun-movement-video.
The Beauty and Joy of Computing Lecture #6 Algorithms MIT researchers recently created an algorithm which they say will be able to predict what topics.
The Beauty and Joy of Computing Lecture #10 Social Implications of Computing Online education now has a player in the open access / free education space,
BEGINNING PROGRAMMING.  Literally – giving instructions to a computer so that it does what you want  Practically – using a programming language (such.
Rediscovering the Passion, Beauty, Joy, and Awe Making Computing Fun Again, pt Dallas, TX.
The Beauty and Joy of Computing Lecture #6 Algorithms I UC Berkeley EECS Sr Lecturer SOE Dan Garcia.
Introduction to Python Dr. José M. Reyes Álamo. 2 Three Rules of Programming Rule 1: Think before you program Rule 2: A program is a human-readable set.
CSC 1010 Programming for All Lecture 3 Useful Python Elements for Designing Programs Some material based on material from Marty Stepp, Instructor, University.
The Beauty and Joy of Computing Lecture #5 Programming Paradigms invent.citris-uc.org
Carnegie Mellon University © Robert T. Monroe Management Information Systems Cloud Computing I Cloud Models and Technologies Management.
The Beauty and Joy of Computing Lecture #17 Social Implications of Computing III Instructor: Sean Morris Online education now has a player in the open.
Fall 2008Programming Development Techniques 1 Topic 17 Assignment, Local State, and the Environment Model of Evaluation Section 3.1 & 3.2.
INVITATION TO Computer Science 1 11 Chapter 2 The Algorithmic Foundations of Computer Science.
The Beauty and Joy of Computing Lecture #7 Algorithms II minors-delete-activity/story?id= /
CMPSC 16 Problem Solving with Computers I Spring 2014 Instructor: Tevfik Bultan Lecture 4: Introduction to C: Control Flow.
The Beauty and Joy of Computing Lecture #12 Social Implications of Computing I Online education now has a player in the open access / free education space,
The Beauty and Joy of Computing Lecture #7 Algorithmic Complexity “Data scientists at Yahoo are using prediction markets – along with polls, sentiment.
The Beauty and Joy of Computing. UC Berkeley’s CS Breadth Course Designed to be non-intimidating to students in non-technical majors. But also designed.
UC Berkeley EECS Sr Lecturer SOE Dan Garcia printing-aims-to-prevent-a-piracy-plague/ Quest.
SCRATCH ScratchScratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share.
CS 104 – Fall 2011 Exploring Computer Science Build Your Own Blocks September 19, 2011.
CS61A Lecture 1 Introduction and Basics Tom Magrino and Jon Kotker UC Berkeley EECS June 18, 2012.
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.
UC Berkeley EECS Lecturer SOE Dan Garcia The success of Apple’s Siri (only available on the iPhone 4S) has sparked competition, to be sure. Google’s IRIS.
CS10 The Beauty and Joy of Computing Lecture #4 : Functions UC Berkeley EECS Lecturer SOE Dan Garcia Researchers at Microsoft and UW are working.
CS10 : The Beauty and Joy of Computing Lecture #5 Programming Paradigms If you visited google.com on Saturday, you saw a tribute to this founding.
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.
CS10 The Beauty and Joy of Computing Lecture #1 Welcome; Abstraction
Yahoo predicts contest already!
The Beauty and Joy of Computing Lecture #4 Functions
CMSC201 Computer Science I for Majors Lecture 11 – Program Design
Looping and Random Numbers
Algorithm Analysis CSE 2011 Winter September 2018.
Unit I Flash Cards Start.
Objective of This Course
Computational Thinking for KS3
Algorithm Discovery and Design
Intro to Algorithms in SNAP!
Internal components of a computer.
COMPUTING.
Lecture 6 - Recursion.
Presentation transcript:

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 at an intensity unheard of before. Privacy ramifications? #cs10news campaigns-digital-masterminds-cash-in.html?pagewanted=all The Beauty and Joy of Computing Lecture #3 : Functions Instructor: Sean Morris

UC Berkeley “The Beauty and Joy of Computing” : Functions (2) Garcia  Big Ideas of Programming  Abstraction  Algorithms (2)  Recursion (2)  Functions -as-data, λ (2)  Programming Paradigms  Concurrency  Distributed Computing  Beauty and Joy  “CS Unplugged” activities  Lab work in pairs  Two projects in pairs  Of your own choice!!  One blog  Of students’ own choice!!  Big Ideas of Computing  HowStuffWorks  3D Graphics  Video Games  Computational Game Theory  Research Summaries  AI  HCI  Apps that Changed the World  Social Implications of Computing  Saving the World with Computing  How Twitter Works  Cloud Computing  Future of Computing BJC in one slide

UC Berkeley “The Beauty and Joy of Computing” : Functions (3) Garcia  Define Functions (  Connected to Abstraction?)  Inputs and Output (Domain/Range)  Why Functions  Practical Example  The nuts and bolts of generalization  A method for solving large problems  See and work with BYOB Today

UC Berkeley “The Beauty and Joy of Computing” : Functions (4) Garcia  You are going to learn to write functions, like in math class: y = sin(x)  sin is the function  x is the input  It returns a single value, a number Generalization (in CS10) Review “Function machine” from Simply Scheme (Harvey) x sin

UC Berkeley “The Beauty and Joy of Computing” : Functions (5) Garcia Sean’s kid’s 2 nd grade HW!

UC Berkeley “The Beauty and Joy of Computing” : Functions (6) Garcia Function basics  Functions take in 0 or more inputs and return exactly 1 output  The same inputs MUST yield same outputs.  Output function of input only  Other rules of functions  No state (prior history)  No mutation (no variables get modified)  No side effects (nothing else happens) CS Illustrated function metaphor

UC Berkeley “The Beauty and Joy of Computing” : Functions (7) Garcia Which is NOT a function? a) b) c) d) e)

UC Berkeley “The Beauty and Joy of Computing” : Functions (8) Garcia Pair Action…  Function named: Calculate Potential Popularity of Movie  Input(s)  Output  What action might break one our rules for functions?

UC Berkeley “The Beauty and Joy of Computing” : Functions (9) Garcia  Domain  The “class” of input a function accepts  Examples  Sqrt of  Positive numbers  Length of  Sentence, word, number  _ < _  Both: Sentence, word, number  _ and _  Booleans  Letter _ of _  Number from 1 to input length  Sentence, word, number  Range  All the possible return values of a function  Examples  Sqrt of  Non-negative numbers  Length of  Non-negative integer  _ < _  Boolean (true or false)  _ and _  Boolean (true or false)  Letter _ of _  Letter(Character) More Terminology (from Math)

UC Berkeley “The Beauty and Joy of Computing” : Functions (10) Garcia Types of input (there are more) Sentences Word Character Digit Words separated by N spaces, N ≥ 0 E.g., CS 10 is great Length ≥ 1, no spaces Cal, 42, CS10 Length = 1 E.g., A, 3, # 0-9 only E.g., 7

UC Berkeley “The Beauty and Joy of Computing” : Functions (11) Garcia  If a function only depends on the information it gets as input, then nothing else can affect the output.  It can run on any computer and get the same answer.  This makes it incredibly easy to parallelize functions.  Functional programming is a great model for writing software that runs on multiple systems at the same time. Why functions are great! Datacenter

UC Berkeley “The Beauty and Joy of Computing” : Functions (12) Garcia  Scratch  MIT  Maintained by MIT  Huge community  Sharing via Website  No functions   Scratch 2.0 in Flash  No iOS devices.   scratch.mit.edu  BYOB (and S NAP ! )  Based on Scratch code  Maintained by jens & Cal  Growing community  No sharing (yet)   Functions! … “Blocks”  Snap! Is in HTML5  All devices  snap.berkeley.edu/run Scratch  BYOB (Build Your Own Blocks)

UC Berkeley “The Beauty and Joy of Computing” : Functions (13) Garcia Why use functions? (1) The power of generalization!

UC Berkeley “The Beauty and Joy of Computing” : Functions (14) Garcia Why use functions? (2) They can be composed together to make even more magnificent things. They are literally the building blocks of almost everything that we create when we program. We call the process of breaking big problems down into smaller tasks functional decomposition

UC Berkeley “The Beauty and Joy of Computing” : Functions (15) Garcia  Command  No outputs, meant for side-effects  Not a function…  Reporter (Function)  Any type of output  Predicate (Function)  Boolean output  (true or false) Types of Blocks

UC Berkeley “The Beauty and Joy of Computing” : Functions (16) Garcia Quick Preview: Recursion Recursion is a technique for defining functions that use themselves to complete their own definition. We will spend a lot of time on this. M. C. Escher : Drawing Hands

UC Berkeley “The Beauty and Joy of Computing” : Functions (17) Garcia  Computation is the evaluation of functions  Plugging pipes together  Each pipe, or function, has exactly 1 output  Functions can be input!  Features  No state  E.g., variable assignments  No mutation  E.g., changing variable values  No side effects  Need BYOB/Snap!, and not Scratch 1.x Functions Summary en.wikipedia.org/wiki/Functional_programming f(x)=(x+3)* x + x 3 * x f x