CMPS 1500 Introduction to Computer Science I
Spring 19

[ Home | Policies | Course Schedule | Help Schedule | Labs | Resources ]

Policies

Course Format

Lectures:

Lecture sessions will be dedicated to introducing new material, discussions, individual and group activities. We will use slides, the board, and handouts to discuss problems and to code. As the slides/handouts become available, they will be posted on Canvas. The instructor will take pictures of the board during the lectures; those pictures will be available on the class photo page. Attendance and participation are required for all lecture sessions.

Labs:

One of the four scheduled classes each week (on Thursday) will be a lab taught by your teaching assistant. This class, for which attendance is required, is especially important for review and practice purposes. You will usually discuss a few relevant problems with the TA, then work on guided lab assignments at your own pace, periodically checking with the TA, and finish the assignments at home.

You will need to bring your charged laptop to the lab.

There will be about eleven lab assignments of equal weight which are usually due within one week. Lab assignments consist of written and programming problems (using the Python programming language). Lab assignments will be submitted individually, but you are welcome to work in pairs and collaborate with your colleagues during the labs, respecting Academic Integrity policy. Lab assignments will be posted on the labs page.

Late Cards:

At the beginning of the semester you receive four late cards, each of which may be used for one 24-hour extension on any one lab problem deadline (note that one lab assignment usually consist of 3-4 problems). If you submit your lab after the deadline, you will automatically use a late card. Both members of the pair will use late cards in case pair work is late. Only one late card per assignment can be used.

You do not need to tell your instructor or TAs that you're using a late card. We will notice based on your submission time and automatically deduct a late card. Late work submitted when late card quota is exhausted or submitted after 24-hour extension granted by a late card will not be given credit.

Zybook Readings (Individual)

The textbook for this class is an online interactive Zybook textbook. The course material will be reinforced through required Zybook readings (including activites) that will be before (almost) every class. Zybook readings are posted on the course schedule and are due by 11:59pm the day before class. These have to be completed individually. Late/missed zybook assignments won't receive credit; you should still complete them at your earliest possibility to make sure you're prepared to read the subsequent chapters.

Help Sessions

During the week there will also be optional help sessions led by the TAs. You are welcome to come to the help session and work on your lab assignment even if you don't have immediate questions.

Most students in previous semesters found it very helpful for their learning to attend the help sessions.

Quizzes

About every 2-3 weeks there will be closed-book/closed-notes quizzes given during the first 20 minutes of your lab section. Arrive to lab on time to have adequate time to complete your quiz. Quizzes are announced on the course schedule. The quizzes will cover reading and lecture topics. The lowest quiz grade will be dropped. Make-up quizzes won't be offered, if you cannot be present for a quiz then you'll need to count that quiz as the lowest score.

Exams:

There will be one written midterm exam during a lab session and one comprehensive written final exam during the time assigned by the Registrar. The midterm and the final exam will be closed-book and closed-notes, but you are allowed to bring a help sheet to each exam (one letter page double-sided); you will need to submit the help sheet with your exam.

Use of Electronic Devices:

