introduction to computer programmingcis110/14su/lectures/00...moore computer labs dr. java software...
TRANSCRIPT
CIS 110
Introduction to
Computer Programming
Arvind Bhusnurmath
www.cis110.com
What is Computing?
Computing: internet, e- ail, et ork…
Co puti g: Produ ti ity…
http://www.alanzeyes.com/2009/02/hdr-photography.html
Co puti g: E tertai e t…
Computing: E tertai e t…
- Edsger Dijkstra
Cutting Edge Computer Science
Chinook
• Chinook is the World Man-Machine Checkers
Champion, developed by researchers at the University
of Alberta.
• It earned this title by competing in human
tournaments, winning the right to play for the
(human) world championship, and eventually
defeating the best players in the world.
• Visit http://www.cs.ualberta.ca/~chinook/ to play a
version of Chinook over the Internet.
• The developers have fully analyzed the game of
checkers and have the complete game tree for it.
– Perfect play on both sides results in a tie.
• O e Ju p Ahead: Challe gi g Hu a “upre a y i Che kers Jo atha “ haeffer, U i ersity of Al erta (496 pages, Springer. $34.95, 1998).
Autonomous Cars
Pe ’s Auto o ous Car
(Ben Franklin Racing Team)
• Nevada made it legal for autonomous cars to drive on roads in June 2011
• Audi autonomous car
• As of the end of 2012, two more US States (California, Florida) have enacted similar laws
2011 Jeopardy!
• In February 2011, IBM Watson bested Brad Rutter (biggest all-
time money winner) and Ken Jennings (longest winning streak)
• IBM is urre tly applyi g Watso ’s te h ology to edi al diagnosis and legal research
Robot Soccer
UPennalizers Robot Soccer Team
Humanoid League
Aibo League
RoboCup International Robotics Competition
http://www.robocup.org/
Finding Life-Supporting Planets
Protobytes
By Ira Greenberg
http://www.iragreenberg.com/ira_greenberg_data/code/protobytes/i
ndex.html
Areas in Computer Science
Computer
Graphics
Computer
Vision
Computer
Security
Artificial
Intelligence
Robotics Human-Computer
Interaction
Ubiquitous
Computing
Operating
Systems
Computer
Networking
Databases
What is Computer Science?
Computer science is the
study of solving problems
using computation – Computers are part of it,
but the emphasis is on the
problem solving aspect
Mathematics
Biology (bioinformatics)
Chemistry
Physics
Geology
Geoscience
Archeology
Psychology
Sociology
Cognitive Science
Medicine/Surgery
Engineering
Linguistics
Art
…
Computer scientists work across disciplines:
Computing is important
Huge Growth in Computing-Related Jobs
Computing is Consistently Ranked Among the Best Occupations
#1 Registered Nurse #6 Web Developer
#2 Software Developer #7 Computer Systems Analyst
#3 Pharmacist #8 Physical Therapist
#4 Medical Assistant #9 Computer Programmer
#5 Database Administrator #10 Occupational Therapist
The 25 Best Jobs of 2012
CS Careers Rank Highly In: • Job satisfaction
• Salary
• Work/life balance
• Growth potential
• Employment rate
• Work environment
CNN’s Top 100 Jobs 2010 (Graphic by Focus.com)
CS-Related Jobs Highlighted in Red
… a y differe t o pa ies … eed to hire o puter s ie tists. They aren't tied to one particular industry.
Administrivia
Overview
CIS 110: Introduction to Programming and Computer Science Goals:
How can we use computers to solve problems? How can we formulate problems so that we can solve
them via computation?
Topics: Programming in Java Applications to science, engineering, and art
24
“ Computers are incredibly fast, accurate, and stupid; humans
are incredibly slow, inaccurate, and brilliant; together they
are powerful beyond imagination. ” − Albert Einstein
25
The Basics
Instructor: Arvind (no need to remember my unpronounceable last name) Office hours in Levine 268
– Arvind: MTWR – 1-2 pm. I tend to leave at about 4pm. – E-mail: bhusnur@seas
TAs
Max, Alex, Scott and Hanssen
Lectures: MWTR – 10 – 11am, Towne 311
Recitations: 11am – noon, right after lecture (led by TAs) Clarify lecture material, tips on assignments, group activities Last name Alston to Liu (both inclusive) in this room – Recitation 1 Last name Luster to Su in Towne 307 – Recitation 2
TA Office Hours: See course website for hours Questions about material and help with debugging Bring your laptop or use lab computers
Full details: www.cis110.com
26
Grading
Grade Breakdown: Homeworks: 50%
Midterm Exam: 15%
Final Exam: 25%
Recitation attendance / exercises: 5%
Participation: 5%
Midterm Exam: Tuesday, Jul 22 in class
Final Exam: Thursday August 7, in class
Notes: You can check your grades on the course website
you are here
general population
27
Course Materials
Course Website: www.cis110.com
Programming assignments and checklists
Assignment submission
Lecture slides
Discussion board (Piazza)
Required Text: Sedgewick and Wayne. Intro to Programming in Java:
An Interdisciplinary Approach.
skim before lecture; read thoroughly afterwards
28
Homework Programming Assignments
Due: 11:59pm on due date via Web submission
TA/Instructor help ends at 9pm, so plan ahead
Deadlines are strictly enforced. Summer = more intense!
Submit via the course website
Computing equipment: Your desktop/laptop [OS X, Windows, Linux, … ] Moore computer labs
Dr. Java software (free)
Advice: Start early; plan multiple sessions
Seek help when needed
“Instead of imagining that our main task is to instruct a computer
what to do, let us concentrate rather on explaining to human
beings what we want a computer to do.” – Donald Knuth
Cheating on Homework
Do not cheat!
Remember that looking for solutions online and copying them constitutes
cheating
The penalty for cheating will be severe
The TAs and I are always willing to help. If you cannot come to office
hours, send email and we can work out a convenient time
Programming requires practice. Do not assume it will come naturally.
The tougher the problem, the greater the joy when it does get solved!
29
30
What's Ahead?
Lecture 2 Intro to Java and Drawing Primitives
First recitation = Today.
Today the TAs will help you set up your programming environment.
Make sure this is done today. If you have a problem come to my office today
and we should be able to sort it out.
Homework 0 Due Tuesday, July 8th at 11:59pm
Read Sections 1.1 and 1.2 in textbook
Install Dr. Java programming environment + do a few exercises
Register for Piazza
We ill get you started i today’s re itatio
Lots of help available, don't be bashful
END OF ADMINISTRATIVE STUFF