In this paper, we report on our experience teaching a Compiler Design class using the principles of Equity Grading. The main features of the course were that it was a Hyflex course where the grade depended on mastery of 9 programming skills, 12 take home exam skills and 1 participation skill. Each of the programming skills was assessed with a programming assignment that had flexible deadlines, and could be revised and resubmitted. The exams skills were assessed using 6 exams with a Mastery Learning Test model. Participation was assessed by the percentage of in-class questions that were answered with a good faith effort; there were 3-5 in-class questions in each class. We also used an app to record all interactions with the class including homework, exams, and in-class questions. This allowed us to perform detailed analysis of student behavior and performance. In particular we were able to quantify the challenge level of the exams and programming assignments in terms of the amount of time it took the students to attain mastery. Our main results were that a student’s choice of synchronous or asynchronous attendance did not impact their performance and that the equity grading model allowed students for whom the course was very challenging to still attain mastery of almost all skills. Finally, in a survey at the end of the course, students reported substantially less stress and believed that they were able to learn the skills more fully due to the Equity Grading features of this class.