CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL...
-
Upload
scott-boyd -
Category
Documents
-
view
213 -
download
0
Transcript of CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL...
![Page 1: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/1.jpg)
CSS 161: Fundamentals of Computing
CSS 161 AFundamentals of Computing
IntroductionSeptember 24, 2012
Instructor: Uma Murthy
CSS SKL 161 A Instructor: Joe McCarthy
![Page 2: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/2.jpg)
CSS 161: Fundamentals of Computing
Outline
• What is this course?• Who am I, and why am I here?• Who are you, and why are you here?• Logistics• Introduction to Fundamentals of Computing• Next steps
![Page 3: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/3.jpg)
CSS 161: Fundamentals of Computing
What is this course?
![Page 4: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/4.jpg)
CSS 161: Fundamentals of Computing
Course lab
CSSSKL 161 A Friday 11:00AM-1:30PMUW1 120
![Page 5: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/5.jpg)
CSS 161: Fundamentals of Computing
Who am I?
• Joe McCarthy, Ph.D.– Senior Lecturer, Computing & Software Systems– Naming conventions• “Joe”• “Professor McCarthy”• “Dr. McCarthy”• “Professor Joe”• “Dr. Joe”
![Page 6: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/6.jpg)
CSS 161: Fundamentals of Computing
Your instructor for this course
• Uma Murthy, Ph.D.– Lecturer, Computing
& Software Systems– Currently traveling
in India and will return for the Oct 1 class
![Page 7: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/7.jpg)
CSS 161: Fundamentals of Computing
Why am I here [today]?
• Covering for Uma, who is in India• But why am I involved in this class (CSS [SKL]
161 A)?
![Page 8: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/8.jpg)
CSS 161: Fundamentals of Computing
Empowerment
“most of society remains one full dimensional leap of awareness and capability behind the few who manage to monopolize access to the real power of any media age …”
“if we take up this challenge [programming], we are looking at nothing less than the conscious, collective intervention of human beings in their own evolution. It’s the opportunity of a civilization’s lifetime.”
Hearers (vs. speakers)
Readers(vs. writers)
Viewers(vs. producers)
![Page 9: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/9.jpg)
CSS 161: Fundamentals of Computing
Empowerment … with benefits
http://www.geekwire.com/2012/chart-pays-seattle-software-engineers/
![Page 10: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/10.jpg)
CSS 161: Fundamentals of Computing
Who are you & why are you here?
• Name• Why are you taking this course?• What was your favorite class (& why)• What is your favorite computer program?• If you could write a program to do anything,
what would it do?
![Page 11: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/11.jpg)
CSS 161: Fundamentals of Computing
[How] are you experienced?
• Do you have any programming experience?– Note: no experience necessary (or expected)
• For those with experience, which language(s)?• Which operating systems have you used?• Do you own a laptop / desktop?• Do you own a smartphone? What kind?• What other computing devices do you own?• What is your primary browser? Search engine?• Do you use Facebook? Twitter? Google+? Pinterest?
![Page 12: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/12.jpg)
CSS 161: Fundamentals of Computing
Online survey
• Complete survey on your background– Check email tomorrow
![Page 13: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/13.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals
– computer organization
– algorithmic thinking
– software engineering concepts
– social and professional issues
![Page 14: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/14.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals
– computer organization
– algorithmic thinking
– software engineering concepts
– social and professional issues
![Page 15: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/15.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals (control structures, data types and representation, I/O operations, functions and parameters … in Java)
– computer organization
– algorithmic thinking
– software engineering concepts
– social and professional issues
![Page 16: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/16.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals (control structures, data types and representation, I/O operations, functions and parameters … in Java)
– computer organization(hardware, software, CPU, memory, storage, I/O devices, …)
– algorithmic thinking
– software engineering concepts
– social and professional issues
![Page 17: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/17.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals (control structures, data types and representation, I/O operations, functions and parameters … in Java)
– computer organization(hardware, software, CPU, memory, storage, I/O devices, …)
– algorithmic thinking(clearly specified sequence of steps)
– software engineering concepts
– social and professional issues
![Page 18: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/18.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals (control structures, data types and representation, I/O operations, functions and parameters … in Java)
– computer organization(hardware, software, CPU, memory, storage, I/O devices, …)
– algorithmic thinking(clearly specified sequence of steps)
– software engineering concepts (specifications, design, testing)
– social and professional issues
![Page 19: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/19.jpg)
CSS 161: Fundamentals of Computing
Course Objectives• Learn
– programming fundamentals (control structures, data types and representation, I/O operations, functions and parameters … in Java)
– computer organization(hardware, software, CPU, memory, storage, I/O devices, …)
– algorithmic thinking(clearly specified sequence of steps)
– software engineering concepts (specifications, design, testing)
– social and professional issues (history, ethics, applications)
• Have fun• Consciously & collectively intervene in our own evolution
![Page 20: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/20.jpg)
CSS 161: Fundamentals of Computing
Course Logistics• Uma Murthy
– Office: UW1-360E; Phone: 425-352-????– Office hours (after this week):
• MW 1:15 - 2:15pm & by appointment
– Email: [email protected] (Use CSS161 in subject)
• Class meetings– Lectures: MW 11:00am-1:00pm, UW2-221
• Class web site:– http://courses.washington.edu/css161/umurthy/– Links to lecture notes, homeworks, supplemental material,
discussion forums, homework Dropbox– Please be patient as the website is updated with resources in the coming
week
![Page 21: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/21.jpg)
CSS 161: Fundamentals of Computing
Grading
• Homeworks– Mostly programming problems– 6-8 homeworks, 30% of grade
• Midterm Exams– Based on readings, lectures, discussions, assignments, labs– 2 exams, 40% of grade
• Final Exam– In the week of December 10 (TBD and notified)– 25% of the grade
• Quizzes: – 5% of grade
• UWB Academic Standards will be strictly enforced
![Page 22: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/22.jpg)
CSS 161: Fundamentals of Computing
Homeworks• Unless otherwise noted: – All homeworks must be submitted digitally via the class
Catalyst Dropbox• https://catalyst.uw.edu/collectit/dropbox/umurthy1/23719
– Homework documents, files and directories must follow a naming convention laid out in the submission instructions
– Homeworks are due by the beginning of class on the date they are due
– No late homeworks will be accepted, nor makeup exams given, except under extenuating circumstances
![Page 23: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/23.jpg)
CSS 161: Fundamentals of Computing
Quizzes
• Typically include short answer questions• Typically held in the first 20 minutes of class
either on a Monday or Wednesday• Quiz notifications will be given in the prior
week
![Page 24: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/24.jpg)
CSS 161: Fundamentals of Computing
Questions / Discussion Forums
• Who questions much, shall learn much, and retain much. – Francis Bacon
• Please ask – and answer – questions – in class– Discussion Forum (Catalyst GoPost)– via email – in person during my office hours
• Discuss issues, problems & approaches, but do not post solutions to homeworks
![Page 25: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/25.jpg)
CSS 161: Fundamentals of Computing
https://catalyst.uw.edu/gopost/board/umurthy1/29824/
![Page 26: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/26.jpg)
CSS 161: Fundamentals of Computing
If you want to learn, teach
![Page 27: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/27.jpg)
CSS 161: Fundamentals of Computing
Experimentation
“Do not be too timid and squeamish about your actions. All life is an experiment. The more experiments you make the better.”
- Ralph Waldo Emerson
![Page 28: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/28.jpg)
CSS 161: Fundamentals of Computing
Required Textbook
Absolute Java, 5th Edition Walter Savitch & Kenrick MockAddison-Wesley, 2013
4th Edition OK, too
![Page 29: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/29.jpg)
CSS 161: Fundamentals of Computing
Supplemental Material (1/2)
Java: An Introduction to Problem Solving & Programming, 6th EditionWalter SavitchAddison-Wesley, 2012
http://courses.washington.edu/css161/joemcc/Notes/SavitchCh01.pdf
(access via “Notes” link on course homepage)
![Page 30: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/30.jpg)
CSS 161: Fundamentals of Computing
Supplemental material (2/2)
• Practice It!http://webster.cs.washington.edu:8080/practiceit/
• Instructions to be provided in the coming weeks
![Page 31: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/31.jpg)
CSS 161: Fundamentals of Computing
Course schedule – 1/2 (check on website)
![Page 32: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/32.jpg)
CSS 161: Fundamentals of Computing
Course schedule – 2/2 (check on website)
![Page 33: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/33.jpg)
CSS 161: Fundamentals of Computing
Fundamentals of Computer Programming
![Page 34: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/34.jpg)
CSS 161: Fundamentals of Computing
Fundamentals of Computer Programming
• What is a program?
![Page 35: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/35.jpg)
CSS 161: Fundamentals of Computing
Fundamentals of Computer Programming
• What is a program?• What is programming?
![Page 36: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/36.jpg)
CSS 161: Fundamentals of Computing
Fundamentals of Computer Programming
• What is a program?• What is programming?• What is a computer program?
![Page 37: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/37.jpg)
CSS 161: Fundamentals of Computing
Fundamentals of Computer Programming
• What is a program?• What is programming?• What is a computer program?• What is computer programming?
![Page 38: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/38.jpg)
CSS 161: Fundamentals of Computing
![Page 39: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/39.jpg)
CSS 161: Fundamentals of Computing
FirstProgram.java
FirstProgram.class
javac
java
![Page 40: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/40.jpg)
CSS 161: Fundamentals of Computing
![Page 41: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/41.jpg)
CSS 161: Fundamentals of Computing
[In Mac OS X Terminal window]
localhost:code umurthy$ ls FirstProgram*FirstProgram.javalocalhost:code umurthy$ javac FirstProgram.java Localhost:code umurthy$ ls FirstProgram*FirstProgram.class FirstProgram.javaLocalhost:code umurthy$ java FirstProgramHello reader.Welcome to Java.Let's demonstrate a simple calculation.2 plus 2 is 4Localhost:code umurthy$
![Page 42: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/42.jpg)
CSS 161: Fundamentals of Computing
![Page 43: CSS 161 A Fundamentals of Computing Introduction September 24, 2012 Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy CSS 161: Fundamentals.](https://reader035.fdocuments.in/reader035/viewer/2022062802/56649ec75503460f94bd2f9d/html5/thumbnails/43.jpg)
CSS 161: Fundamentals of Computing
Next time (Wednesday)
• Fill out survey (check email tomorrow afternoon)
• Get textbooks• Read: – Absolute Java, Section 1.1– Java: An Introduction…, Sections 1.1 & 1.3• Recommended: Section 1.4