CS 162 Introduction to Computer Science Chapter 1 The Instructor and You Herbert G. Mayer, PSU Status 11/16/2014 1 Who is Your Instructor? Instructor is a German immigrant to the USA, who worked in the US computer industry and academia Immigrated to the USA in 1975, due to marriage with US citizen in Berlin Became naturalized US citizen in 1995 MS EECS (electrical engineering an computer science) UCSD 1983; beautiful beach & campus! PhD CS (“Informatik”, equivalent to Computer Science) TU Berlin 1995; awesome city, now united! Dissertation published as book at Springer Verlag © 1996 Professional focus at Intel on compiler optimization, HW validation, alias analysis, programming languages, VLIW, multiprocessing 2 Who is Your Instructor? PhD Thesis on automatic generation of MP-object code via alias analysis of source program Retired in 2011 after 24 years at Intel Corp. Implemented Compilers for systolic array architecture 1980s Managed Intel CPU tuning lab & CPU validation in new Intel processors Teaching computer science since 1983 at SDSU San Diego, and since 1987 PSU Teaching experience 2004 in Shanghai, at IIIST Loved China and teaching in China that I volunteered to participate in CCUT + PSU cooperation Committed to academic year 2014-2015 3 Goals of CS 162 Building on CS 161: Strengthen your programming skills using C++ With long-term focus on high-level, machineindependent programming to write reliable, portable software Improve CCUT students’ command of English, in preparation for possible studies in the US Lightly acquaint CCUT students with the American CS culture, to reduce culture-shock in case of studies in Portland, OR 4 Goals of CS 162 Focus on key programming paradigms that make students highly skilled programmers, including: ASCII to integer conversion and other numeric problems Clarify Reference- vs. Value parameters vs. pointers Nested function calls Recursive function calls Loops, arrays, and matrix manipulation Recursion, simulation of arithmetic operations via recursion Classes, constructors, destructors Occasionally contrast C++ with other languages, e.g. C, Fortran, Ada, Prolog, etc. 5 Conventions for CS 162 at CCUT From time to time, I pose a logical puzzle at the start of class to ensure you are fully awake, and pay total attention to the class material: Wake up puzzle Wake-up puzzle is limited to very few minutes You should ask question in class, every time an idea is not understood; this way you are always “in synch” with the instructor This may not be a typical custom in the Chinese culture, but will help you solidify understanding 6 Conventions for CS 162 at CCUT At start of class, we discuss key English language terms used in the near future: vocabulary intro Being a non-native English speaker I know how important language is for communication Vocabulary exercises intro Limited to few minutes 7 Grading, Homework, Late Hand-In Acquire up to 200 points total = 100% Upper and lower 15% yield a + or – grade variation 2 homeworks at 100 points each = 200 points Homework to be emailed before the start of class on the due date Homework emails should be sent on time and you should use the subject line “CS 162 HW x”, where ‘x’ is the homework number Work that is handed in 1 second up to a day late experiences 10% deduction of the total points Each additional day late: another 10% deducted A Homework that is 5 days late or later is not accepted 8 Silver Bullet One single time each student is allowed to hand in homework up to 3 days late without penalty This is called the CS Silver Bullet Silver Bullets cannot be split, traded, or sold on the black market If in the end you did not consume the silver bullet, you cannot trade it in for cash or a better grade While tracking homework grades, consumption of the silver bullet is tracked Note that the maximally 3 late days worth of Silver Bullet cannot be applied to 2 different late homeworks, even if they are both, say, just 1 day late each 9 Extra Credit Extra Credit: is a way to improve your grade by up to a half grade, i.e. up to a maximum of 50 points total Extra Credit is granted for good ideas expressed in class, constructive questions and contributions in class, identifying errors in class material Volunteers may present the HW or select topics in class, 10 min. each for a few extra credit points Any error in class material, even the slightest typo – but only pointed out the first time– is worth some extra credit Presenting smart homework solutions in class can deserves extra credit; you need to volunteer for such presentations proactively Each time you catch and correct an error made by the instructor you receive extra credit, though the instructor will claim: “This was a deliberate error to test your alertness!” 10 Overall CCUT Context My portion of CS 162 is only a small part of your 16week long semester at CCUT Hence this portion is only one part for your final grade, to be assigned by your class teacher CS 162 portion will be a significant part of the final grade Hopefully, you learn a lot and enjoy my personal delivery method, refined by me in a quarter century of teaching Computer Science 11 Who are You? Briefly, 2-6 students volunteer to articulate in class, explaining: Your name, Chinese and English, if you use both Your field of study, major, and current progress Why do you take CS 162? What is your expectation of this class? What is your minimal goal for this class? Which is your ideal learning goal? Have you worked in the computer industry? Which computer subjects are you interested in? Anything else relevant to this course 12