91.100 Media Computing Instructor Byung Kim Olsen 231 Office hours – MWF 9:00-10:00 AM or by appointment.

Slides:



Advertisements
Similar presentations
Foundations of Programming and Problem Solving Introduction.
Advertisements

CS 102 Computers In Context (Multimedia) 01 / 21 / 2009 Instructor: Michael Eckmann.
Chapter 1 - An Introduction to Computers and Problem Solving
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
CMPT 120 Introduction to Computer Science and Programming I Chris Schmidt.
CS211 Data Structures Sami Rollins Fall 2004.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
Programming Introduction November 9 Unit 7. What is Programming? Besides being a huge industry? Programming is the process used to write computer programs.
CS 153: Concepts of Compiler Design August 25 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Computer Science - I Course Introduction Computer Science Department Boston College Hao Jiang.
ECS15: Introduction to Computers Fall 2013 Patrice Koehl
Computer Science 101 Introduction to Programming.
CS102 Introduction to Computer Programming
CS 111 Introduction to Computing Introduction: Why study computer science at all?!? Developed by Mark Guzdial, Georgia Institute of Technology, 2003–2004;
 A set of objectives or student learning outcomes for a course or a set of courses.  Specifies the set of concepts and skills that the student must.
Introduction to Python Dr. Bernard Chen Ph.D. University of Central Arkansas July 9 th 2012
Ch 1. Introduction Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2012.
CSCI 1301 Principles of Computer Science I
Introduction CSE 1310 – Introduction to Computers and Programming
Noadswood Science,  Information Wednesday, September 09, 2015.
Computer Jobs 2014 Bob Nielson. Average Wage The average wages of all jobs in America >>>> $45,790 > $80,180.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 2 INTRODUCTION TO SOFTWARE DEVELOPMENT: PROGRAMMING & LANGUAGES.
Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. 1 Chapter 1 Introduction to Computer Science.
1 TOPIC 1 INTRODUCTION TO COMPUTER SCIENCE AND PROGRAMMING Topic 1 Introduction to Computer Science and Programming Notes adapted from Introduction to.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
CS 106 Introduction to Computer Science I 01 / 25 / 2010 Instructor: Michael Eckmann.
CS 102 Computers In Context (Multimedia)‏ 01 / 23 / 2009 Instructor: Michael Eckmann.
Introduction to Programming Peggy Batchelor.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Programming Concept Chapter I Introduction to Java Programming.
Week 1 - Friday.  What did we talk about last time?  Our first Java program.
Ch 1. A Python Q&A Session Spring Why do people use Python? Software quality Developer productivity Program portability Support libraries Component.
Input & Output In Java. Input & Output It is very complicated for a computer to show how information is processed. Although a computer is very good at.
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
“Introduction to Media Computation” A New Core Area B Course Mark Guzdial, 18 July 2002.
CPSC 121: Models of Computation Unit 0 Introduction George Tsiknis Based on slides by Patrice Belleville and Steve Wolfman.
Introduction to Computer Science II CSE1030Z 1. Your Instructor 2  Dr. Burton Ma  office  CSEB 1012J (near Gillian Moore's office)  hours : 2:30–4:00.
Chapter 1: Introduction to Computer Science and Media Computation.
 Instructor: Dr. Jason Nichols –  Office Hours: – 9:30-10:30 M/W/F or by appointment – Business Building.
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
Engineering H192 - Computer Programming Gateway Engineering Education Coalition Lect 3P. 1Winter Quarter Structured Engineering Problem Solving and Logic.
1 TOPIC 1 INTRODUCTION TO COMPUTER SCIENCE AND PROGRAMMING Topic 1 Introduction to Computer Science and Programming Notes adapted from Introduction to.
CS1315 Introduction to Media Computation Introduction: Why study computer science at all?!?
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Think First, Code Second Understand the problem Work out step by step procedure for solving the problem (algorithm) top down design and stepwise refinement.
Computer Science A 1. Course plan Introduction to programming Basic concepts of typical programming languages. Tools: compiler, editor, integrated editor,
CS 177 Recitation Week 1 – Intro to Java. Questions?
ITP 109 Week 2 Trina Gregory Introduction to Java.
CS1315: Introduction to Media Computation Introduction to Course & Administrivia.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Introduction to Computer Science What is Computer Science? Getting Started Programming.
Chapter 1: Introduction to Computer Science and Media Computation.
CSC 241: Introduction to Computer Science I
CMPT 201 Computer Science II for Engineers
Lecture 1b- Introduction
Chapter 1: Introduction to Computer Science and Media Computation
GC101 Introduction to computers and programs
CS1315 Introduction to Media Computation
Introduction CSE 1310 – Introduction to Computers and Programming
Chapter 1: Introduction to Computer Science and Media Computation
CS1315 Introduction to Media Computation
Introduction to Computers and Python
Computer Programming 1 introduction to JAVA Lecture 1 Instructor: Ruba A. Salamah Islamic University of Gaza.
CS 0007 Spring Lory Al Moakar.
CSIS110 - Introduction to Computer Science
Introduction to Computer Science I.
CS Problem Solving and Object Oriented Programming Spring 2019
CSC 241: Introduction to Computer Science I
CSIS110 - Introduction to Computer Science
Chapter 1: Introduction to Computer Science and Media Computation
Presentation transcript:

Media Computing Instructor Byung Kim Olsen 231 Office hours – MWF 9:00-10:00 AM or by appointment

Class website This is where you’ll find everything about the class  Syllabus  Homeworks/Projects/Labs  Announcements (You are responsible for these!!)

Course Objectives A general introduction to computer science, programming (coding), and problem solving Not about how to use MS Word, Photoshop, etc. You DO computer programming Open up to a wide variety of CS concepts/topics

Course Objectives In this course, you DO computer programming DO computer programming with immediate feedback Turtles Pictures etc.

Course Grading Program assignments and Projects (40%) Hands-on programming labs Quizzes (30%) In-class work (Labs) and other assignments (30%)

What is Computer Science ? Problem solving to what computers can understand It’s about communications and process Like writing a cooking recipe (algorithm) or solving a puzzle Media Computation: Why digitize media?  How can it possibly work?

Terminology Problem solving – a high-level strategy how do we think through problems can we develop instructions (strategies) to solve problems Programming – mechanical coding of the strategy how do we tell computers how to solve problems how can we express our ideas to computers

Example: Counting Dots

Another Strategy?

Picture Example I have a Santa picture

Picture Example I have a Santa picture And, I want its negative

 Articulation  Simplification  Generalization

Example Compute the class average Initialize total to zero Initialize counter to zero Input the first grade while the user has not as yet entered the sentinel add this grade into the running total add one to the grade counter input the next grade (possibly the sentinel) if the counter is not equal to zero set the average to the total divided by the counter print the average else print 'no grades were entered'

Example Compute the class average total = 0 counter = 0 while grades[counter] >=0: total = total + grades[counter] counter = counter+1 if counter > 0: average = total/counter print average else: print 'no grades were entered'

Course Objectives Able to read, understand, modify, and assemble programs that achieve useful communication tasks: Text manipulation, Image manipulation Learn what computer science is about, especially data representations, algorithms, encodings, forms of programming. Learn to articulate a process

Textbook Bryson Payne “Teach Your Kids to Code,” 2015, No Starch Press Reference Allen B. Downey tml tml Why Python ? Easy to learn Flexible Popular – used for Google web search engine Not very efficient   It’s used by companies like Google, Industrial Light & Magic, Nextel, and others

Other Programming Languages Python C Java Scheme def hello(): print “Hello World!” #include void main(){ printf”Hello World !\n”); } class HelloWorld { static public void main(String args[]){ System.out.println(“Hello World !”); } (define helloworld (lambda () (display “Hello World !”) (newline)))

What is Computer Science about ? Computer science is the study of recipes (algorithms) Computer scientists study…  How the recipes are written (algorithms, software engineering)  The units used in the recipes (data structures, databases)  What can recipes be written for (systems, intelligent systems, theory)  How well the recipes work (human-computer interfaces)

Key concept: The COMPUTER does the recipe! Make it as hard, tedious, complex as you want! Crank through a million genomes? No problem! Find one person in a 30,000 campus? Yawn! Process a million dots on the screen or a bazillion sound samples?  That’s media computation

Specialized Recipes Some people specialize in crepes or barbeque Computer scientists can also specialize on special kinds of recipes  Recipes that create pictures, sounds, movies, animations (graphics, computer music) Still others look at emergent properties of computer “recipes”  What happens when lots of recipes talk to one another (networking, non-linear systems)

A Recipe is a Statement of Process A recipe defines how something is done  In a programming language that defines how the recipe is written When you learn the recipe that implements a Photoshop filter, you learn how Photoshop does what it does. And that is powerful.

Finally: Programming is about Communicating Process A program is the most concise statement possible to communicate a process  That’s why it’s important to scientists and others who want to specify how to do something understandably in as few words as possible

What takes to code ? Capability of manipulating a computer Need to understand what tools there are Need to have a clear goal (objective) Need to specify steps to achieve the goal Recognize Mental Differences