jypi
ExploreChatWays to LearnAbout

jypi

  • About Us
  • Our Mission
  • Team
  • Careers

Resources

  • Ways to Learn
  • Blog
  • Help Center
  • Community Guidelines
  • Contributor Guide

Legal

  • Terms of Service
  • Privacy Policy
  • Cookie Policy
  • Content Policy

Connect

  • Twitter
  • Discord
  • Instagram
  • Contact Us
jypi

© 2026 jypi. All rights reserved.

Courses/Computer Science 30/Orientation and Setup

Orientation and Setup

22 views

Get set up with tools, workflows, and habits for creative coding with JavaScript and p5.js.

Content

1 of 15

Course overview and expectations

Sass + Clarity: CS30 Orientation Edition
3 views
beginner
humorous
sarcastic
computer science
gpt-5-mini
3 views

Versions:

Sass + Clarity: CS30 Orientation Edition
Chaotic Gen-Alpha Overview

Chapter Study

Watch & Learn

YouTube

CS30 — Orientation and Setup: Course overview and expectations

Welcome to CS30: where recursion meets caffeine and your brain learns to think like a machine (but funnier).


Hook: Why you should care (other than grades)

Have you ever wanted to build something that doesn’t immediately crash? Or explain to a friend what an algorithm actually does without using interpretive dance? Good. This course is the bridge between 'I kind of get programming' and 'I can design, analyze, and defend code like a slightly dramatic lawyer.'

This page tells you what CS30 is, what we expect from you, and — most importantly — how to get set up so you can stop wasting time on environment issues and start writing code that (mostly) works.


What is CS30? (Short, sweet, not terrifying)

CS30 is an intermediate-level computer science course focused on:

  • Problem solving and algorithms (reasonably efficient stuff, not mythical optimization)
  • Software design and testing (how to not ship bugs like it’s 1999)
  • Version control and collaboration (Git: your new best frenemie)
  • Project work that simulates real-world development (yes, teamwork included)

Prerequisites: CS10/CS20 or equivalent programming experience. If you can write functions, loop without crying, and reason about arrays/structures, you’re in.


Learning objectives (what you'll actually be able to do)

By the end of CS30, you should be able to:

  1. Design algorithms for common problems and reason about their complexity.
  2. Implement and test robust code using modular design.
  3. Use Git for version control and collaboration.
  4. Communicate technical ideas clearly in writing and orally.

Ask yourself: Which objective makes you nervous? That's your target for the first month.


Course structure & assessment (aka how the grading cookie crumbles)

Item Weight Notes
Homework (weekly) 40% Individual, autograders + manual review
Midterm project 15% Small team project, design doc required
Final project 25% Bigger team project; demo + report
Quizzes / Participation 10% Short, low-stakes; helps your attendance record
Labs / Git checkpoints 10% Setup verification and small tasks

Questions: Are projects collaborative? Yes. Is plagiarism tolerated? No. Is there mercy? Only if you ask early and have a good reason.


Policies you should read but didn't until now (read them now)

  • Late policy: Small grace period for one assignment per semester; otherwise 10% per day unless you have documented extenuating circumstances.
  • Collaboration: Discuss concepts freely. Share algorithms in pseudocode only. Code sharing is allowed for pair programming sessions only and must be disclosed. Copying = 0 on both assignments and a visit to Academic Integrity Office.
  • Academic integrity: We use similarity tools and manual inspection. Be original. Cite help and collaborators.
  • Accommodations: Reach out early to the instructor and disability services.

Pro tip: Treat the syllabus like a contract. Break it, and the contract bites back.


Communication channels (where to yell into the void)

  • Course LMS (announcements & grades) — check daily. Yes, daily.
  • Discussion forum / Slack — questions, peer help, memes (use channels appropriately).
  • Office hours — listed on the syllabus; come with a specific question or to show your debug timeline.
  • Email — for private, urgent issues (expect 48-hour response max on weekdays).

Why multiple channels? Fast questions go to Slack; grade disputes go to email; existential crises go to office hours.


Tech setup checklist (do this before the first lab)

Follow these in order. Do not skip. Skipping is how bugs multiply like rabbits.

  1. Install your IDE (recommended: VS Code) and extensions: language support, linter, git plugin.
  2. Install Git (latest stable) and set your identity:
git config --global user.name 'Your Name'
git config --global user.email 'yourid@university.edu'
  1. Create your school Git account / link to GitHub or GitLab as instructed.
  2. Clone the starter repository for Week 1 (link on LMS) and run the test suite.
git clone https://gitlab.university.edu/cs30-starters/week1.git
cd week1
./run_tests.sh   # or python -m pytest
  1. Confirm your submission workflow: push to your repo, open a merge request / submit via LMS.
  2. Join the course Slack / discussion forum and post a friendly hello + your setup status.

Common failure modes: wrong repo URL, forgetting to run the test script, using the wrong Python/Java version. If you hit a wall, screenshot terminal + error and bring it to office hours.


Weekly rhythm (what your life will look like)

  • Monday: Lecture and release of homework
  • Wednesday: Recitation or lab session (hands-on)\
  • Friday: Short quiz or checkpoint
  • Sunday night: Homework due (usually 11:59pm)

Think of it as a TV series: lectures are trailers, labs are episodes, homeworks are the plot twists.


How to succeed (or at least not fail spectacularly)

  • Start assignments early. Bugs love last-minute code.
  • Write tests. Even two simple ones save hours of pain.
  • Use Git branches for features. Commit early, commit often.
  • Pair up for pair programming days; explain your code out loud.
  • Read feedback and iterate — grades are less important than learning.

Engaging question: What’s one thing you can do this week to move from confused to confident? Make a plan and execute it.


Closing: TL;DR and first actions

Bold promises you should remember:

  • Do the setup checklist before Week 1 lab. Without it, you're just an angry terminal error.
  • Read the syllabus. Know the rules; they will know you.
  • Use office hours early. Instructors love early adopters (and coffee).

Final inspirational (and slightly dramatic) thought:

Learning to program is learning to speak with a machine. It’s awkward at first, but the machine is patient — it just gives you cryptic errors and waits. Be patient back.

First actions right now:

  1. Install VS Code + Git
  2. Clone the starter repo and run tests
  3. Post in the course Slack: your name, pronouns (optional), and 'I set up my environment'

See you in lab. Bring curiosity, snacks, and a screenshot if something explodes.

0 comments
Flashcards
Mind Map
Speed Challenge

Comments (0)

Please sign in to leave a comment.

No comments yet. Be the first to comment!

Ready to practice?

Sign up now to study with flashcards, practice questions, and more — and track your progress on this topic.

Study with flashcards, timelines, and more
Earn certificates for completed courses
Bookmark content for later reference
Track your progress across all topics