Computer Science 1000 Introduction. What is Computer Science? the study of computers? not quite rather, computers provide a tool for which to carry out.

Slides:



Advertisements
Similar presentations
Chapter 1—Introduction Introduction C H A P T E R 1 [The Analytical Engine offers] a new, a vast, and a powerful language... for the purposes of mankind.
Advertisements

Artificial Intelligence
Computer Science It’s more than programming Eric Lantz.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
Introduction to Computer Science CS 21a: Introduction to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
Chapter Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing Describe.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
CSCI 3 Introduction to Computer Science. CSCI 3 Course Description: –An overview of the fundamentals of computer science. Topics covered include number.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
CMPT 120 Introduction to Computer Science and Programming I Chris Schmidt.
©TheMcGraw-Hill Companies, Inc. Permission required for reproduction or display. COMPSCI 125 Introduction to Computer Science I.
Outline Chapter 1 Hardware, Software, Programming, Web surfing, … Chapter Goals –Describe the layers of a computer system –Describe the concept.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
Course: Introduction to Computers
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
CS190/295 Programming in Python for Life Sciences: Lecture 1 Instructor: Xiaohui Xie University of California, Irvine.
Computer Programming My Home Page My Paper Job Description Computer programmers write, test, and maintain the detailed instructions, called programs,
Chapter 01 Nell Dale & John Lewis.
Introduction to Programming G50PRO University of Nottingham Unit 1 : Introduction Paul Tennent
Chapter Introduction to Computers and Programming 1.
CHAPTER 4: INTRODUCTION TO COMPUTER ORGANIZATION AND PROGRAMMING DESIGN Lec. Ghader Kurdi.
Introduction to Computer and Programming CS-101 Lecture 6 By : Lecturer : Omer Salih Dawood Department of Computer Science College of Arts and Science.
1 Lecture 2 : Computer System and Programming. Computer? a programmable machine that  Receives input  Stores and manipulates data  Provides output.
CS 21a: Intro to Computing I Department of Information Systems and Computer Science Ateneo de Manila University.
1 CSC 1401 S1 Computer Programming I Hamid Harroud School of Science and Engineering, Akhawayn University
CS 0004 –Lecture 1 Wednesday, Jan 5 th, 2011 Roxana Gheorghiu.
Computer Science 1000 Terminology. The Language of Computer Science field is notorious for cryptic terms WYSIWYG GPU flops even recognizable terms may.
Madiha Liaqat Lecturer, UET, Taxila Programming Fundamentals.
An Introduction to Programming and Object-Oriented Design Using Java By Jaime Niño and Fred Hosch Slides by Darwin Baines and Robert Burton.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming 1.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 1: Introduction to Computers and Programming.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Introduction to Programming Peggy Batchelor.
Chapter 1 The Big Picture.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Computer Parts. Two Basic Parts Hardware & Software.
Lecture on Computer Science as a Discipline. 2 Computer “Science” some people argue that computer science is not a science in the same sense that biology.
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
Areas of Computing Study. Artificial Intelligence Databases and Data Science Human-Centered Computing Networking Information Security System Software.
Chapter 1 The Big Picture Chapter Goals Describe the layers of a computer system Describe the concept of abstraction and its relationship to computing.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
CSE 102 Introduction to Computer Engineering What is Computer Engineering?
CS 127 Introduction to Computer Science. What is a computer?  “A machine that stores and manipulates information under the control of a changeable program”
INTRO TO COMPUTING. Looking Inside Computer 2Computing 2 | Lecture-1 Capabilities Can Read Can Write Can Store A/L Operations Automation.
The Computer System CS 103: Computers and Application Software.
Computer Programming CONTENTS Introduction to Operating Systems Introduction to programming languages Introduction to perl programming language Programming.
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Chapter 4 Software. Introduction Program: is a set of sequence instructions that tell the computer what to do. Software: is a collection of programs,
Onlinedeeneislam.blogspot.com1 Design and Analysis of Algorithms Slide # 1 Download From
Software. Introduction n A computer can’t do anything without a program of instructions. n A program is a set of instructions a computer carries out.
Introductory Lecture. What is Discrete Mathematics? Discrete mathematics is the part of mathematics devoted to the study of discrete (as opposed to continuous)
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
Computer Architecture Organization and Architecture
Sub-fields of computer science. Sub-fields of computer science.
Java Programming: From the Ground Up
CSCI-235 Micro-Computer Applications
DDC 1023 – Programming Technique
System Programming and administration
Computer System and Programming
Course: Introduction to Computers
CS 21a: Intro to Computing I
Introduction CSE 1310 – Introduction to Computers and Programming
Discrete Mathematics and Its Applications
Course Instructor: knza ch
15-110: Principles of Computing
CompSci 1: Principles of Computer Science Lecture 1 Course Overview
Presentation transcript:

