EECS16A, Designing Information Devices and Systems I

Fall 2023

Scheduling Updates

08/19/23: We are currently still updating the website for Fall 2023 and the information reflected may be out of date.

copied password to clipboard!
changed site font!

Schedule

Lecture videos can be found in the bcourses media gallery

(Please scroll horizontally if you're viewing this on your phone.)

Calendars

Homework party is held in the Wozniak Lounge and in-person office hours are held in Cory 144MA. The queue for office hours is at oh.eecs16a.org

Discussion Schedule

Monday and Wednesday discussion sections cover different material, and you are very strongly encouraged to go to a discussion both days.

You can access discussion notes from TA's here: https://drive.google.com/drive/folders/1tIqeKzlZTppXjqvwEm_NnQ9qh_TFw44H?usp=share_link

Some discussion sections are tailored to certain groups. Feel free to attend these even if you do not identify with the group.

  • Standard (light blue)
  • Transfer (dark blue)
  • First-Year/Second-Year (orange)
  • First-Year (red)
  • CS Scholars (green)
  • Extended (yellow)
  • Exam Prep (light pink)

Resources

Ed (Ask Questions Here)

Homework Practice Problems

Textbook: Condensed Note Content Summaries and Practice Problem Solutions

This book consists of condensed sets of notes that summarize the important material from the course notes, as well as detailed solutions for the online Practice Problems! Here's the entire book and the Table of Contents. Individual chapters of the book (notes and solutions by practice set) can be found here (the links aren't perfect, you may need to scroll a tiny bit down for some chapters). A couple brief comments on using this resource:

  1. I recommend skimming the Introductory Chapter and the Conventions Chapter. These will provide some useful tips to keep in mind.
  2. Each chapter has a Relevant Information section and a Problems section. The first contains a (generally complete) summary of the corresponding content from the notes. The second contains the detailed solutions mentioned above.
  3. This is a new resource, and may well have errors or areas to improve in; if you spot something wrong and would like to mention it, or have feedback of any kind, please submit a feedback ticket.

Technology Needs (STEP)

Student Technology Equity Program (STEP). STEP provides laptops and other technologies for free and is for undergraduate, graduate, and professional students. It requires just a simple online application form. For details, see here.

Recommended Texts

Circuit Cookbooks

Extra Resources

Setting up How-To's

Past Exams

Past exams vary in scope from semester to semester, and may include topics that are not in scope for the current semester or module. Unavailable exams are indicated by N/A. In-scope topics for the current semester will be posted on Ed about a week before the corresponding exam.

Semester Midterm 1 Midterm 2 Final
fa22 pdf, sol pdf, sol pdf, sol
sp22 pdf, sol pdf, sol pdf, sol
fa21 pdf, sol pdf, sol pdf, sol
sp21 pdf, sol pdf, sol pdf, sol
fa20 pdf, sol pdf, sol pdf, sol
su20 pdf, sol pdf, sol pdf, sol
sp20 pdf, sol pdf, sol pdf, sol
fa19 pdf, sol pdf, sol pdf, sol
sp19 pdf, sol pdf, sol pdf, sol
fa18 pdf, sol pdf, sol pdf, sol
sp18 pdf, sol pdf, sol pdf, sol
fa17 pdf, sol pdf, sol pdf, sol
su17 pdf, sol pdf, sol N/A
sp17 pdf, sol pdf, sol N/A
fa16 pdf, sol pdf, sol pdf, sol
sp16 pdf, sol pdf, sol pdf, sol
fa15 pdf, sol pdf, sol pdf, sol
sp15 pdf, sol pdf, sol pdf, sol

Practice Sets: Links to Notes and Solutions

It is very strongly recommend that you try the problems themselves here before looking at the solutions below. The links for solutions are not perfect, so you may need to scroll to the bottom of the linked page to find them. Give feedback here.

Course Staff

Please add berkeley.edu to the end of all emails!

