CHIPS 2.5: Ruby Intro

Due: 2026-09-03 11:59 PM PT
Estimated difficulty: ••

This is part of Module 2. Dates come from the draft FA26 schedule and are tentative until confirmed on the Schedule.

This is your first CHIPS (Coding/Hands-on Integrated ProjectS) — a warm-up with the Ruby language, which we use for the first two-thirds of the course.

Goals

  • Get your development environment and course accounts (GitHub, Gradescope) fully working.
  • Practice basic Ruby: methods, strings, collections, and iterators.
  • Write simple object-oriented Ruby — classes, attributes, and inheritance.
  • Get comfortable with the edit–run–test loop you’ll use in every later CHIPS, including running the provided RSpec tests locally before submitting.

What you’ll do

You’ll complete a set of short, independent Ruby exercises: writing methods that manipulate numbers, strings, and arrays; using blocks and iterators idiomatically (“poetry mode”); and defining a small class hierarchy. Each part comes with a test suite so you always know where you stand.

Before you start

Work through the Module 2 videos and readings through §2.4 — especially the sections on Ruby idioms. This assignment is much faster if you learn the idioms first rather than writing Java-in-Ruby.

Logistics

  • Getting the code: see Getting the Code below — you clone your personal repo from the course GitHub organization and pull in the public starter code.
  • Autograding: submit to Gradescope; you may submit as many times as you like before the deadline. The autograder is a way for you to check your work and your understanding.
  • Extensions: everyone automatically gets a 2-day no-penalty extension; see the extension policy.
  • Collaboration: you may collaborate with your team of 4, and discuss high-level approaches with anyone. Sharing code outside your team is academic misconduct. See the AI Policy before using AI tools.

AI Use Policy

This assignment follows the course AI Policy — read it before using any AI tools, and remember that you must be able to explain everything you submit.

Getting the Code

Every student gets a personal repository for this CHIPS in the course GitHub organization, named cs169/fa26-YOUR_GITHUB_USERNAME-chips-2.5. (If you haven't accepted your invitation to the cs169 organization yet, do that first — ask on Ed if you need an invite.)

git clone git@github.com:cs169/fa26-YOUR_GITHUB_USERNAME-chips-2.5.git
cd fa26-YOUR_GITHUB_USERNAME-chips-2.5

Your personal repo starts out empty: clone it, pull in the starter code as shown above, and push your work to your personal repo (never to the public starter repo).

This assignment is also listed on bCourses.

Submission

When you are done, submit your file to Gradescope. You only need to upload the following files:
You may submit more than once before the deadline; only the final submission will be graded. It is your responsibility to check that the autograder on Gradescope runs as expected after you upload your submission.

Back to Top

Accessibility Nondiscrimination

Copyright ©2026, Regents of the University of California and respective authors.

This site is built following the Berkeley Class Site template, which is generously based on the Just the Class, and Just the Docs templates.

View all course offerings