← Archive home

Syllabus

Course Format

  • Length: 2 hours, once a week, in person (or hybrid, depending on availability).
  • Time & Date: Saturday or Sunday from 10am–1pm.

Contact Information

Course Description

This 12-week course offers a foundational introduction to SWE and ML/AI, designed in response to the emerging industry shift toward AI-integrated systems. New members will gain hands-on experience with Python programming, explore modern frameworks, and develop machine learning models including neural networks.

Prerequisites

  • Taken or concurrently enrolled in CS 61A / Data 8 OR have previous coding experience
  • No prior industry experience
  • Little to no prior web dev experience
  • Completed 1 or fewer upper-division CS/Data Science technical courses at UC Berkeley

Desired Course Outcomes

By the end of the 12 weeks, we hope you:

  • Are comfortable programming in Python and Java.
  • Know common data structures (Arrays, LinkedLists, Trees, HashTables)
  • Are familiar with frameworks such as PyTorch, Pandas, NumPy, scikit-learn
  • Have a basic understanding of Databases
  • Understand fundamental ML/AI concepts (optimization, neural networks)
  • Feel comfortable working in a team environment, similar to that found in industry

Course Content

The course will roughly follow this outline (subject to change based on member needs, popularity, and resources):

  1. Programming in Python
  2. Data Structures
  3. SQL and Databases
  4. Introduction to SWE
  5. Math for ML
  6. Classical ML

Course Outline

  • Weeks 1–4: Welcome! and Introduction to Programming in Python, Data Structures, and Introduction to SWE
  • Weeks 5–8: Databases and Math for ML
  • Weeks 9–12: Classical ML

Homeworks

Throughout the course, we’ll release homeworks that accompany lectures.

  • Deadline policy: Homework must be submitted on the day of the next lecture (no rolling extensions).
  • Homework parties: Weekly, right after lecture — a space to ask questions and work together with your fellow members.

⚠️ Failure to adhere to the above policies may impact your eligibility to become a client developer the following semester and attend Codebase social events.

Final Project

You’ll complete a final course project in teams of 3–4 people (with 1–2 client devs and 1–2 mentored devs).

  • Showcase: At Codebase’s banquet, where you’ll present everything you’ve learned ⭐⭐⭐
  • Requirements: Must incorporate full stack, databases, SWE practices, or machine learning
  • Logistics: Details announced in Week 10

👉 Think of an issue that matters to you — in your life, your community, or the world — and build a tech-powered solution!