We also have 3 special emails for various purposes. Where applicable, please use these emails so that all relevant course staff can view the message. Note that we prefer for technical or content questions to go on Ed!

  • eecs16a.homework@: for any homework-related questions or concerns
  • eecs16a.lab@: for any lab-related questions or concerns
  • eecs16a@: for anything else (including exam-related/administrative questions or concerns)

Instructor


Laura’s research is in computational imaging, which brings together optical physics and computational algorithms to develop cameras and microscopes that can image efficiently in multi-dimensions. Laura's research spans optics, signals & systems, machine learning and bioengineering, and she's excited to show you how 16A principles can help you build a camera with just Scotch Tape and a sensor. Laura used to have hobbies like hiking, traveling and sleeping, but now has two little kids instead :)

Laura Waller
she/her/hers
waller@

Rikky Muller, PhD is an Associate Professor of Electrical Engineering and Computer Sciences (EECS) at the University of California, Berkeley where she holds the S. Shankar Sastry Professorship in Emerging Technologies. She is a Co-director of the Berkeley Wireless Research Center (BWRC), a Core Member of the Center for Neural Engineering and Prostheses (CNEP) and an Investigator at the Chan-Zuckerberg Biohub (CZB). Prof. Muller received her BS and MS degrees from MIT and her PhD from UC Berkeley all in EECS, and was a McKenzie Fellow and Lecturer of EE at the University of Melbourne in Australia. She was the Co-founder of Cortera Neurotechnologies, Inc. a medical device company that was acquired in 2019, where she held positions as CEO and CTO. Prior to her PhD she was an IC designer at Analog Devices. Prof. Muller was named one of MIT Technology Review's top 35 global innovators under the age of 35 (TR35), and one of MedTech Boston's top 40 healthcare innovators Under 40. She is the recipient of numerous fellowships and awards, including the IEEE SSCS New Frontier Award, the McKnight Technological Innovations in Neuroscience Award, National Academy of Engineering Gilbreth Lectureship, the Chan-Zuckerberg Biohub Investigatorship, the Keysight Early Career Professorship, the Hellman Fellowship, the Bakar Fellowship, the NSF CAREER Award, and is a Distinguished Lecturer of the Solid-State Circuits Society.

Rikky Muller

rikky@

GSIs



Hey everyone! I’m Anish! I’m a third-year EECS major from Tampa, Florida. This is my fourth time on staff, and I’m super excited to serve as a Head TA for 16A this semester and contribute to making this course a great experience for you all! I thoroughly enjoyed the content in 16A and hope you find appreciation for it as well! Outside the classroom, I enjoy hanging out with friends, hiking around Berkeley’s beautiful campus, listening to music, and traveling. My technical interests include robotics, machine learning, and chip design. Feel free to reach out to me about anything - I’d love to chat!

Anish Dhanashekar
Head/Admin/Dis
he/him/his
eecs16a@, aeroanish@

Hi, it’s Vivian! I’m a junior majoring in EECS and Business, originally from San Diego, CA. I'm currently exploring applications of AI/ML and tech in business. In my free time, I enjoy traveling, reading, eating (very) spicy food, and drinking matcha. Through linear algebra and circuit design, 16A showed me the power of mathematical tools and models in real world applications, and it's my mission to make 16A as rewarding and enriching for you as it was for me!

Vivian Wu
Head/Admin/Dis
she/her/hers
eecs16a@, vivianwuc25@

Hi! My name is Kanav, and I'm a third-year EECS major. I loved taking 16A because it showed me how to model and interact with the real world using linear algebra and circuits. On campus, I'm involved with computational genomics research. In my free time, you can find me running the Fire Trails, watching sitcoms, and listening to all of Taylor Swift's albums. I look forward to meeting all of you!

Kanav Mittal
Head/Admin/Dis
he/him/his
eecs16a@, kanavmittal@

Hi! I'm Sunash, a 3rd year EECS PhD student studying modeling, control, and optimization of electric power systems with lots of renewable resources. In my free time, I enjoy hiking, camping, and exploring new places.

Sunash Sharma
Content/Dis
he/him/his
sbsharma@

