Course Information

Table of Contents


Assignments & Grading

Projects (50% of total grade)

  • 💻 Projects serve as the bulk of our coursework and include shorter coding exercises as well as longer creative programs.
  • Projects will typically follow this workflow:
    1. A link to a GitHub template repository will be provided as starter code. A repository, or “repo,” is like a project folder that contains code files.
    2. You will write your code in the GitHub Codespaces IDE. An IDE is an “Integrated Development Environment,” which means an application where you can write and run code.
    3. Your completed project will be submitted as a link on Blackbaud.
  • 💯 GRADE IMPROVEMENT POLICY: You may re-submit projects for a full RE-GRADE, but you must email me to let me know which project, and it must be completed at least one week BEFORE the end of the current quarter.
    • When re-working your projects, you are encouraged to come to office hours for help or more feedback. I am way more likely to grade your work favorably if you’ve shown effort towards improving your skills…
    • Coding is an iterative process which means it is VERY normal not to have your programs working perfectly the first time! Programmers often have to edit their code many times.
  • LATE WORK POLICY: Late projects may only receive up to 75% credit if submitted UNDER one week late, or up to 50% credit if submitted OVER one week late.

Whenever you submit work late, especially after the assignment has been graded on BlackBaud, you must SEND ME AN EMAIL! Otherwise I will not be notified.

  • Projects are graded on a 5-point scale, and EXTRA CREDIT is always available to encourage effort and creativity. See the rubric section below for details.
PROJECT GRADING RUBRIC

Programming projects are evaluated via a qualitative system considering a program’s efficiency, legibility, correctness, completeness, comments, etc. The grading rubric employs a 5-point scale. The assignment score is then adjusted to be out of 10 points, such that students earn a baseline of 50% credit for submitted work. Extra credit may be awarded for exceptional effort!

EVALUATION SCORE PERCENT
A submission that exceeds standard expectations, often reflecting additional work beyond the requirements or gets the job done in a particularly elegant way. Rarely awarded, but well-earned. 6/5 110%
A submission that satisfies all the requirements for the assignment and demonstrates sufficient effort. It reflects solid understanding and a job well done. 5/5 100%
A submission that meets most of the requirements for the assignment, possibly with a few small problems. Alternatively, it may meet all of the base requirements but through a "bare minimum" effort. 4/5 90%
A submission that has several problems that cause it to fall short of the requirements for the assignment. It may also demonstrate some misunderstanding of the underlying concepts. 3/5 80%
A submission that has extremely serious problems (i.e. the program does not compile or run), but nonetheless shows some effort and understanding. 2/5 70%
A submission that shows little effort and does not represent passing work. 1/5 60%
Assignment “submitted” but has insufficient evidence of individual work. 0/5 50%

Homework (30% of total grade)

  • 💬 Homework is assigned in the form of a CodeCollab: like posting on a discussion board, but instead of talking about a book or article, the class has a shared goal of figuring out how some 🔍 mystery code 🔍 works.

CodeCollabs are always due on Fridays @ 11:59PM

  • How it works: At the beginning of each week, I will post a DISCUSSION assignment on Blackbaud that includes a GitHub repository link to a working program that you will analyze collaboratively.
    • To earn full credit, you must post at least two (2) comments: one main post, and one response to a classmate.
    • See our course website’s CodeCollab Instructions page for detailed guidelines.
  • LATE WORK POLICY: Late homework may only receive up to 75% credit if submitted UNDER one week late, or up to 50% credit if submitted OVER one week late.

Whenever you submit work late, especially after the assignment has been graded on BlackBaud, you must SEND ME AN EMAIL! Otherwise I will not be notified.

Participation (20% of total grade)

  • 👥 Participation is graded weekly (up to 2 points max per class period) and will be evaluated based on adherence to these key values: being respectful, prepared, and engaged.
    • Being respectful of your community means being mindful of and kind toward your environment, and the people within – this includes arriving on-time to commitments.

