Stanford University



We want a diverse classroom. If you are a student who is not from the Computer Science department, Management Science & Engineering department, or Symbolic Systems program, there may be some flexibility in these prerequisites. Please speak to the instructor or post on Piazza.

CS 147 or equivalent experience in design thinking is the first prerequisite for this course. This class moves quickly and assumes that you already have learned the basics of the design process and have executed a significant design project previously. This class focuses deeply on subsets of the design process. If you have never taken a design or HCI course, you could probably understand the content but you would not be well prepared to integrate it into the broader process.

CS 142 or equivalent web programming experience in HTML, Javascript and CSS is the second prerequisite for this course. The prerequisite exists because all students will need some fluency in building interactive web sites to complete the project. Every student must make a significant contribution to their team's implementation; students who are unable to do so should not take the class. That said, some may do more of the programming work, and others more of the user testing work. Project teams will benefit from being multidisciplinary.

Bring a sketchbook, pen and laptop

Buy a sketchbook and pen as described in Project 2, and bring it with you to all class meetings. Use it liberally, in and out of class.

Here are some local Art Supplies stores where you can snag those sketchbooks:

  • University Art

    2550 El Camino Real, Redwood City, CA 94061

  • Accent Art

    392 California Avenue, Palo Alto, CA 94306

Bring a laptop to class. This is a course requirement because of the hands-on work we'll do. If the laptop's battery won't last the whole class, arrive early to get a seat near a plug. (And you may want to bring an extension cord.) Please restrict your laptop use to class-relevant activities, like doing the exercises or taking notes. No Facebook, email, etc. Why? It distracts other students, not just you.


This class is titled HCI Design Studio because its goal is to give you an advanced design studio experience. Studio is a central component of class: each studio is headed by an industry professional with years of experience in design and user experience. Thank you to the Computer Science department for financial support for studio instructors.

Studios will provide you an opportunity to meet in smaller groups in order to discuss and reflect on assignments and project progress. They will focus on interactive critique sessions, as well as specific activities intended to supplement and expand on ideas from lectures.

Students must sign up for their studio on the first day of class.

Assignments and Grading


The class consists of four projects (P1–P4). Projects will have intermediate deadlines where we can give you feedback. These deadlines will give credit for submitting a complete milestone, but will also receive a check-minus/check/check-plus evaluation as you consider how to move forward. You will share progress and deliverables in studio. The final project culminates in a presentation and poster at the end of the quarter in front of invited design jurors.

Late assignments will not be accepted. There are two reasons that assignments need to be submitted on time. First, to be able to provide you with rapid feedback about your work, the teaching staff begins looking at assignments immediately. Second, you'll present your work in studio, and you need to be prepared to participate.

There are rubrics beneath each assignment that explain how you and the staff will grade your submission. Different columns represent different scores.

Submission Procedure

To submit an assignment, go to From there, go to CS247 (either from clicking on CS247 from the Dashboard or by clicking on Courses). Then click on Assignments -> P1 (for example) (left menu) -> Submit Assignment (top right).

After uploading your file, click Submit Assignment.

For group submissions, only one member needs to submit the deliverables for the whole group.

Grade breakdown

The course grade is broken down as:

  • Projects: 90pts
    • P1: 5pts
    • P2: 20pts
    • P3: 25pts
    • P4: 40pts
  • Participation: 10pts (5pts for studio participation, 5pts for team participation)


Letter grade only: the "credit/no credit" option is not available. We have learned through hard experience that teams that are composed of students on different grading outcomes tend to end up in flames.


It is very important to us that all assignments are properly graded. The teaching staff works extremely hard to grade fairly and to turn around assignments quickly. We know what you work hard, and we respect that. Occasionally, mistakes happen, and it's important to us to correct them. If you believe there is an error in your assignment or exam grading, please submit an explanation in writing to the staff within seven days of receiving the grade. We will regrade the entire assignment to ensure quality. No regrade requests will be accepted orally, and no regrade requests will be accepted more than seven days after receipt of the assignment. Regrade requests must be respectful; we will not consider any regrade requests containing disrespectful language.


Design is a contact sport. Attendance is required for both lecture and studio. Trust us, this makes the class much better. If you miss more than two class periods, we will reach out and contact you to find out what's going on.

Lecture is not a traditional stand-and-teach lecture. It is interactive, and will involve a number of activities that can't be caught up later. We expect you to be active at the class scale and also locally at your tables. Your participation grade in the class will reflect this.

Studio is where the action is. Sharing your work and discussing designs with others is an important part of your design education. Therefore, studio attendance is also mandatory.

You are allowed two excused absences for the quarter without penalty; thereafter you will receive zero credit for the missed studio. To receive an excused absence, you must ask your studio instructor in advance, and receive an acknowledgment from the studio instructor.

  • Excusable absences include family emergencies, athletic competitions, job interviews, and presenting at a conference. It does not include wanting to leave early for long weekend or vacation.
  • Attending another class during lecture or studio is not an excusable absence.
  • Varsity athletes who would like to miss more than two studios to participate in athletic competitions must make any request before the end of the first week of class. No exceptions will be granted after the study list deadline.

Encouraging An Open Design Environment

The open exchange of ideas and the freedom of thought and expression are central to the class’s goals. These aims require an environment that recognizes the inherent worth of every person and group, that fosters dignity, understanding, and mutual respect, and that embraces diversity.