Hi! I am a graduate student in the EECS department, but I primarily work with the MCB department. My research interests include deep learning and microscopy. In my free time, I enjoy hiking and traveling around, reading books, and cooking. I am also into numismatics, and love collecting currencies of different countries. Feel free to reach out to me about anything!

Sayan Seal
Content/Dis
he/him/his
sayan_seal@

Greetings! I'm Jiarui, a 3rd year Ph.D. student in Electrical Engineering, specializing in circuit design. My passions include computer hardware, driving, cycling, and I'm excited to engage with you all in class!

Jiarui Zou
Content/Dis
he/him/his
jiarui.zou@

Hello! My name is Aniruddh, and I'm a 5th Year M.S. student in Materials Science from sunny San Diego! I was in your shoes just a few years ago, and graduated this spring! This is my fourth year on staff 🤩, and every semester has been better than the last! In my free time, I enjoy cooking, reading, and going on hikes in the hills. Come talk to me if you're interested in learning about all the cool upper divs at Cal (EECS or otherwise), getting involved in research, or you're just bored :) Looking forward to another amazing semester!

Aniruddh Khanwale
Admin/Lab
he/him/his
akhanwale@

Hello! My name is Jack, and I'm a rising junior majoring in CS. I'm passionate about building things, with my current technical interests being in signals, communication systems, embedded systems, and applications in art and music. I see computers as being the 'glue' that holds together the components of a technological solution to an interesting problem, which is why I chose to study them. I also like to play guitar, make things, and explore the outdoors in my free time. I often tell my students not to 'suffer in silence'; please don't hesitate to reach out to me in and outside of lab!

Jack Kang
Lab
he/him/his
dongwon900@

Hi! I'm Lydia, a third year EECS major focusing on machine learning but also getting a minor in demography. I love 16A lab sections because of how fun the hands-on applications are, it's so cool to see a tangible use of the concepts we learn in class. In my free time I like playing board games, bullet journaling, biking, listening to podcasts, hitting the gym, and exploring museums. I'm excited to meet you all!

Lydia Ignatova
Lab
she/her/hers
lydiaignatova@

Hello! I'm Oscar, I am a third year physics and computer science student, originally from Mexico, but lived in the US for a very big chunk of my life. I like semiconductors, and other cool physics stuff like quantum computers. Outside of school, I like playing video games, hanging out with friends, and watching and playing sports mostly soccer and football. Looking forward to having a good time in lab!

Oscar Gallegos
Lab

oscar.tapia.g@

Hey everyone! I'm Eric, a 3rd year CS student born and raised in San Diego. I like to play video games, but especially fighting games and Tetris. If you like either of those things, I'd love to talk with you about it! This is my first semester as a TA, and I hope I can show you all why lab is the absolute best part of 16A :)

Eric Garcia
Lab
he/him/his
e.garcia@

Hi! I’m Nikhil and I’m a third year EECS major. Coincidentally this is also my third semester on course staff! My technical interests are low-level programming, computer architecture, and HV PCB design. In my freetime I read books, play board/card/video games, look at airplanes, and bicycle. I’m so excited to delve back into circuits and meet everyone in lab! Feel free to reach out about the course, about lab, or about anything else!

Nikhil Ograin
Lab
he/him/his
ncograin@

Hi! I'm a junior majoring in EECS. I loved taking 16A as a student and I hope you will too! In my free time, you can find me hiking, trying out new coffee shops, or listening to music. Feel free to reach out to me about anything :)

Amy Song
OH/Grading
she/her/hers
amysong@

Hi, everyone! I'm a 3rd year CS + DS double major from Seoul, South Korea. This is my 4th semester on 16A staff team. My technical interests include various aspects of hardware and software--from computer architecture to robotics & control. I like playing the piano in my free time unless I'm stuck in the library lol. Any recommendations for classical or new age piano pieces are always welcome! Looking forward to another amazing semester!

SooHyuk Cho
Ed/OH/Grading
he/him/his
soohyuk.cho@

