EECS 183 Elementary Programming Concepts By: Leah B. (lbarons) About Me 5th year in CS-LSA and School of Music (Violin Performance) So far in EECS I’ve taken EECS 183, 280, 203, 281, 370, 493, and 482 I was introduced to programming Sophomore year, in EECS 183 I interned with Microsoft this past summer, and just accepted a full time offer! I play Ultimate Frisbee on the club team here at Michigan Discussion Format Review of material covered in Lecture Practice problems/code similar to project concepts and problems you will see on the exam Come with questions! I’ll always leave time for questions, and I will stay after class for more personal questions Correct any mistakes I make during discussion! Challenge/Extended Problems when possible Discussion slides will be posted within a day after our discussion (email me if I forget) Class Logistics (the bullet points) If you have a question, check piazza first – someone probably already asked it! Next step is to go to office hours – check the website If not, post a question There are at 5 hours of office hours every week day DON’T CHEAT! It’s actually a much bigger deal than you might think, and the smallest infraction can result in major consequences Office Hours Office hours this semester will be held on North Campus in the Duderstadt center There will always be office hours from: 3-8 pm M-F on the third floor, East end (diagram on next slide) There will sometimes be additional office hours on the weekend – these will be posted on the website There will be a paper sign up sheet that will arrive with the first staff member, and they will start promptly at 3, and end exactly at 8 The website will indicate which staff members are present at which time, and this will remain mostly consistent Office Hours Location Upcoming Due Dates: Zyante readings – due before each lecture, starts tomorrow (9/8) Assignment 0: This Friday (9/9, 9/11 at the latest) at 11:59 pm Assignment 1: Next Friday (9/16) Codelab introduced in this assignment Project 1: 9/23 (two weeks from Friday) by 6:00 pm (accepted until 11:59 pm) Submit Projects early for extra credit + 5% 2 days early (still 6 pm) + 2.5% 1 day early (6 pm) Always check the website for updates STYLE points! Every semester students lose a bunch of points for incorrect style There are 10 points reserved for style on each project – its easy to lose points if you don’t review the style requirements There are also 10 points on each project (except the first) reserved for test suites We’ll talk more about these later Style guidelines are on the course website! This includes the style rubric that is used to grade your project, so use it! Xcode vs. Visual Studio What I work with both Xcode and Visual Studio I is an IDE? The debuggers are great with both! just transitioned from having a MacBook Pro to a Surface Book I should be able to answer most questions about both Xcode vs. Visual Studio What I Integrated Development Environment work with both Xcode and Visual Studio I is an IDE? The debuggers are great with both! just transitioned from having a MacBook Pro to a Surface Book I should be able to answer most questions about both Basics of Programs You will write your programs in an IDE (Xcode or Visual Studio) These provide a code editor (where you write and edit code) The code you write is sent through a compiler The compiler turns your code into object code (machine language) Moving onto a little bit of content… What is an algorithm? What is an algorithm? A specific approach to solve a problem Counting people in a room (you did this in lecture) Finding a certain page in a book Picking teams with captains Different speed algorithms vary in efficiency and You’ll learn more about this in EECS 203 and 281 if you choose to take them Any general questions about lecture material? Plan before you code! Come up with your algorithm Plan out the setup of your program on paper What is the best order to approach the problem? How to do well in EECS183 Post on Piazza a lot (questions and answers) Start Projects early (as soon as they come out) and go to office hours! Plan before you code! Work with others – talk through the logic out loud There is nothing more helpful than teaching others something you just learned Work with whiteboards (my personal favorite) Feel free to ask me any questions after class!