It's possible for even well-intended students to accidentally alienate your peers. Your designs can make unwelcome assumptions that don't fit some lives, and it's also possible for your critiques and conversations to constitute what's called harassment. Harassment means unwelcome or even hostile behavior, including speech, that intimidates, creates discomfort, or interferes with a person's participation or opportunity for participation. That behavior will shut the person down in class or studio, and that is simply not fair and not something we want in an open design environment. Harassment can involve nationality, age, color, creed, disability, gender, sexual orientation or any other protected status. It also extends to unwelcome sexual advances. A response that the participant was “just joking,” or “teasing,” or being “playful,” is not acceptable. If you have witnessed or experienced any harassment, please let an instructor know privately and promptly.

Frequently asked questions

What's the amount of time involved in the class?

There's a healthy amount of work involved. As with any design experience, you get out what you put in. Great projects explore broadly and dive deep, and needfinding, design, implementation and evaluation take time to do well. Projects will escalate in terms of ambition throughout the quarter. Expect that the final project will be a major effort in the last few weeks of class.

The class uses HTML and Javascript. Can our group use iOS programming?

We recommend against it. We choose technologies that give you a lot of interaction power for very little upfront co st. Others can take many hour s to get running. Most g roup problems arise when one person strongarms their teammates into using another technology. Late in the quarter, it turns out that only one person can really do the wo rk, and that ca uses all the problems you can i magine. If you use the technology stack we teach, we will teach you key techniques and the TAs will help you if you get stuck. With other technologies, you're off-piste: we can't save you, and it can get awfully cold when the sun goes down. With that information, the choice is yours.

Do I have to go to studios?

Yes. Attendance at studios is mandatory.

When d oes the class m eet?

Mondays and Fridays, 3:30-5:20. There is n o separate time for studio; studio meetings wi ll happen during regular class hours. Class does not meet Wednesday.

Can I have an extension? I have a lot of work in other classes, I'll be out of town, I'm generally overwhelmed...

No. It's not because we're callous — we've all been in your shoes. Two reasons: 1) because sharing wo rk in studio is integral to the class, there's no p ractical way to offer extensi ons. 2) Psychology teaches us that people consistently believe they'll have more time in the future than in the present -- and that it's a fallacy. When you pick classes for the quarter, make sure not to overcommit. In our experience, you'll learn more and have a better resume by doing a great job in a smaller of classes, rather than trying to take as many units as humanly possible and doing a mediocre job with all of it.

When do we form groups?

You will form groups within the studio as each new group project begins. Depending on the assignment, we will either assign teams, or let you choose. We will strongly encourage you to form new groups for each new gro u p project. During team formation make sure to ask yo ur potential teammates two questions. 1) When are you available to me et? 2) What level of performanc e to you intend to achieve? This will help you find like-minded teammates.

One or more of my teammates aren't pulling their weight...

In classes as in life, some team problems are inevitable. As soon as you encounter subpar performance by a teammate: talk to them and accurately record their performance in your team assessment. There are many benefits to speaking up early. First, you've made your expectations clear so your teammate can adjust their performance. Second, it's on record in case things get worse later. Past performance is the best predictor of future performance, and transparency is the best management tool. If you speak up early, we can help. If you wait until late in the q uarter to speak up, you share responsibility f or the problem — and there's little we can do.

...Can I fire them or quit?

If you have a serious problem with your teammate(s), email them with your concerns, cc'ing your TA, s tudio inst r uctor, or professor, requesting that the team at tend office hours to discuss the issue. If this discussion doesn't ameliorate the issue, you may notify your teammate(s) via email (cc'ding the instructor) of your intentio n to quit/fire them unless performance improves. Finally, if performance doesn't improve, you may email your teammate(s) (cc'ing the instructor) with your resignation/firing. A teammate who quits or is fired is responsible for future assignments on their own. This short essay by Oakley et al. provides great advice on diagnosing 'hitchhikers' and dealing with them effectively.

I would like to take another class that overlaps this class. What should I know?

Class attendance is required because the in-class material and exercises connect the principles taught through lecture to the design project work. In short: CS 247 is an attendance-required course.

A personal issue (health, family event, other commitment) will take me away from class. What should I do?

Most importantly, let your studio instructor, TA and your team know ASAP. The sooner we hear from you, the more we can help. If you give your team a heads-up quickly, they're sure to be empathetic. If you just disappear for a few weeks, they'll be unlikely to want you back. Even if you have a good reason, no one likes being left out in the cold.

Fairness requires us to grade on performance, not desire. Think about if this issue came up when you were about to take the SAT — or if it came up in a job. Realistically, if you're away for more than a week, you have two choices: you can push forward and accept lower performance, or you can drop the class and retake it when you have more time.

My friends and I have a great idea we'd like to work on. Can we use it as our project?

Design praxis means being open to currently unseen alternatives. If you have an idea for a project at the beginning of the class, give yourself the benefit of the doubt and set it aside. Explore around its edges. Trying to bend our rules to make your previous idea fit typically results in poor projects — not because your idea is bad, but that its current problems are not a good match for a design thinking course. Take it to an entrepreneurship class. At the end of the class, you will have acquired skills to execute your idea far more competently than you would right now.

I have a question that's not answered here. How do I contact the teaching staff?

If you have a question, post it to the class Piazza forum — don't send email. This includes all questions about assignment clarifications and class requirements. The reason: you may think you're the only one with this question. With over one hundred students, someone else is bound to be interested. Answering all questions in a public place means that every student has access to the same information. It's both efficient and fair.

If you missed class (or will miss class) and would like to find out what's covered, review the syllabus materials then ask a fellow student to fill you in. Do not send email -- it's your responsibility.

Also, you're welcome to come to office hours and ask any question you want. You can ask questions about classes, internships, design, graduate school, jobs, or simply come to say hi, listen to other students questions, or share your background and interests. Office hours are for you, and Michael and the teaching staff really value your presence and questions.

With so many students, we unfortunately cannot accommodate requests to meet outside of office hours. We trust that if your question is important, you can find a way to make the time to come to office hours.