Title: Introduction to Computer Science
1Introduction to Computer Science
- Raj Bhatnagar
- Department of Computer Science
- University of Cincinnati
2Administrivia
- Lecture 1-150, M,W 860D (Raj Bhatnagar)
- Lab 2-250 M,W 860D (Raj and TA)
- Office Hours M,W 11-12 (Rajs Office 835
Rhodes) - Lectures Focus What is CS Problems CS seeks
to solve - Lab Focus Some programming exercises in MATLAB
- Evaluation Programs in Labs 30
- Quizzes/Tests/ 30
- HW 25
- Final Exam 15
3- What is Computer Science About?
4What is Computer Science About?
- "Nobody is going to run 100 meters in five
seconds, no matter how much is invested in
training and machines. The same can be said about
using the brain. The human mind is no different
now from what it was five thousand years ago. And
when it comes to mathematics, you must realize
that this is the human mind at an extreme limit
of its capacity." --Herbert Robbins,
Mathematician
Technology and Innovation Technology and Innovation
For Traveling from A to B
For Problem Solving, Reasoning, Mathematical Thinking, Calculating, and everything that a brain does
As Commented by Edgar J. Dijkstra, (A well known
CS Professor)
5What is CS?
- Computer Science is no more about computers than
astronomy is about telescopes. - - E. Dijkstra
6What is CS?
- Computer Science is a science of abstraction
-creating the right model for a problem and
devising the appropriate mechanizable techniques
to solve it. - - A. Aho and J. Ullman
7What is CS?
- Understand how a human solves a problem/puzzle
- Chess, Sudoku, image understanding, . . .
- Write a Recipe a sequence of instructions on
how to solve the problem - Encode the instructions
- so that a computer can follow them
8Computer Science Major Tasks
- How to Achieve the following
- Represent Knowledge in electronic machines
- Represent Models of problem solutions
- Perform Reasoning
- Communicate and collaborate with
- Humans
- Other Computers
- Transfer information to long distances
9What is Computer Science?
- What do CS graduates jobs look like?
- Make computers solve interesting problems
(Applications?) - Most efficiently, effectively
- Design computers (Software Hardware Design)
- To solve difficult problems
- To integrate with business, sciences, arts,
entertainment, and our everyday life - To communicate with humans and with each other
10Various Types of Software
- Software to control Computers
- Device Drivers
- Written in Assembler language
- Every Hardware device needs it
- Phones
- PDAs
- iPODs
- Must be very efficient
- Must know hardware and software very well
11Various Types of Software
- Master Control Program
- Central Nervous System
- Controls all devices
- Talks to applications, users, devices, network
- Windows, Linux, OS2, etc.
- Written in lower level (Assembler) or kind of
mid-level (C) languages - Need to know about hardware and software
12Various Types of Software
- On top of the Operating System Layer
- File Editors /Compilers/Development Tools
- Database Software
- Document Editors
- File System Managers
- Communication Software
- Security/Firewall programs
- Mail readers / Web Browsers
13Various Types of Software
- Control Communication Among Computers
- Networking protocols
- wireless communications
- internet communications
- large scale file systems on internet (music,
movie archives)
14Various Types of Software
- Application Software Every aspect of society
- Banking, finance, investments
- Engineering, science, biology, genetics
- Architecture, design, art
- Music, computer games, animation movies
- Education, on-line tutorials
- Retail, airlines, supply chain management
- Manufacturing control and planning
- No domain is untouched!
- No aspect of life is untouched
15Fastest Growing Professions - BLS
16Job Market Projections by BLS
1 million new jobs by 2014
17CS(BS) Salaries - 2006
UC Graduates in CS (BS) 2006 Out of 16 Graduates
(14 responded to the survey) 5 - Continuing for
Graduate Degrees 9 Entered Job Market Avg.
Salary 76,000 Max. Salary 140,000 Min.
Salary 48000
National Trends - 2006