Professional Documents
Culture Documents
• Why Study CS
1
Why Study Computer Science?
• Variety of job titles
■ Software Engineer (Applications or System), System
Programmer, System Engineer, System Analyst/Programmer,
Database Administrator, Network Systems and Data
Communication Analyst, Network Programmer/Administrator,
Web Developer/Administrator, Computer Scientist, and
Information Technology Specialist.
2
Why Study Computer Science?
• Fast–growing IT jobs
■ According to the U.S Government Labor Department job statistics and
predications, the professional IT workforce is projected to add over a million new
jobs between 2004 and 2014, an increase of about 30 percent.
■ Money Magazine May 2006 : Software Engineer is the #1 best job and the
forecasted 10-year job growth is 46.07%.
■ CNNMoney.COM quotes an ACM study as saying that “Despite all the publicity in
the United States about jobs being lost to India and China, the size of the IT
employment market in the United States today is higher than it was at the height of
the dotcom boom.”
3
Projected Science & Engineering Job Openings
(new jobs plus net replacements, 2004-2014)
Engineers
81% 22%
Social Scientists
9%
Computer specialists
59%
Life scientists
4%
Physical scientists
4%
Mathematical scientists
US Bureau of Labor Statistics, November 2005 2%
http://w w w .bls.gov/opub/mlr/2005/11/art5full.pdf
4
Why Study Computer Science?
• Creativity
• Intellectual Challenge
• Programming is extremely challenging
• CS applied to other fields is a different intellectual challenge.
• Helping Others
• Produce artifacts which make people’s lives easier
• Flexibility
• Telecommuting, working at home, …
• Lifelong Learning
• Computer scientists must master a moving target.
5
Why computer science & engineering?
• Impact
• Advances in computing drive advances in all other fields
• Advances in computing power the economy
• Not just through the growth of the computing industry – through Multi
Factor Productivity Growth throughout the economy
6
Exponential progress
7
Exponential Growth makes many predictions look
foolish
8
Makes many predictions look foolish
• “Computers in the future may weigh no more than 1.5 tons” --
Popular Science, 1949
9
Makes many predictions look foolish
10
Makes many predictions look foolish
11
CS and Intellectual opportunity
• “… the software industry is going to make more
breakthroughs in these next 10 years than it's made in
the last 30 … software is really going to transform not
just what we think about as the computer industry, but
the way that everything is done …”
• B. Gates
CEO Microsoft
12
Intellectual opportunity
Harnessing
parallelism Transforming other fields
of science and engineering
Computer-enhanced A teacher
driving for every learner
Flattening Re-architecting
the world the Internet Transforming Entertainment
and art
13
Computer Science:
What can I do with this major?
• Arts
• Film reproduction
• Animation
• Computer Enhanced Graphics
• Art-based Games
• Business
• Model Forecasting
• Process Improvements
• Information Technology (IT)
• Business Infrastructure (Network/Communications)
• Help Desk/Application Support
14
Computer Science:
What can I do with this major?
• Commercial
• Custom PC Engineer (gaming/media station/graphics
workstations)
• Equity Theory (stock trader)
• SOHO IT (small office/home office)
• Software Developer
• Web Developer
15
Computer Science:
What can I do with this major?
• Health Research
• Improved web-based support for trauma recovery
• Software for assessing and coping with Mental Impairment
• Clinically relevant Compression for Improved tele radiology
• Vascular Modeling for blood flow
• 4D Heart modeling with MRI etc
16
Computer Science:
What can I do with this major?
• Security
• Network Intrusion/Denial of Service/Malacious Attacks
• Biometrics (face recognition/iris scans/fingerprint)
• Forensics (identification/cause of death/age-progression)
• Telecommunications
• Call Center
• Mobile Devices/Instant Messaging
• VoIP (Voice Over IP)
• File sharing (Lime Wire/Napster…)
• POD Casting/Video Streaming
17
• CS Overview
18
Computing Systems
19
Computer Hardware
• CPU
• Central Processing Unit
• Processor + ALU(Arithmetic logic unit)
• Internal Memory
• Read-only Memory(ROM)
• Random-access Memory(RAM)
• External Memory
• Hard-disk
• Removable Media (Floppy/DVD/Flash Stick)
20
Internal organization of a
computer
21
Types of computer
• Personal Computer(PCs)
• small inexpensive computers
• commonly used in offices, homes, and laboratories
• Microcomputer
• Workstation
• minicomputer or mainframe computer
• small enough to fit on a desktop
• Super computer
• the fastest computer
22
COMPUTER SOFTWARE
23
Operating System
24
Software tools
• word processor (Microsoft word,…)
25
Executing a Computer Program
1. Compiling
• source program
• object program
2. Linking and Loading
3. Executing
4. Debugging
26
• Compiling:
• Translate high-level language into machine language
• source program: the original program written in high-level
language such as C++
• object program: the machine language version of source
program
27
• Debugging
• a process to correct errors(often called bugs) in a
program
• compile-time error: syntactic errors
• run-time error: logic errors
28
Software Life-Cycle Phases
(assuming problem is already identified)
Definition 3
Specification 15
Coding and modular testing 14
Integration and testing 8
Maintenance 60
29