Hi! My name is Divya and I'm a 2nd year EECS major from San Diego. In my free time, I like to run, play field hockey, and watch bad horror movies with my friends. 16A was one of my favorite classes last year, and I hope you'll enjoy it as well. Please don't hesitate to reach out if you have any questions!

Divya Ramesh
OH/Software/Grading
she/her/hers
divyaramesh@

Hi! My name is Thomas and I am a senior studying Computer Science and Applied Math from Portland, Oregon. In my free time I enjoy board games, watching an absurd amount of Youtube, and reading books. I love listening to indie, alternative and folk music but I'm always willing to try out new music. Feel free to talk to me about anything!

Thomas Chen
OH/Grading
he/him/his
tochen920@

¡Hola, hola! Welcome to Fall 2023's iteration of Defense Against the 16-Arts! My name is Alex, and I am here to aid you along every step of the way. Don't hesitate to reach out if you have any questions about course material, classes, research, or anything along those lines. If you need a break from 16A, we can talk about learning languages, traveling the globe, your favorite books, sports, and more! Looking forward to a wonderful semester with you, my friend!

Alex Sanchez
Ed/OH/Grading
he/him/his
alexso@

Hi! I'm a second-year majoring in CS with an interest in most aspects of software engineering. I really enjoyed taking 16A as a student, and I hope you will too! In my free time, I like to read, (attempt to) crochet, and bake. Feel free to reach out to me about anything :)

Carolann Dong
OH/Grading
she/her/hers
carolanndong@

Hi everyone! I'm Kailash, a rising 2nd year studying EECS and physics. I’m interested in ML theory & hardware and condensed matter physics, and in my free time, I like to play music, read, and go on runs (in no particular direction). 16A was a great learning experience for me, so I'm excited to tutor this semester and meet you all!

Kailash Ranganathan
OH/Grading
he/him/his
kranganathan@

Hi! I'm a second year EECS major and I'm interested in computer vision and robotics! I'm also super into basketball (Lakers ftw), anime, and Star Wars! May the force be with you, and Plus Ultra :)

Rohan Aanegola
OH/Grading
he/him/his
rohanaanegola@

Policies

For a full list of course policies and the syllabus, see here.

About

EECS 16AB Course Coverage

EECS16AB was specially designed to ramp students up to prepare for courses in machine learning and design and are important classes to set the stage for the rest of your time in the department. A rough breakdown of the content in the classes is as follows:

16A:
Module 1: Introduction to systems and linear algebra
Module 2: Introduction to design and circuit analysis
Module 3: Introduction to machine learning

16B:
Module 1: Differential equations and advanced circuit design
Module 2: Introduction to robotics and control
Module 3: Introduction to unsupervised machine learning and classification

FAQ

Q1: Should I take EECS16A my first semester at Cal?

A1: If you have taken an AP calculus class, then the answer is yes! EECS16A has no prerequisites other than calculus and is designed with freshmen and incoming transfer students in mind. It is designed to be taken alongside 61A. Furthermore, we reserve seats for freshmen and incoming transfer students in the class, so you are essentially guaranteed a spot in the class your first year. It will be harder to get into the class as an upperclassman.

Q2: Should I take EECS 16A and EECS 16B before or after CS 70?

A2: EECS16A and 16B were specifically designed to help ease the transition to CS70 for incoming students. These classes provide an introduction to proofs and the kind of mathematical thinking that is very useful in a class like CS70. We recommend you take 16AB before taking CS70, this should help you have an easier time in CS 70.

Q3: Should I take MATH 54 before taking EECS16A?

A3: EECS 16A is designed to be taken without any prerequisites, so there is no need to take MATH 54 before EECS 16A. EECS 16AB teaches linear algebra with the intent of preparing you for courses like EECS 127 (Optimization) and EECS 189 (Machine Learning) and provides engineering and machine learning examples and applications for linear algebra. EECS 16AB also uses Jupyter notebooks and python so you can better connect linear algebra and computation.

Feedback

If you have suggestions for this website or see problems, feel free to let the software TAs know here.