⏰ If you are over 5 minutes late, you must first get a LATE PASS from the Upper School Office and then enter the classroom QUIETLY as to not disrupt the class. Unexcused lateness always results in a deduction of 1 point for the day, and unexcused absence results in a deduction of 2 points (a 0/2 for the day).

  • Being prepared for class means you have your laptop ready (unless otherwise instructed) within the first 5 minutes of class. It also means you arrive with a positive attitude and are ready to learn!
  • Show you are engaged by volunteering answers/comments, staying on task, and completing classwork as directed. You are expected to take your own notes while new material is being introduced, to contribute during group activities, and be open to collaborating with all classmates.

NON-NEGOTIABLES: Be aware that tardiness, off-task behavior, and side conversations will have a negative impact on your grade. However, consistently arriving on-time with a positive attitude is a great way to earn an easy 100% for your participation grade ☺︎

Expectations & Policies

AI Usage Policies

  • Generative Artificial Intelligence (GenAI) tools like ChatGPT are a significant technological advancement that has the potential to support your learning, especially in Computer Science. But with any new technology, there are significant limitations and risks associated with its use, misuse, and overuse. Source
  • To support appropriate use of GenAI tools in your learning, these three steps should always be taken when determining if and when to use GenAI tools:
  1. Check with your teacher if the task or assignment can be completed with the support of a GenAI tool.
  2. If the tool is allowed, track your conversation with the tool by screenshotting or copy-pasting the interaction in a document that you can share with your teacher.
  3. Cite the use of the tool when submitting your work. Here is an example with APA style formatting: OpenAI. (2023). ChatGPT (Mar 14 version) [Large language model]. https://chat.openai.com/chat

If these steps are not followed, your use of GenAI will be considered an academic integrity violation.

EXAMPLES OF AI USE

These examples are specific to my Computer Science classes and are subject to change as we explore appropriate AI usage throughout the year. Rule of thumb: Always check with your teacher before using GenAI tools!!!

Appropriate Use Inappropriate Use
  • Help brainstorm creative ideas
  • Explain concepts in a different way
  • Critique and provide feedback on code
  • Teach how to add a new, specific feature to an already working program
  • Completing any written assignments, like homework discussions
  • Asking GenAI to write a significant portion of code for a program
  • Copying any amount of code without understanding how it works
  • Not asking for permission to use GenAI tools, not checking for inaccuracies, and not citing work with GenAI

Other Classroom Policies

  • 🗓️ Office Hours / Extra Help is held in Room #71 on Tue/Wed/Thu during 4th period (10:45-11:25). Drop-ins are welcome, meaning there is no need to let me know in advance if you plan on stopping by during 4th period.

You may email me to schedule an appointment at a different time, ONLY IF you have other classes during my scheduled office hours. Include a list of your free periods in your email!

  • 📝 You can leave a sticky note on my desk for anything you want me to remember to do.
    • Ex: “Please re-grade my project”
  • 🖊️ Student supplies (pens, pencils, sticky notes, etc.) will always be available to borrow, located up front by the whiteboard. No need to ask, but please return pens/pencils after class!
  • 🤞 SILENTLY SIGNAL that you need to leave for the bathroom or water by holding up crossed fingers. Just make sure I acknowledge you are leaving the room first - wait for me to give a thumbs up 👍
  • 📱 NO-PHONE ZONE! → as per the new BWL Upper School policy, phones must be locked up downstairs while you are in the building.
    • If you are caught with a cell phone in class, it will be confiscated immediately and you will be sent to the Upper School office.
  • 🖥️ Using your personal LAPTOP is a privilege.
    • If you are caught using your laptop for things like iMessage, Discord, etc., you will be required to use the DESKTOP COMPUTERS in the classroom for a period of time.
  • 😊 Common courtesy stuff:
    • Student actions that interfere with teaching or learning in the classroom will NOT be tolerated. Please do not spend your class time on distracting apps, having side conversations, or doing work for other classes.
    • Respect others’ property. Avoid touching or writing on anything that does not belong to you (including tables, books, teacher’s belongings, walls, etc.)
    • Please pick up after yourself, don’t leave trash behind, and don’t expect that other people (like your teacher) will clean up your messes.

🧠 Finally, some mindset tips: I strongly encourage you all to be proactive about your learning, embrace creativity, take responsibility for your work, and never be afraid to ask for help!!! There are no bad questions, and chances are if you are wondering about it, someone else in the class is too. If you feel most comfortable waiting until after class, that is okay, but do keep communication open between us.