Skip to content
dibs
You are looking at Summer Session A 2026. That term is over, so these are last term's numbers rather than seats you can take. dibs holds 246 sections for Summer Session A 2026, read 30 days ago. Separately, it has finished 400 of the 3,572 courses on its current checking list for this term. Future-term coverage is incomplete, so a course with nothing here may simply not have been reached yet. Back to Fall 2026

COM SCI 31

Introduction to Computer Science I

4 units

Sections & times

Lecture and discussion.

Summer Session A 2026: 1 lecture and 5 discussions. 1 lecture and 3 discussions are open. The oldest of these readings was 30 days ago.

Grades

3.24

Average grade awarded in COM SCI 31. Not a student rating: this is what the grades were.

In the A range

55%

of the 5,530 letter grades

D, F or W

7.0%

of every letter grade awarded, plus withdrawals

Taken pass/no pass

-

the registrar has this letter grade only this term

The registrar's own records: 5,530 grades over 16 terms, Fall 2021 to Fall 2025. Every instructor is pooled here.

What is inside that record

3 of those terms are summer sessions, and summer sessions are counted here.

The table below splits them, and term averages across those 16 terms ran 2.87 to 3.82.

Historical grades for STAHL, HOWARD ALAN, across recorded terms. The course summary above includes all professors.

  • A+ 132 · 12.3%
  • A 336 · 31.3%
  • A- 161 · 15.0%
  • B+ 109 · 10.1%
  • B 102 · 9.5%
  • B- 53 · 4.9%
  • C+ 36 · 3.4%
  • C 43 · 4.0%
  • C- 14 · 1.3%
  • D+ 15 · 1.4%
  • D 21 · 2.0%
  • D- 1 · 0.1%
  • F 51 · 4.7%
  • I 1 of 1,075

Percentages are of the 1,074 letter grades. Grey bars are non-letter outcomes: incompletes (I).

How the non-letter outcomes are counted

They are excluded from the GPA entirely rather than scored, because counting a P as a 4.0 would be a fabrication.

By instructor

Predicted GPA, raw average, sample size, terms, A range and the workload reviewers reported for every instructor with a grade record in this course
Instructor Predicted GPA Raw n Terms A range Workload Summer Session A 2026
SMALLBERG, DAVID A reviews ↗ 3.18 3.18 3,304 9 51% average not teaching it
HUANG, BRUCE KUOLONG reviews ↗ 3.38 3.38 1,152 4 62% light not teaching it
STAHL, HOWARD ALAN reviews ↗ 3.27 3.27 1,074 5 59% light Open, 7 seats left
Why Predicted is not the Raw average

“Predicted” is shrunk toward the course average, which is itself shrunk toward the department, so an instructor with a handful of students sits near the course mean rather than topping the list.

Grade records describe outcomes. For what a course is like to take, read student reviews written on dibs below or follow the separate external review link.

Reviews for COM SCI 31

Workload and assignments

Work types reported in BruinWalk reviews of this course, across recorded instructors and terms. They may differ from this term's syllabus.

What the work looks like

  • 2 exams, said by 14 reviewers
  • 1 quiz, said by 1 reviewer
  • 7 projects, said by 5 reviewers

Read from 92 reviews 17 days ago. dibs counts only what a review actually states, so a kind of work nobody mentioned is absent rather than zero.

Read the source reviews

From the registrar's catalog

Lecture, four hours; discussion, two hours; outside study, six hours. Introduction to computer science via theory, applications, and programming. Basic data types, operators and control structures. Input/output. Procedural and data abstraction. Introduction to object-oriented software development. Functions, recursion. Arrays, strings, pointers. Abstract data types, object-oriented programming. Examples and exercises from computer science theory and applications. Letter grading.

Sections in Summer Session A 2026

You enroll in the discussion, not the lecture, so a discussion's status is the one that decides whether you get in. A lecture can read open while every discussion under it is full.

Seat counts as of : the oldest of these 6 readings. That term is over, so nothing has moved since.

Final enrollment, averaged across each term's sections: between 163 and 372 a term over 13 terms, summer excluded, most recently 196 in Fall 2025. That is the shape across years, not this term, which is above.

From the people who took it

Student reviews

What taking COM SCI 31 was like: the work, the teaching, and what students wish they’d known.

Your experience could be the first.

No student reviews are available to read on dibs for this course yet. Took it? Tell the next person what helped, what was hard, and how you spent your time.

Looking for more perspectives?

External reviews are separate and do not count toward the dibs rating.

Read reviews on BruinWalk

Community guidelines

Seats over time in Summer Session A 2026

How each lecture has filled since dibs first saw it.

A dot is a reading where something moved: the seat count, the status, or the waitlist.

What a flat run means, and where a line starts

Flat between dots means it did not drift, it held and then jumped, and a line starts when dibs first saw that lecture rather than reaching back before it existed. A lecture that has never moved draws a flat line across the whole window, and one with two or three readings draws a line joining them, which is too few to read a trend from.

Lec 1 · Stahl, H.A. · 173 of 180 enrolled

Unchanged over 2 minutes

173 of 180 · 7 left in its discussions

Both readings say 173 of 180.

2 Sep 03:052 Sep 03:07
1 hour plotted. dibs read it.173 of 180 enrolled at the newest reading, 30 days ago, with 7 left in its discussions. Seats from 2 Sep 03:05 to 2 Sep 03:07, 173 to 173. The line is flat across the whole window: recorded enrollment counts match. Changes between reads may be missed. Every hour plotted carries a read, so a count that did not move here was checked and did not move.
How readings and alerts work

A reading and an hourly record are different things, and most charts here hold more of the second missing than present. dibs has taken readings of a section since long before it began keeping an hour-by-hour log of when it looked, so the empty stretches are dibs saying it was not keeping that log yet, not that it looked and found nothing. That is the age of the record and not a fault.

Seat counts show the last successful read, not live availability. Refreshes can be delayed by request limits or upstream interruptions. Watched sections receive priority, but an hourly update for every section is not guaranteed.

The registrar can change a seat count between our checks. Alerts depend on dibs detecting an opening and completing delivery; a quiet watch does not prove that no seat opened. Check the registrar before enrolling.