Course Syllabus
Course Basics
Course COMP1010: Programming for All 1
Credits 3
Pre-reqs None
Description This course is designed for students who are not intending to be Computer Science majors who desire a practical course for gaining basic computer programming skills. The course will use the Python programming language to develop skills in problem-solving, debugging, acquiring real-world data, processing data, and interacting with and visualizing solutions. The course will show the power in writing small programs that leverage existing code to create interesting applications. Examples from a variety of fields will be used to illustrate the utility of computers and programming. The goal for the end of the course is for students to feel confident in their ability to write useful, small-scale programs in their area of interest.
At the end of the course, students will be able to
- write small functions and scripts in Python to accomplish desired tasks
- use external Python code in their own programs to add functionality to their programs
- debug and modify small programs
- use object-oriented constructs within their programs
- take a real-world task and see how to use programs to automate or analyze that task
Lectures Lectures are Monday and Wednesday, 12:55pm - 1:45pm in HEB 2008. Students who are quarantining due to COVID-19 can attend lecture remotely on Zoom (see instructions).
Lab sessions Friday lab sessions are in WEB L124, except for section 11, which is in WEB 208. Lab attendance at your registered lab session is required and has graded work. Students with a legitimate reason for missing lab should contact the instructors through Piazza for instructions.
Instructor Prof. Jason Wiese |
Course staff email through Piazza
Textbook This course will use a variety of web resources, including readings and exercises from a free online, interactive textbook from https://runestone.academy/runestone/books/published/fopp/index.html
Important dates There are two coding exams that take place in your lab section on September 30 and December 2. There is a midterm exam that takes place during lecture on Wednesday October 19. The final exam is from 1:00-3:00 PM on Tuesday, December 13th. These dates cannot be missed except for documented emergencies and you should plan around them.
In-class participation Most lectures will have audience participation questions that you can answer using a web browser on a smart phone, tablet, or laptop or by text message. These audience response questions will be through www.pollev.com/comp1010. If you do not have a device to use during lectures please contact Prof. Wiese (jason.wiese@utah.edu)
Course Materials
Website The class website is the Canvas course available through CIS. It will be updated throughout the semester with the class schedule, lecture notes, laboratory exercises, assignment specifications, and other relevant information.
Lecture notes The instructor will often make use of slides and other documents during lecture. These documents will be posted on the class website following the lecture; however, such posted documents may not represent completely the material covered in class. Students who must miss class are strongly encouraged to check with a classmate or TA.
Python All programming in COMP1010 is in Python. Python is free to download. Instructions for installing it on your personal computer is available on the class website in the Class Resources module.
Student Evaluation
Programming assignments The instructions for each assignment and its due date will be posted on the class website roughly one week before it must be submitted. Assignments are submitted online via the submission tool located beneath the instructions for each assignment. It is the student’s responsibility to ensure the successful and timely submission of each programming assignment — start early and follow the instructions carefully. Corrupted or missing files will not be grounds for extensions. Double-check your submissions, and save a digital copy of all of your work.
LATE ASSIGNMENTS There is a one-day grace period for late assignments. Assignments turned in after the due date will receive a 20% deduction in the grade. No assignments will be accepted more than 24 hours late, at which point a 0% will be assigned. In general, you should use the dropped score (described below) as the way this course handles the problems we all face during the semester rather than asking for instructors' consent for late work. Longer term issues should be discussed with the instructors -- we are not trying to fail students!
Lab exercises Students in labs generally work through online quizzes with the aid of the lab TAs. The lowest 2 lab scores will be dropped, which can help you manage unexpected (or expected) problems with attendance. Labs will focus on additional material that is helpful for completing assignments. Additionally, labs are very beneficial for reviewing material covered in lecture -- attendance is expected.
Coding exams There will be two lab periods devoted to practical coding exams -- you will be given a series of programming problems that will be solved during the lab period for a score. These do not count as a droppable lab score. These exams will be held September 30th and December 2nd and can only be missed for a documented medical emergency. The coding exams will be administered online.
Midterm and final exam There will be one mid-term and a final test. The mid-term is during lecture on October 19th. The cumulative final exam is Tuesday, December 13 from 1:00-3:00 PM. These tests cannot be missed except for a documented medical emergency.
Participation Participation is an important component of this course because active engagement facilitates learning. If you choose not to be engaged during lecture and lab, you are harming your own experience with the material. Participation will not be graded explicitly because we find that active participation is associated with success in other graded aspects of the course.
Final course grade: Assignments 45%, Midterm and Final Exam 30%, Coding Exams 15%, Labs 10%
Your weighted, cumulative course percentage score is turned into letter grades using the following scheme:
[100-94] A, (94-90] A-, (90-87] B+, (87-84] B, (84-80] B-, (80-77] C+, (77-74] C, (74-70] C-, (70-67] D+, (67-64] D, (64-60] D-, (60-0] E
where [ ] means including that number and ( ) means up to but not including.
Regrades Students who wish to appeal a score on an assignment, a lab, or a test must do so within one week of receiving the score. For assignments and labs please contact the TA that assigned your grade. For tests please contact the instructors.
Dropped scores Students may end up missing a deadline or a lab session for a reason that is not granted an exception (generally, documented medical reasons or official University activities). Therefore, to allow for such an occurrence, the lowest score earned on an assignment, and the lowest two scores on lab exercises are dropped from the record of each student at the end of the semester. Students should plan to use the “drop scores” judiciously — there is only one for an assignment, one for a quiz, and two for a lab. These dropped scores are automatically applied. Assignments 7 and 8 cannot be dropped. No test or final exam scores are dropped.
Extra Credit Students who complete all of the assigned readings and problems in the online textbook during the semester will receive a half-grade increase in their final grade (e.g. a B will turn into a B+, a B+ will turn into an A-). The assignment must be completed by the end of the day on Monday to count, and you must be logged in with your account following the directions on the page describing the Course e-Textbook. You can miss up to two weeks and still get this extra credit. Students who miss more than two but less than 5 weeks can still receive for 2% extra credit on their final grade. This is the only extra credit we intend to offer this semester.
Getting Help
Instructor office hours See the Help Hours page in the Course Resources module.
Teaching assistants and consulting hours See the Help Hours page in the Course Resources module. During consultation, use the TA Queue (also on the class website) to alert the TA on duty that you have a question. TA hours are held on Zoom and in person in the CADE lab.
Communication For questions outside of class and consulting hours, students are required to use Piazza. The teaching staff will actively monitor all discussions, and we will often be able to provide a quick response that might be useful to many students. Be mindful of our cheating policy and do not post things such as solutions to homework assignments or code snippets from your solution. Regardless of communication medium, DO NOT SHARE THESE WITH ANOTHER STUDENT until after assignments have been graded and returned.
To send urgent messages to everyone in the class, such as corrections to assignments or changes in due dates, the course staff will make use of Piazza. Students are expected to check Piazza regularly. We recommend signing up for email notifications from Piazza as well.
In general, we can often provide quick and detailed responses through Piazza and it is an excellent mechanism for getting feedback. Emails of a more administrative nature (i.e., questions about grades, illness) can be sent directly to the course professor at jason.wiese@utah.edu. See further instructions on the Contacting Course Staff page in the Course Resources module.
Course Guidelines
Behavior during class activities All students are expected to maintain professional behavior, according to www.regulations.utah.edu/academics/guides/students/studentRights.html (the University of Utah Student Code). Students should read the Code carefully and know that they are responsible for the content. According to Faculty Rules and Regulations, it is the faculty responsibility to enforce responsible classroom behaviors, beginning with verbal warnings and progressing to dismissal from class and a failing grade. Students have the right to appeal such action to the Student Behavior Committee.
Working together Students are encouraged to discuss assignments and laboratory exercises with fellow classmates, but each student is responsible for formulating and writing their own answer. Cheating is: sharing written or electronic work either by copying, retyping, looking at, or supplying a copy. Cheating is not: discussing concepts, answering questions about concepts or clarifying ambiguities, or helping someone understand how to use the class tools and software.
Students may occasionally be required to work on assignments or lab exercises in pairs. Guidelines and rules for working together will be posted with such assignments.
Cheating is taken very seriously and students must be careful not to collaborate on assignments. Further details about what constitutes cheating, and what the resulting actions by the course staff will be, can be found under Course Resources.
Submissions are routinely checked by the course staff for signs of unauthorized collaboration.
There must be strictly no collaboration during tests or the final exam. Please see the University of Utah Student Code for a detailed description of the university policy on cheating.
Any student found cheating will fail the entire course.
We will adhere by the School of Computing policy on academic misconduct.
This course adheres to the School of Computing course guidelines and policieshttps://handbook.cs.utah.edu/current/Academics/policies.php
College of Engineering guidelines For information on withdrawing from courses, appealing grades, and more, see the College of Engineering guidelines at
https://www.coe.utah.edu/students/current/semester-guidelines/
Inclusivity
It is our intent that students from all diverse backgrounds and perspectives be well-served by this course, that students' learning needs be addressed both in and out of class, and that the diversity that the students bring to this class be viewed as a resource, strength and benefit. It is our intent to present materials and activities that are respectful of diversity: gender identity, sexuality, disability, age, socioeconomic status, ethnicity, race, nationality, religion, and culture.
We also expect students to treat others in the class, including the teaching staff, with the same level of respect.
Your suggestions on how we can make the course more inclusive and welcoming are encouraged and appreciated. You can give us feedback in person during office hours, or through our anonymous form.
U of U Office of Inclusivity (Links to an external site.)
Center for Ethnic Student Affairs (Links to an external site.)
LGBT Resource Center (Links to an external site.)
American Indian Resource Center (Links to an external site.)
Office of Equal Opportunity, Affirmative Action, and Title IX (Links to an external site.)
Center for Student Wellness
Student names & personal pronouns Class rosters are provided to the instructors with the student’s legal name as well as “Preferred first name” (if previously entered by you in the Student Profile section of your CIS account). Please advise the instructors of any name or pronoun changes (and update CIS) so we can help create a learning environment in which you feel respected. If you need assistance getting your preferred name on your UID card, please visit the LGBT Resource Center Room 409 in the Olpin Union Building, or email bpeacock@sa.utah.edu to schedule a time to drop by. The LGBT Resource Center hours are M-F 8am-5pm, and 8am-6pm on Tuesdays.
NOTE: This syllabus is meant to serve as an outline and guide for our course. Please note that the instructors may modify it with reasonable notice to you. The instructors may also modify the course schedule to accommodate the needs of our class. Any changes will be announced in class and posted on Canvas under Announcements.
Course Summary:
Date | Details | Due |
---|---|---|