CSCI 102 - Intro to Computer Science LAB

Fall 2021 - Syllabus

Quick Links: zyBook | AutoGrader | Piazza | Canvas | CS @ Mines

Home | Contact | Schedule | Assignments | Syllabus |

Syllabus



Course Description:
This course is designed as a complementary lab-based course to accompany CSCI 101 and provide additional practice and support to students who are new to programming. The 102 LAB course will meet twice a week. Topics will include fundamental programming concepts in Python: variables, types, strings, conditionals, loops, functions, and I/O.

There are no prerequisites for this course. It is recommended that students are concurrently registered in CSCI 101, but it is not required.

Required Book (purchase electronically):
Our main textbook this semester is an electronic book called Introduction to Computer Science, which was created specifically for CSCI 101 and is used concurrently with CSCI 102. This zyBook contains material from four zyBook titles (though price is set as if we are using ONE book):
  • Computing Technology for All
  • Introduction to Computer Systems and Assembly Programming
  • Troubleshooting Basics
  • Programming in Python 3
Here are details to purchase the zyBook:
  1. Go to zyBooks (http://learn.zybooks.com) and create an account with your mines.edu email address.
  2. Enter zyBook code: MINESCSCI101CampFall2021
  3. Subscribe
A subscription is $69.

Other Readings:
CSCI 102 will also include other online readings from the official Python documentation, online tutorials, and other similar freely-available resources.

Course Objectives:
The objective of this course is to learn Python programming through practice and reinforcement. At the end of this course, students will be able to:
  1. Translate between word problems, algorithms, and high-level computer programs.
  2. Diagnose and correct errors in code written by themselves or a third party.
  3. Synthesize documentation and online resources into their programs.
  4. Create an English-language design document for a complex program.

Computer Facilities and Assistance:
You need a multipass account to use the lab machines available across campus. If you do not have an multipass account, visit https://identity.mines.edu. If you have trouble, contact the Computer Commons Help Desk in room 156A of CTLM. We will use the Python 3 programming language, which we suggest you install on your home machine. We will provide instructions for doing so in CSCI 102 and will assist any student installing on their laptop.

Student Evaluation:
There is a total of 200 points in this course. (No Exams - woo hoo!)
Grades will be assigned on the following basis:

Studios Quizzes zyBook Weekly Labs
2 pts each
22 pts
3-5pts each
42 pts
10ts each
30 pts
4-15pts each
106 pts

Studios are completed using the Bartik Autograder. You earn points by completing at least two Studio programming problems for the week. Each successfully completed Studio problem after the two required problems is worth .25 extra credit points. Studio problems are due at the same time as the associated lab assignment. Pre-Studio assignments also exist and should be completed before you attend your Studio class. The pre-Studio assignment and Studio programming problems help you learn the new Python concepts for the week.

Quizzes test whether the assigned pre-Studio work for the week was completed. Quizzes occur at the beginning of class and test concepts from that week's assigned videos and zyBook sections.

zyBook is our course e-book. zyBook sections, which are assigned each week, need to be completed before your Studio class. Students should complete the chapters as they are assigned (which will assist you on the quizzes). zyBook grades will be calculated/posted three times during the semester (see Canvas for due dates); you should stay up-to-date on the assignments. Participation AND challenge problems count toward completion.

Weekly Labs are homework assignments that need to be completed AND submitted to Gradescope no later than the due date. The labs, which are homework and should not be worked on during Studio, provide additional practice with the week's programming concepts. It is highly recommended that students attend office hours to obtain assistance with the labs. The office hours schedule can be found on the Contact page.

Expectations:
You are expected to attend the full meeting time on both class days. During Studio Day, you will work in pairs with another student. Your attendance on your assigned Studio data is important for two key reasons:
  • Participation in active learning, where we learn from each other.
  • Access to instructors and tutors for assistance while performing Studio code-writing tasks.
You are to work alone on the weekly labs (homework). Please attend office hours for assistance; do NOT spend hours trying to solve a programming problem that a TA/instructor may be able to help you solve quickly. Your attendance in office hours is important for two key reasons:
  • Access to instructors and tutors for assistance, if difficulties exist in finalizing that week's lab assignment.
  • Access to instructors and tutors to walk through what you completed. This improves your understanding of the concepts and helps to identify issues prior to submission.
To do well in this class, you must keep up with the assigned readings, programming tasks, and homework assignments. In addition, you must be engaged in learning during Studio Days. In turn, we promise to provide you with the tools, skills, and support you need to succeed in both this class and the programming piece of CSCI 101. All students are advised to be familiar with university policy regarding the make-up of work missed due to excused absences. This policy is available in the Catalog.

Final Grades:
Your final grade will be determined using a straight scale out of the 200 possible points. For example, if you have accumulated X points during the course of the semester, then your final letter grade will be as follow:

Letter Grade If X is ..
A 186 ≤ X < 200
A- 180 ≤ X < 186
B+ 174 ≤ X < 180
B 166 ≤ X < 174
B- 160 ≤ X < 166
C+ 154 ≤ X < 160
C 146 ≤ X < 154
C- 140 ≤ X < 146
D+ 134 ≤ X < 140
D 126 ≤ X < 134
D- 120 ≤ X < 126
F X < 120

Submission/Grading Information:
  • After a grade on some assignment is posted in Canvas, students have ONE week to review and contest the assigned grade. If you are concerned over the grading of a particular assignment, post a note in Canvas. If you cannot resolve the issue through Canvas, contact your instructor.
  • Late Policy:
    • 1 day     - (00h 00m, 24h 00m) Late: -20%
    • 2 days   - [24h 00m, 48h 00m) Late: -40%
    • 3 days   - [48h 00m, 72h 00m) Late: -60%
    • 4+ days - [72h 00m, INF) Late: -100%
    Assignments submitted 4 days or more after the due date are not graded. Weekends count as two late days.
  • Assignments may not be re-submitted after they have been graded.
  • All Python projects will be graded with Python 3 (https://www.python.org). It is your responsibility to ensure your Python project submissions work in Python 3.
Course Support:
  1. The 101/102 Team is available to help you, via weekly office hours. You can see the team's availability on the CSCI 102 course web site (under Contact).
  2. Piazza will be our course communication tool. A few suggestions:
    • Be polite. This applies to assignment clarifications (e.g. writing “This requirement makes no sense” is not the best phrasing. Instead, try something like: “I’m not clear what requirement X means. Should I do [a] or [b]?”)
    • A Piazza post is not a text message; use complete sentences and correct spelling, punctuation, and grammar.
    • Carefully think about the best way to phrase your question so it is understandable by others.
    • Check to see if your question has already been asked/answered before posting!
    • Anonymous posts are anonymous to the students in the class, not to the instructors/mentors.
    • In regards to Piazza posts about Python projects:
      • Never, ever, post your entire code on Piazza (unless instructed to do so). Instead post a small portion of your code that you are suspicious about. Not including the bit of code is like ordering pizza by saying, "Hi, I'd like some food, please." (Uh, what food? What size pizza? What toppings? And do you want extra napkins?).
      • Be specific. An email (or private post on Piazza) merely stating "something is wrong with my code, can you please take a look" is not likely to elicit an effective response. What do you think is wrong? Give your Tutor / Instructor a hint.
      • Never, ever, copy code that is posted on Piazza and paste such code into your own project (unless instructed to do so).
    • All students are also encouraged to seek academic support from the Center for Academic Services & Advising (CASA). CASA provides advising, tutoring, academic enrichment workshops, etc. Please take advantage of this valuable resource!
    • The Writing Center, located in Alderson Hall 133, is here to help all members of the Mines community with writing projects at any stage of the writing process. To make an appointment, please visit their online scheduling system at: http://mines.mywconline.com
Oredigger Promise: We Climb Together:
We made it through the 2020-21 school year together, on campus and in person, and we can do it again this year. But just as global data trends show us the pandemic isn’t over, we also know it will take a shared commitment from us all to safely navigate the year As our understanding of the virus increases and variants take center stage, our commitment to protecting our community needs to evolve. This year’s Oredigger Promise reflects this evolution as well as our continued need to climb together and protect our classmates and colleagues, our families and neighbors.

Therefore, as a member of the Oredigger community, I promise to protect classmates and colleagues, our families and neighbors, and myself by adopting the practices and attitudes summarized below; I will:
  • Monitor my health daily and check for COVID-19 symptoms. I will stay home if I am experiencing symptoms of COVID-19 – even if I feel well enough to come to campus and even if I’m vaccinated. I will get tested for COVID-19 before returning to campus life. I will report symptoms of or exposure to COVID-19 to Mines.
  • Isolate and self-quarantine as directed. Isolation is for those who test postive for COVID-19 and quarantine is for those who have had close-contact exposure to someone with COVID-19.
  • Wear an appropriate face covering over my mouth and nose when inside classrooms, teaching labs, computer labs and other campus locations designated at entrances. I will also be supportive if others choose to wear face masks in other spaces around campus.
  • Wash my hands frequently using soap and water or hand sanitizer.
  • Participate in testing and contact tracing to preserve the wellness of the community
  • Be gracious and attentive when others provide safety reminders and when I notice a fellow Oredigger who may be struggling.
Learning Environment:
Fundamentally, we expect and require respect in this course for yourself, your classmates, and the 101/102 Team.
  • Respect for yourself includes taking care of yourself physically and mentally and advocating for an environment that facilitates learning for you.
  • Respect for your classmates includes recognizing and appreciating the diversity of backgrounds and experiences of your classmates and making it your interest to foster a learning environment for everyone; all are welcome.
  • Respect for the 101/102 Team (as well as your classmates) includes not participating in disruptive or distracting behavior: talking, playing games, or web surfing during lecture, for instance, make it difficult for others to focus on the reason we are all here.
  • Respect must be mutual to be effective; we (the 101/102 Team) will be held to the same standards of respect.
Disabilities Support Services: The Colorado School of Mines is committed to ensuring the full participation of all students in its programs, including students with disabilities. If you have been approved for accommodations with Disability Support Services (DSS), request that your instructor receives details on your accommodations through the Accessible Information Management (AIM) system. Then, contact your instructor to (1) ensure your accommodation letter has been received and (2) discuss your needs. For questions or other inquiries regarding disabilities, we encourage you to visit Disability Support Services (DSS) for more information.

Academic Integrity:
Our full Academic Integrity policy and Guidelines are available on this page. Students are advised to be familiar with these policies.

Discrimination, Harassment, and Title IX:
All learning opportunities at Mines, including this course, require a safe environment for everyone to be productive and able to share and learn without fear of discrimination or harassment. Mines’ core values of respect, diversity, compassion, and collaboration will be honored in this course, and the standards in this class are the same as those expected in any professional work environment. Discrimination or harassment of any type will not be tolerated. As a participant in this course, we expect you to respect your instructor and your classmates. Your instructor has the responsibility to foster a learning environment that supports diversity of thoughts, perspectives and experiences, and honors your identities. If something is said or done in this course (by anyone, including your instructor) that made you or others feel uncomfortable, or if your performance in the course is being impacted by your experiences outside of the course, please report it to: In this course, we will cultivate a community that supports survivors, prevents interpersonal violence, and promotes a harassment free environment. Title IX and Colorado State law protects individuals from discrimination based on sex and gender in educational programs and activities. Mines takes this obligation seriously and is committed to providing a campus community free from gender and sex-based discrimination. Discrimination, including sexual harassment, sexual violence, dating violence, domestic violence, and stalking, is prohibited and will not be tolerated within the Mines campus community. If these issues have affected you or someone you know, you can access the appropriate resources here: http://www.mines.edu/title-ix/. You can also contact the Mines Title IX Coordinator, Katie Schmalzel, at 303.273.3260 or titleix@mines.edu for more information.

It's on us, all of the Mines community, to engineer a culture of respect.

Food/Housing Insecurities:
Any student who faces challenges securing their food or housing and believes this may affect their performance in the course is urged to contact the Dean of Students for support. Furthermore, please notify your professor if you are comfortable in doing so. This will enable your professor to provide resources that may be available.

Maintenance/Legal Clause:
This syllabus is intended to give students guidance on our course this semester and will be followed as closely as possible. The course professor reserves the right to modify, supplement and make changes as the course needs arise. This syllabus is not a legal document; common sense rules always apply, e.g., no late assignments will be accepted after the solutions are discussed in class.