You will need to use your laptop to work in the lab, and access to a laptop or desktop computer to complete the programming exercises at home. If you don't have a laptop to bring, you'll be paired up with someone who has one. Not owning a laptop will not jeopardize your progress or grade in this class.

  • Most campus computers have Python 3 installed. For short tasks you can also use online Python editors, such as this editor on Tutorialspoint . Links to several other editors are posted on the resources page.

    Standard meeting courtesy rules apply to class meeting times: cell phone notifications should be switched off; cellphones, tablet and laptop computers should be put away, and no unauthorized technology use should occur during lectures and labs. The rare instances in which we may need to use laptops, tablets and/or smartphones will be explicitly arranged by the instructor. By default, use of tablets, phones, laptops and similar devices is not allowed in lectures (even when used for benign purpose such as taking notes and photos, these devices are distracting in a big class such as ours). While in class, you should be 100% committed to learning the subject.

    Computer Emergencies:

    Technical problems are part of life and life with computers, and you should assume they will occur. Schedule your time and your work to allow for this sort of problem and still get your work done well and on time. Store your files on external storage such as Tulane Box or Google Drive, to allow to retrieve them should your personal machine become unavailable. Always save intermediate results of your work under different names, just like gamers periodically save the state of their game. This way, even if a small change in your program renders it unusable few minutes before submission deadline, you will always have a good backup. Give yourself ample time to upload labs and complete Zybook exercises; avoid doing it moments before the deadline. Please don't request and don't expect accommodations related to tech emergencies. In case of troubles with Zybook, write directly to Zybook support, they're great! Instructors and TAs will not be resolving Zybook problems and will not give extensions associated with Zybook or browser problems.

    Success Strategies

    Academic Integrity:

    All students are expected to read and abide by the principles clearly explained in the university's academic responsibility policy. The Code of Academic Conduct applies to all students, full-time, and part-time, in Tulane University. Tulane University expects and requires behavior compatible with its high standards of scholarship. By accepting admission to the university, a student accepts its regulations (i.e., the Code of Academic Conduct and the Code of Student Conduct and acknowledges the right of the university to take disciplinary action, including suspension or expulsion, for conduct judged unsatisfactory or disruptive.

    You are encouraged to discuss rough ideas and thoughts about a homework assignment with your other classmates, but you have to write up your solution on your own, or with your partner, if you are working with a partner. You are not allowed to read, copy, or rewrite the solutions or code written by others (in this or previous terms, or from the web). Code produced by others can be used only in special circumstances, when it extends (not replaces) your work beyond the requirements of the assignment. In all such cases, when you need to use a snippet of code or a third-party library, you need to first check with the instructor or the TA if it is ok to do so, to clearly mark third-party code in your code, to respect copyright, and to provide a working hyperlink to the source.

    Incidents of academic dishonesty will be reported to the Associate Dean of Newcomb-Tulane College. If several people are involved in sharing solutions then all parties (e.g., the copier and the copiee) will be held equally responsible. In cases of pair programming, each programming team should consist of two people, team submissions from three or more people will be considered plagiarism. Cheating on an exam will result in a failing grade for the course.

    Electronic checkers will be used to detect plagiarism in submitted assignments. In the submitted assignments you are responsible for showing that you have a thorough understanding of what you submit as your own work. This includes commenting and testing programming assignments. You may be asked to explain in person your thorough understanding of your submission to the instructor before credit is given.

    Academic dishonesty is a serious offense. Everyone should watch for and actively oppose all cases of dishonesty. If you have doubts, check with the instructor who will be happy to help you be a good citizen of Tulane University.

    Pair Programming:

    The pair programming strategy is widely adopted by software development companies. For the first half of the course you will have to work in pairs to experience this great way to learn, produce excellent programs and keep up with the schedule. In general, programs written in pairs are known to have better designs and fewer errors than programs produced by developers working alone.

    If you work with a partner on a lab assignment, you must work with the same partner for the entire lab assignment that week (you can switch partners between different lab assignments). You and your partner will each submit their own solution for each problem. If you hand in as pairs, the solutions must be identical, otherwise we will grade them individually. However, both students must submit a "Note" indicating that you worked in a pair, and who your partner was. You should also put the name of your partner in the comments in the code. If you work with a partner, you must work together in front of one computer for every problem that you complete together. While you are working, the computer screen should be visible to both people. One person should type, while the other person observes, critiques and plans what to do next. You must switch roles periodically (about every 20-30 minutes). You may think about the problems individually and make minor bug fixes, but your solution overall should be a true joint (collaborative) effort. Splitting up the work is not permitted. Both pair members must work on each problem together. A detailed pair programming guide is available on the Resources page.

    Participation and Professionalism:

    This class is one of your first professional environments, so we will define and practice high quality behavior. Behaviors that are of low quality, such being unprepared, distracting your colleagues, shirking your own or group work, or other less desirable behaviors, lay the groundwork for mediocrity. Our intent is to help you lay the groundwork for excellence, and so your professional demeanor is crucial to your success in this class. In other words, you are expected to take charge of your own learning and behave as you would in your dream job. Regular attendance in class and in the lab session is mandatory. In order to succeed in this course, you must make it your priority to come to every class session. You are allowed a maximum of four days of absence during the semester (including regular class meetings and labs). This is similar to sick days at work; you can use days of absence when you're sick, travel to a conference/sports trip/family function/interview etc. You do not need to notify me about such absences or ask to be excused. When you take one of your four days of absence, your absence is considered automatically excused.

    Manipulating attendance sheets, such as signing for somebody else, will be viewed and treated as academic dishonesty.

    To help maintain a focused environment for all students, you are expected to stay in the classroom while class is in session, and you may leave the classroom only in the event of emergency, health issue, or when arranged with the instructor/TA. Unfounded leaving of the classroom will be treated as unexcused absence. You are also expected to come to class on time. Repeated tardiness will be counted toward an absence. More than four absences are considered excessive; each excessive and unexcused absence will cause a 0.25pt deduction from your final course score. After more than 8 registered unexcused absences, the final grade for this course will be F.

    Making up the material of a missed lecture is the responsibility of the student. If you missed a class, follow the reading schedule and complete the reading for the missed class; get in touch with your classmates to figure out what else you might have missed; resolve questions that you may have about new material with your TAs and instructor ASAP. Please follow these steps! We won't be able to respond to emails such as "I got sick, please let me know what I missed".

    Managing Knowledge Gaps:

    Your instructor and TAs will not judge or think lesser of anyone who admits lack of knowledge in any area. Ask questions and request clarifications when necessary, even if you think you might be the only person in class who needs it (chances are high that you're not).

    Expected Academic Engagement:

    Each undergraduate credit hour requires one hour of classroom or direct faculty instruction and a minimum of two hours out of class student work each week of a 15-week semester. For a 4-credit hour course, this means that you should allocate on average 8-12 hours of out-of-class work per week. This time may vary week to week, depending on the schedule of the course (e.g., weeks where there are exams or projects or other assignments due may require you to put in more time in order to be successful). STEM courses often require even more study/homework time. Please take this information into consideration when forming your schedule and allow yourself enough time to do the work associated with the course. WARNING: Engineers typically underestimate the time it takes to complete a software project; 4 hours per week on your programming assignments may be one of those "underestimations".

    Grading Scheme:

    Grading will be based on the following weighted scale:
    If extra credit assignments are completed, the points can only be added to the category of that assignment (e.g., extra points for reading can only be added to reading category). The maximum possible value in each point category is 100%.

    The grading scale is as follows:
    100-9392-9089-8786-8382-8079-7776-7372-7069-6059-0
    AA-B+BB-C+CC-DF
    Grades will be available on Canvas. In order to receive a passing grade for the course, you must:

    1. receive a passing grade (60% or above) both in the lab/homework portion and in the exam/quiz portion,
    2. submit the minimum of 75% of all assigned lab work, and
    3. complete more than a half of the assigned Zybook readings.

    Attendance and participation will affect the final grade as described in the Participation section.

    Discretionary bonus points during final grading will be added for significant Participation and Altruism (e.g., answering your peers' questions), suggesting new ideas, interesting computing resources, videos, talks, etc.

    Regrade Requests:

    If your grade is less than 100% of points and you have questions why points were deducted, please see the TA during help hours as soon as possible but no later than two weeks after the graded assignment or exam was returned. Timely resolution of all questions will help you avoid making the same mistake in another assignment! Late regrade requests will not be considered. Please note that review of the grade will consider the exam/homework as a whole, and as a result your grade is just as likely to go down as it is to go up.

    Special Circumstances

    Emergencies:

    In extremely difficult personal situations, such as major illness or injury requiring hospitalization, being witness or victim of a crime, death in the family, if you need to reschedule your exam, you should inform both your instructor and your academic advisor prior to the absence if possible, but no later than the first class period after the excused absence, and provide formal documentation justifying your extenuating circumstance in order to schedule your make-up exam within a week after you return. Exams missed without documented excuse won't receive credit. There won't be make-up lab assignments, quizzes, Zybook exercises, etc. For these assignments in such extreme circumstances, contact the instructor prior to the due date to get a deadline extension.

    Non-Emergencies:

    Sports, performance, conference, and job interview trips, common infections (including cold/flu/strep/staph/stomach and digestion problems) and other common illnesses (even if you have a doctor's note), and similar circumstances are not considered an emergency. No make-up work or deadline extensions will be provided in such cases; the course rules already include mechanisms (late cards, dropping lowest grades) to mitigate their effect on the grade. Please take the possibility of such problems into account when you plan your work.

    Falling Behind:

    A professional who finds themselves not knowing how to perform a part of their job wouldn't just sit and do nothing for a week. Likewise, if you are having a tough semester and discover you have fallen behind, please visit with your professor and TA sooner rather than later. We will be very happy to work with you and help you catch up.

    Special Accommodations:

    If you have a physical, mental or learning disability, either hidden or visible, or another special need which may require classroom, test-taking, or other reasonable modifications, you are invited to share these concerns or requests with the instructor and contact the Goldman Center for Student Accessibility.

    Weather Emergencies and Other University Closures:

    Class will not meet in person when the university is closed due to weather or another issue, and the classes are cancelled to allow faculty, staff and students to safely get home and prepare for sheltering in place or evacuating.

    Classes will meet online via Canvas' build-in Zoom conferencing tool during regular hours if there is no immediate danger and there is power and internet at the instructor's home.

    Disclaimer

    Like many subjects in computer science, this class has an ever-evolving structure. It follows a novel pedagogical approach to introductory programming classes (emphasizing problem-solving vs. traditional focus on the programming language) and relies on software that changes with every offering of the course. Your instructors promise the best effort in adhering to the above rules but need for changes in them might arise, and hence we reserve the right to change them if deemed necessary. For instance, slight alterations to the course schedule are possible if the class needs more/less time for a certain topic; additional readings may be assigned during the semester as needed; and so on. Updates will be announced in class and by email, and posted on the course webpage. Check your Tulane email at least daily. The course webpage and in particular the course schedule always contain the most current information.

    Please feel free to discuss any aspects of the course with your instructor, after class or during office hours.

    Helpful Resources

    Tulane University recognizes the inherent dignity of all individuals and promotes respect for all people. As "One Wave", Tulane is committed to providing an environment free of all forms of discrimination based on race, ethnicity, creed, religion, gender, gender identity and sexual orientation, as well as all forms of sexual harassment, including sexual assault, domestic and dating violence, and stalking. If you (or someone you know) has experienced or experiences discrimination, domestic violence, sexual assault or sexual harassment, know that you are not alone. Resources and support are available. Learn more at onewave.tulane.edu. Any and all of your communications on these matters will be treated as either "Strictly Confidential" or "Mostly Confidential" as explained in the chart below.

    Strictly ConfidentialMostly Confidential
    Except in extreme circumstances, involving imminent danger to one's self or others, nothing will be shared without your explicit permission. Conversations are kept as confidential as possible, but information is shared with key staff members so the University can offer resources and accommodations and take action if necessary for safety reasons.
    Counseling & Psychological Services (CAPS) | (504) 314-2277 Coordinator of Violence Prevention | (504) 314-2161
    Student Health Center | (504) 865-5255 Tulane University Police (TUPD) | (504) 865-5911
    Sexual Aggression Peer Hotline and Education (SAPHE) | (504) 654-9543 Office of Institutional Equity | (504) 862-8083

    Be nice to yourself and others in class. Avoid judging yourself and others too harshly. It's a common problem in tech fields that beginners at times feel intimidated by the jargon, the amount of technical knowledge, and behavior of unfamiliar software products. Know that you have what it takes to study computer science.


    Last modified by Carola Wenk,   cwenk  -at-   tulane  -dot-   edu,