Computer Science 1000 Introduction

What is Computer Science? the study of computers? not quite rather, computers provide a tool for which to carry out (some) computer science and its applications "Computer Science is no more about computers than astronomy is about telescopes." – E. Dijkstra* * Also attributed to Michael Fellows

What is Computer Science? programming? better, but still not quite there is much more to computer science than simply programming many in the computer science field do not program theorists interaction researchers

What is Computer Science? difficult to state precisely the scientific and practical approach to computation and its applications – Wikipedia in other words, the critical component is the computation, not the computer

What is Computer Science? much of the discipline does not involve computers at all Ex #1: computational geometry study of algorithms (processes) for solving geometric problems often never implemented – sufficient to show that it can be computed within a certain time bound

What is Computer Science? much of the discipline does not involve computers at all Ex #2: quantum computing research into designing programs to run on quantum machines many examples exist (e.g. Deutsch-Jozsa) no practical quantum computers exist* *

Computer Science often divided into two categories: theoretical computer science the "theory" of computation often considers more abstract concepts applied computer science the application of computers and computational theory deals in the tangible

Theoretical Computer Science example: convex hull problem given a set of points, find a set of points that "contains" all of the other points goal of theorists is to find efficient methods for doing this applications include GIS, games (collision detection), etc For a more rigorous definition, see:

Applied Computer Science example: chess design a computer program that can play competitive chess interesting history: Herbert Simon predicted that a computer would be chess' world champion in less than a decade that was 1957 so when did it happen?

Applied Computer Science Answer: 1997! vs "Deep Blue" (IBM) Garry Kasparov

The Many Faces of Computer Science computer science encompasses a broad range of topics many of these topics are the subject of intense research we consider a few examples here

Topic #1: Programming (of course) The science (art) of constructing a program to achieve a specific goal That is, for every program you have on your PC/laptop/phone, a programmer (team of programmers) had to design and implement that program

Computer Program A sequence of instructions designed to perform a specific task, or collection of tasks Eg. Microsoft Word Monitors keyboard input, displays it on the screen Formats input for more readable presentation Spellchecks your work Prints your work Saves your work ….

Programming How do you make a computer into a word processor/internet browser/gaming console? You give it step-by-step instructions Each instruction is performed by the processor Your computer is like a good assistant, willing to perform any task that you ask However, you must learn to speak its language

Example Suppose we wish to perform the following calculation: how do we program our computer to make this calculation? ( ) x 56

Machine Code the language of your processor each line represents an instruction to be executed place value "17" in memory location 1 place value "29" in memory location 2 add values in loc. 1 and 2, place in loc. 3 place value "56" in memory location 4 multiply values in loc. 3 and 4, place in loc. 5 the solution to the problem is in memory location 5

High-Level Programming Language e.g. C++, Java, Python offers a more natural language for programming commands are much less tightly coupled to the instructions of the processor cout << ( ) * 56;

HL Code to Machine Code processor does not understand high-level code a separate program called a compiler translates the code to machine code (17+29) * 56; Compiler

Topic #2: Artificial Intelligence a branch of computer science dealing with the simulation of intelligent behavior in computer - Merriam Webster examples game-playing agents (Deep Blue) robotic controllers (RoboCup) automated medical diagnosis pattern recognition simulating human behaviour (Turing Test) etc...

Topic #3: Computer Networking Networking allows information from one computer to be transferred to another computer

This simple act has given us: The World Wide Web Facebook Twitter Instagram Wikipedia P2P File Sharing Connectivity Skype Facetime

The History of the Internet Today: Internet has over 2.4 billion users 78% of North Americans use internet people of all ages Internet has over 900 million hosts Challenges faced: addressing (DNS) scalability security bandwidth

Many other topics: hardware and architecture database programming graphics and games human-computer interaction privacy and security

What makes Computer Science unique? it is young first general purpose computer: 1946 (ENIAC) phrase "computer science" coined: late 50's consider your other university science topics: mathematics: ~5000 years* chemistry:~3000 years* economics: ~240 years*

What makes Computer Science unique? it is dynamic My current computer (2013) 3.4 GHz processor (4 cores) 8 GB RAM 2 TB HD 3 flat screen monitors high-speed internet (time to download a song: 5-10 seconds) $800 My first computer (1997) 200 MHz processor (single core) 32 MB RAM 3.1 GB HD 15 inch CRT monitor 28.8K bps (time to download a song: 19 minutes) $4000

What makes Computer Science unique? it is accessible consider what it takes to be an experimental physicist? expensive equipment a laboratory what about a computer programmer? a computer many programming tools are freely available