computer science i: fundamentals...
TRANSCRIPT
![Page 1: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/1.jpg)
ComputerScienceI:Fundamentals(CS1210)
Spring2017
Professor:JamesCremer
TAs:JeffHajewski,SikderHuq,ShanuGandhi,ZachMeyer,AdrianPereira
Lecture1,Jan.18,2017
![Page 2: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/2.jpg)
WelcometoCS1!
• ThisisanexciSngSmetobeacomputerscienSst!Computa(onalThinkingisbecomingpartofallaspectsoflife:– Healthcare,Biology,Pharmacy,BiomedicalEngineering
– Economics,Finance– Sociology,Psychology– Physics,Astronomy– Music,Film– HumaniSes(e.g.DigitalHumaniSesIniSaSveatUI)
![Page 3: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/3.jpg)
CoreComputerScienceareasarefullofexciSngdevelopmentsandacSvity• Dataminingandmachinelearning(manycompanieswant
experSseinmachinelearningtoenable“mining”ofcustomerandotherdata)
• Computergraphics,animaSon,virtualreality(e.g.OculusRi^,Microso^Hololens,GoogleGlass,…)
• Human-computerinteracSon(HCI)• NetworksanddistributedcompuSng• Naturallanguageprocessing• Computervision• RoboScs• ArSficialIntelligence• Algorithms
![Page 4: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/4.jpg)
SearchEngines
• ExemplifyamazingcomputersciencecontribuSons
• Advancesinalgorithms,networking,distributedcompuSng,machinelearningallcombinetosupport– millionsofsimultaneoussearchesof– billionsofwebpages,with– responsesinmilliseconds
![Page 5: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/5.jpg)
Justafewotherrecentdevelopments• IBM’sWatsondefeatedthebesthumanJeopardyplayersin2010–substanSalprogressinnaturallanguageunderstanding
• In1997,IBM’sDeepBluebecamefirstcomputertobeatreigningworldchesschampion.In2016,AlphaGosurprisedmanyexpertsbybecomingfirstcomputerprogramtodefeatatopprofessionalGoplayer(LeeSedol,ranked#2ininternaSonalStles)
• Microso^Kinectsensor–add-onforXboxgamingconsole.Veryimpressivetechnologyfor$149.Distanceandcolorsensorsplusalgorithmsenablingdetailedtrackingof20+jointsof6humansatonce
• Nextbigthing:self-drivingvehicles.MajoradvancesinAI(deeplearning),sensing(don’thitpeople,animals,stuff!),etc.
![Page 6: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/6.jpg)
ThisCourse• Thiscoursehasoneprimarygoal-toprovideacoreofcomputerscienceprogrammingconceptsandskills,andenoughpracSceusingthem,thatstudentswilldevelopconfidenceintheirabilitytothinkcomputaSonallyandtosolveproblemsviaprogramming.
• Beyondbasicprogrammingconcepts,thecourseprovidesanintroducSontoobject-orientedprogramming,algorithmicdesignandanalysis,webprogramming,andgraphicaluserinterfaces.
• CSismuchmorethanprogrammingbutthisisaskillsorientedprogrammingcourseratherthanabroadoverviewofCS.ItteachesprogrammingprinciplesnecessaryformoreadvancedworkintheComputerScience.CS1020andCS1110providebroaderintroducSonstotheoverallfieldofComputerScience.
![Page 7: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/7.jpg)
Me• 24yearsatIowa.PhDfromCornellUniversity,1989.Livedmanyplacesbeforethat-13in17years,alloverUSandalsoinEurope.
• Teaching:datastructures,computergraphics,virtualreality,algorithms.MostrecentlyhaveregularlytaughtiOS/iPhone/iPadAppDevelopmentclass(incljointclasswithVietnam),andProgrammingforInformaScs(alotlikethiscourse).
• Research:previously,theHankVRresearchgroup.Now,theComputaSonalEpidemiologygroup.
• Outsideofwork:whennothangingoutathome,I’msomewhereintheworldridinganEllipSGO
![Page 8: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/8.jpg)
![Page 9: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/9.jpg)
ICON/thesyllabus/coursewebsite• ICON:usedforthreethrings– Submiqnghomeworks– PosSng/readingquesSonsaboutassignments/lectures(ICONDiscussions)
– PosSngallscores/grades• Syllabusandallcourseannouncements,homeworkassignments,andlecturesnoteswillbepostedonexternalcoursewebsite:– hrp://homepage.cs.uiowa.edu/~cremer/courses/cs1210/
Therestoftoday’slecturediscussestheinforma9ononthecoursewebsite.
![Page 10: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/10.jpg)
• Manypeoplefindthiscoursedifficult.Ibelievethatifyouworkatitsteadily,notjustlast-minute,youcandowellwithoutsuffering.
• Thecoursecanbeveryrewarding–from(forsomeofyou)noprogrammingskilltorealconfidenceandabilitytomakecomputerdocoolstuffforyou.
• Cometoclass,doyourownwork,readandthink(veryvaluablebeforesiqngkeyboardprogramming),workhardonthehomeworks.Ifyoudothehomeworkswell,theexamswilltakecareofthemselves.
BeforenextSme:• Read:Chapter1ofthetext.Itisshortandeasy.• Do:InstallPythononyourmachine.EvaluatesomePythoncodeintheinterpreter
NextSme:beginningPython,someinteresSngproblems
![Page 11: Computer Science I: Fundamentals (CS1210)homepage.divms.uiowa.edu/~cremer/courses/cs1210-s17/etc/...Core Computer Science areas are full of exciSng developments and acSvity • Data](https://reader030.vdocuments.us/reader030/viewer/2022040900/5e6eadb5ff256c51fd6f74e7/html5/thumbnails/11.jpg)
Tothinkabout:examplesofcomputa9onalcomplexity
• EulervsHamiltoniancircuitsandTSP.Graphsincomputerscience:differentnoSonthanthegraphicalplotstaughtinhighschool
0
2
4
6
2010 2011 2012 2013
VS.
• Canyoufindapaththattraverseseveryedge(connecSon)exactlyonce?
• Canyoufindapaththatvisitseverynode(vertex)exactlyonce?
• Iftheedgesareassigned“weights”(represenSngdistance/costtotraverse),canyoufindpathofminimumcostthatvisitseverynodeexactlyonce?
Arethesesimilarlycomputa9onallyhardoreasy?