Skip to main content Skip to secondary navigation

Designing for Gradient Spaces

Main content start

Course Information

  • Course ID: CEE 342 (Spring 2024)
  • Instructors: Prof. Iro Armeni
  • Teaching Assistants: Jianhao Zheng, Martin Bucher
  • Lectures: Mondays 1:30 - 4:20 PM in Y2E2 292A
  • Credits: 3 or credit/no credit
  • Online Material: Canvas
  • Course Github:
  • Office Hours:
    • Iro Armeni: Wednesdays 1-2PM, Y2E2 233
      • move OH from Wed April 17 to Tue April 16
      • No OH on Wed May 15th
    • Martin Bucher:  Wednesdays 11.30AM-12.30PM, Y2E2 278A
    • Jianhao Zheng:  Fridays 1-2 PM, Y2E2 176 (move to 10-11 AM on Friday April 5th)
  • For CEE MS SDC Students: It is included in the Requirements, under Building, Infrastructure, and Urban System Development
  • We welcome undergrads, MS, and PhD students

Course Description


The course delves into designing for gradient spaces. What are gradient spaces?
Gradient spaces (read me!) are physical spaces that blend from the 100% physical (real reality) to the 100% digital (virtual reality) and anything in between. Through a series of lectures, discussions, and hands-on projects, it will explore what it means to design in such physical-digital spaces on three core levels; from design thinking to architectural design and technological design, with a focus on mixed reality. It will consider the above from the perspective of occupants of these spaces that have different physical and digital needs and preferences. The goal of the course is to create cross-disciplinary interactions to connect physical space design and digital application design, towards the creation of physical and digital experiences that are suitable and centered to users. Students will be exposed to all three levels of design, however they are expected to focus only on one for their final project.

Learning Goals

By the end of the course students will acquire design and implementation skills in developing components that blend physical and digital reality in different degrees, while supporting such a living experience. Specifically, they will:

  • Gain a fundamental understanding of what are and how to create components of gradient spaces.
  • Learn to approach design of gradient spaces under the dual-lens of physical and digital
  • Develop skills to create and evaluate the components and acquire hands-on experience with tutorials, studios, and the final project.
  • Interact with a range of domain backgrounds, either through guest speakers from industry and academia or through fellow classmates.


The course is set up so as to include students from different departments. Although there are no dependencies on other courses, this is not an introductory course. In order for students to have a successful experience, they are required to have: (i) coding experience, if they would like to develop mixed reality or other applications for their final project; (ii) architectural design knowledge, if they would like to design a space; (iii) prototyping knowledge, if they would like to create a prototype; etc.

Performance Evaluation

The grading for this course will be a combination of 3 assignments, 5 readings, and a final project.

Throughout the course students will be asked to work on assignments that would either require critical thinking, research in prior work, or hands-on interaction with a pre-existing system. The course also includes a final project. Students will be asked to creatively design and develop an application based on the material covered in the course lectures. Assignments are designed to complement the final project. The course does not have a final exam. Students can be evaluated with a letter grade or credit/no credit. The grading weights are as follows: 30% for assignments (10% per assignment), 5% for readings (1% per reading), and 65% for the final project (10% for the project proposal report, 15% for the midterm report, and 40% for the final report).

Evaluation criteria per assignment and project milestone are offered on Canvas under each relevant entry in "Assignments". When evaluating the course projects, we will assign projects for review to a member of our team that was not the assigned TA so as to remove bias. We will also ask for quick feedback from your project supervisors and the assigned TA. The final project grade will take place by considering all feedback during a discussion with the teaching team. All members within a team will receive the same grade for their project, unless there are obvious signs or information of non-equal participation and work.

Course Schedule


April 11. Introduction
April 82. Architecture: Building physical, digital, and gradient worlds
April 153. Technology: Devices
    Guest lecture by Prof. Gordon Wetzstein, EE, Stanford
    In-class project proposal presentations
April 224. Design Thinking
    Lecture by Emily Callaghan, Design School, Stanford
April 295. Interpreting the world around us: Visual Machine Perception & Scene Understanding
May 66. Metrics and Evaluation
May 137. In-class presentations
May 208. A day in the Gradient Life 
May 27No Class: Labor Day
June 39. Concluding Remarks, Final Project Presentations & Demo


Date Tutorial
April 1 Introduction
April 8 1. Hello World: Building and Deploying an MR Application
April 15 2. Exploring the SDK I: Hand Pose & Gesture Tracking, Interaction With Virtual Objects, User Interfaces
April 22 3. Design Thinking Workshop
April 29 4. Exploring the SDK II: Scene Geometry, Spatial Audio
May 6 5. Leveraging & Integrating Pre-Trained Models for Your Apps
May 13 Midterm Presentations
May 20 6. A Day in the Life With Gradient Spaces
May 27 No Class
June 3 Final Project Presentation


April 7Reading 1 + Form teams and choose project
April 8Finish pre-tutorial setup before class
April 14Project proposal report and slides
April 15Project proposal presentation in class
April 21Reading 2
April 28Reading 3 + Assignment 1
May 5Reading 4
May 12Midterm project report and slides + Assignment 2
May 13Midterm project presentation in class
May 19Reading 5
May 26Assignment 3
June 3Final project presentations + demo day in class 
June 10Final project report+ video

All the online submission deadlines are due by 11:59 PM on the specified date. Presentations in class are due before the start of the class.

Student Projects

Over the quarter, students will work on a project related to Designing for Gradient Spaces in collaboration with a supervisor. Students are required to form groups of 2-4. We will provide a list of project suggestions, but you are free to propose your own project. The projects are first come - first serve.

Project Proposal

Each student group is required to hand in a project proposal by the announced deadlines. Make sure to talk to your assigned supervisor and discuss the project with them while planning your proposal. The proposal should be 1-2 pages describing what you want to do in the project and how you plan to achieve your envisioned results. A good place to strat is to identify the physical and digital connection, as well as the algorithmic and technical challenges within the project. Try to address each of them individually and explain your considered solutions; also make an attempt to think about alternatives if you believe a particular approach is unstable or likely to fail. Teams will be asked to present their project proposal during a designated lecture. In any case, you will submit a presentation file along with your report. We will provide both templates. 

Midterm Progress Check

At this milestone, you are required to submit a 2-page report. Describe your progress on the topic w.r.t. the questions you should be answering. You don't need to show progress in all questions, but consider this as a good checkpoint about half-way before the final presentation and report are due. You are encouraged to raise open questions. You will also present in class what you did so far to get feedback. You are encouraged to raise open questions. This is a possibility for us to steer the project and help you, as well as to get feedback from your fellow classmates. In any case, you will submit a presentation file along with your progress report. We will provide both templates.

Final Project Delivery

You will present your final project at the last day of the course. You will also submit a final 8-pages report including tables and figures but excluding references, as well as the presentation file.  We will provide you with templates.
Final demos will be held right after the end of the final presentations. More details on this will follow soon.

Available Devices

We have the following devices available: iPads, Apple Vision Pro, Meta Quest Pro. You can also use your own phones and webcams. For robotics applications we can find space for you to work, however we do not have robotic devices available at this point. However, supervisors will also provide you with devices, if they have special needs.

Important Info