1 / 31

Welcome to CS 115!

Welcome to CS 115!. Introduction to Programming Fall 2017. The class URL is cs.uky.edu/~keen/115/115.html You can see this in Canvas. Personnel. Dr. Debby Keen, Course Coordinator/Lab Instructor Office hours in Davis Marksbury 215 and RGAN 103:

westberg
Télécharger la présentation

Welcome to CS 115!

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Welcome to CS 115! Introduction to Programming Fall 2017

  2. The class URL iscs.uky.edu/~keen/115/115.htmlYou can see this in Canvas.

  3. Personnel • Dr. Debby Keen, Course Coordinator/Lab Instructor • Office hours in Davis Marksbury 215 and RGAN 103: • posted http://cs.uky.edu/~keen/myofficehours.html • Email: keen@cs.uky.edu • Teaching Assistants • Office hours will be set up soon • Held in EE Annex 205 • You can talk to ANY of them about programming problems

  4. Thank you very much!!

  5. Laptop Policies • Lecture • Studies show most students with laptops open in front of them are NOT paying attention to the lecture • IF you insist on using a laptop in lecture, you MUST sit in the very BACK row of the classroom, so that you distract only yourself and not other students • Lab • There are sufficient computers in each lab for every student but you can use your own laptop if you wish, even for lab tests

  6. Textbook and Supplies • Textbook is required, an online book by Zyante “zybook” www.zyante.com $48 • Exercises in the book will be 5% of the grade. • Students are responsible for material in chapters that are in schedule and material covered in lectures

  7. Software we will use • Python • Open source and Free from www.python.org • Get version 3.x – right now is 3.6.1 • Easy to install on your machine, already in labs • Includes IDLE Integrated Development Environment • WingIDE 101 (optional but better than IDLE) • 101 version is free forever (latest version 6.0.5-1) • Less prone to crashes than IDLE • from http://wingware.com/downloads/wingide-101/

  8. For Attendance – on the 3x5 card • On the FRONT of the card • Write your NAME • Write the DATE (August 24, 2017) • Write your SECTION • AND ...

  9. GOALS – please write them down On the front of the card, write: • What are your goals for this class? That is, what do you want to learn? • How much time do you expect to spend on this class OUTSIDE of lecture and lab time?

  10. And on the BACK of the card, describe • What is the most complicated thing you have done with a computer? or • What have you done with a computer that you are most proud of? We are trying to tell what level of experience you have with computers.

  11. Goals Activity - continued • You can share your answers with a neighbor and add to your card if you like • Compare your answers with the syllabus

  12. At end of class • Turn in your card at the end of class by putting it in the envelope with the right section number at the front of the room

  13. The goals of the class are • To acquire an understanding of computer architecture and data representations (variables, representation of numbers and character strings) • To learn basic algorithmic problem-solving techniques (decision structures, loops, functions) • To be able to use and understand classes and objects • To be able to design, document, implement and test solutions to programming problems

  14. Experience in Programming • This class assumes NO experience in programming • It does assume some experience with computers and Windows • copying files, printing • navigating paths, folders, filenames • Plan on 10 hours a week outside of class • If you HAVE a lot of programming experience, consider the BYPASS exam

  15. Why learn to program? • It’s required in my major • I learn things that apply beyond programming • I use programs to analyze the data I run in my lab experiments in my research • I automate tedious things I have to do • I found out I like to do it! • I need to communicate with other people about programming • It is a good career

  16. Your Grade is Based on: • Lecture Attendance 6% • Lab Attendance and Assignments 10% • Zybook Assignments 5% • Programming Assignments 21% • Two Written Exams during the semester  20% • Three Lab Exams 18% • Final Written Exam (Comprehensive) 20%

  17. If you must have a certain grade • Tell Dr. Keen about it NOW! • We are willing to work with you all semester long to achieve your goal • We will set up a regular appointment time • DO NOT wait until the end of the semester and say “But I have to have a … whatever”

  18. Attendance • Required at All Lectures • taken regularly by cooperative activities and quizzes • Required at All Lab sessions • don’t get credit for team submission if not there • only "UK excuses" accepted if documented • death in family, illness, school trips, religious holidays • Give Dr. Keen your excuse documentation on paper

  19. Class Locations • Lecture (TR) Sections 1-6 Whitehall Classroom Bldg 106 • Lecture (TR) Section 401 FPAT 267 • Lab sections – (M) RGAN 103 • Office Hours • Dr. Keen – Marksbury 215, RGAN 103 • TAs – EE 205 • Common Written Exams – Whitehall Classroom Bldg 106 • Final Exam –Whitehall Classroom Building 106

  20. Plagiarism / Cheating • Plagiarism • Using other people's work as your own without citation and permission of the author • NO assistance from anyone else on Lab or Lecture tests or quizzes or individual labs • Any assistance given by a person or found on the Net for an assignment must be cited in the assignment, by person’s name or URL.

  21. Cheating, continued • The way to learn programming is to DO programming. Make sure you understand the assistance you are getting, from ANY source. • Penalties for plagiarism start with a ZERO on the assignment and a LETTER in your permanent file. UK Policy is followed.

  22. Accommodation • Please tell Dr. Keen about it if you have a letter - as soon as possible! • Letters are not retroactive! • We can arrange both lecture and lab tests to be accommodated

  23. What is computer science? • Computer science is the study of: • What can be computed using step-by-step procedures. • How best to specify these procedures. • How to tell if a procedure is correct, efficient, optimal, etc. • How to design procedures to solve real-world problems.

  24. Algorithms “Step-by-step procedure” is a mouthful. We have a name for that: an algorithm. • A “well-ordered collection of unambiguous and effectively computable operations that, when executed, produces a result and halts in a finite amount of time.” [Schneider and Gersting].

  25. Programming languages Computer programming is the process of translating an algorithm into instructions that a computer can understand. • A programming language is a formal constructed language designed to communicate instructions to a computer. • There are thousands of programming languages in existence, dozens or hundreds of which are still in regular use. • A professional programmer usually knows several. They can choose the right tool (language) for each job. • In CS 115 we’ll learn to write programs in Python, a high-level interpreted programming language. Python was created by Guido van Rossum.

  26. Programming environment and tools What do you need to write programs in Python? • An interpreter to translate and execute your program • A text editor for writing and changing your source code • Notepad is possibly useful but not really suited to programming • More advanced editors can: • Automatically indent the code • Color code to clarify its meaning • Jump from variable name to its definition • Jump from function call to its definition • Much more…

  27. Integrated development environments • An IDE (integrated development environment) combines several programming tools together into one cohesive program. • Some IDEs for Python: • IDLE comes with Python – it’s installed when Python is. • WingIDE is recommended for this class – it’s free, more professional looking and less likely to crash. • PyScript, PyCharm are a couple other IDEs that you can find for free. • Lab 1 will ask you to use WingIDE. • Debugging and other topics in a few weeks.

  28. Example program design # Purpose: Ask for the user’s name and greet them. # Author: J. Random Hacker, section 1, # random.hacker@uky.edu # Assignment: Lab 42 # Main Program: # 1. Input the user’s name from the keyboard # 2. Output the word hello followed by the user’s # name.

  29. Design turned into code # Purpose: Ask for the user’s name and greet them. # Author: J. Random Hacker, section 1, # random.hacker@uky.edu # Assignment: Lab 42 # Main Program: def main(): # 1. Input the user’s name from the keyboard name = input(“What’s your name? “) # 2. Output the word hello followed by the user’s # name. print(“hello”, name) main()

  30. What to do Next • Get signed up for your textbook(Zybook) • Read chapter 1 in Zybook and do exercises – due Sunday, August 27, midnight • You should do a section (of the chapter) at a time • Look over Lab 1 (posted) – will be done in lab on Monday, August 28 • Work on Homework 1 – due by Friday, Sept. 1

  31. Today's Exit • Have your NAME, DATE, SECTION, and GOALS on the 3x5 card • Put your card in an envelope down front • Help us get to know you!

More Related