Link Search Menu Expand Document

Syllabus

Table of contents

  1. Overview
  2. Course Meetings
    1. Lecture
    2. Labs
    3. Office Hours
  3. Policies
    1. Grades
    2. Assignments
    3. Exams
    4. Cheating
  4. Resources
    1. Material Attribution

Overview

CSCI100 is an introductory class designed for students with no formal exposure to computer science or programming. The goal is to provide a gentle but thorough introduction to computer science that will prepare students to either take further computer science courses, or use computer science in their field of study.

By the end of the course, students will learn

  • Variables, Expressions, Types
  • Input/Output
  • Logic and Control Flow
  • Functions
  • Testing, Asserts
  • Algorithms
  • Runtime and efficiency
  • Objects and Classes
  • Sets and Dictionaries

Course Meetings

Lectures, labs, and office hours are the main ways in which you will interact with your professor and TAs. You can see the weekly schedule of course meetings on the course schedule page.

Lecture

Lectures for this course will be 100% virtual. This class will use a flipped classroom model, where lecture videos will be sent out before class that you must watch. You will be expected to have watched the videos before class. Classtime will then be spent on answering student questions on the material, and working through practice problems. You are expected to come to each class, having watched the lecture videos, as there will be weekly quizzes given at a random time during class.

Labs

Lab for this course will be 100% virtual. Labs will allow you to apply the new concepts that you’re learning in lecture to broader, graded problems. You will be given problems to solve, that you’ll be able to work on with your peers in groups of 4. Your labs will be submitted on Mimir and graded by the Mimir autograder. Labs will be released each Wednesday evening, and will be due the following Tuesday at 11:59pm.

You should take advantage of labs as you can ask the professor or TAs for help on completing the assignments.

Office Hours

We will hold a mixture of in-person and virtual office hours at a wide variety of times. Virtual office hours will be held on Zoom, the link can be found at the course schedule page. In-person office hours will be held in Prof. Krentsel’s office. You are welcome to come for any reason, including course material questions, lecture clarifications, industry interview prep, career path discussions, or just to hang out.

As a course, we commit to making sure no student fails the class due to lack of class resources, so if you are behind or confused, please reach out for help. The course staff will make themselves as available as possible to help you.

Policies

Grades

The class will not be curved. Instead, your final grade will be based on buckets of your overall score in the class that will be decided at the end of the semester based on the difficulty of the exams, quizzes, projects, labs, and homework.

Your overall grade will be calculated using the following relative weights:

Assignment Type# of AssignmentsNumber DroppedWeight in Overall Grade
Midterm Exam(s)2023%
Final Exam1017%
Homeworks5015%
Labs12223%
Projects2017%
Quiz815%

Assignments

These details are subject to change during the semester, however the current plan of record is the following:

  • ~8 Quizzes - random time during lecture time, once a week.
  • 12 Labs - 1x per week. Work w/ partners, submit individually
  • 5 Homeworks - spread throughout the semester. Work individually, submit individually.
  • 2 Projects - Image Filters and Search Engine

Assignments will be due at 11:59pm, with a 10% penalty per each day that the assignment is late up to 5 days total.

Exams

Instead of one midterm and one final exam, this course will have 3 exams, spaced evenly across the semester, with the third exam happening during finals week. Exam 1 will be on Wednesday, September 22nd. Exam 2 is will be on Monday, November 1st. Exam 3 will take place during finals week.

Cheating

For all assignments in the course, you may discuss approaches to solving a problem or work in the same room on separate computers to individually solve a problem, but you may not copy and paste code or substantially copy ideas from another student. It can be tempting to cheat. Know that Mimir’s autograder has a very good plagiarism detector. Per Howard University policy, the first time an assignment is found to be plagiarized, the assignment grade will be zero-ed out for all students with matching code. The second time, all students involved will have their final course grade decreased by 1 letter grade (B going to a C, A- does to a B-, etc.). The third time, all students involved will be referred to the Dean’s office for academic dishonesty.

If I ask you how your code works and you do not know, it will be evident that you have copied it. Don’t take the risk. Despite this explicit warning, each year, a few students still cheat and are caught. I do not enjoy catching and penalizing students for plagiarism, but it’s necessary for

The course staff will work tirelessly to provide enough support for any student to get help and make it through the class. In exchange, we ask you to uphold academic integrity and not to plagiarize code or ideas.

Resources

This course website, csci100.org, will be your one-stop resource for the syllabus, schedule, lecture videos, and assignment links. Additionally, we will be using the following software.

Mimir You will get a link to sign up for this tool when we begin class. We will use Mimir for editing and turning in assignments. Note that Mimir may display a “grade” for you, but the official one is in Blackboard.

Piazza This term we will be using Piazza for class discussion. The system is highly catered to getting you help fast and efficiently from classmates, the TA, and myself. Rather than emailing questions to the teaching staff, I encourage you to post your questions on Piazza. You can find the class Piazza here.

Zoom In light of the large class size and COVID risks, our weekly lectures and labs will be taught virtually over Zoom. You can find the Zoom link for your section at https://csci100.org/schedule/.

Blackboard Your official class midterm and final grades will be published in Blackboard. You should already have a Blackboard account. Get in touch with your advisor if you can’t access the course on Blackboard. Other than occasionally syncing grades to Blackboard, we will not be using Blackboard.

Material Attribution

We’d like to thank UC Berkeley’s CS10: The Beauty and Joy of Computing and CS61A: Structure and Interpretation of Computer Programs, from which this course borrows high-level topics and organization. Course material will be created by Prof. Alex Krentsel, borrowing from past iterations of this course at Howard taught by GIR instructors.