Professor
Peter Reiher
AD
Most Helpful Review
Winter 2024 - The tests are difficult but manageable. The labs/homeworks are pretty easy, especially if you attend discussion where the TAs went over the hard parts of each lab. There is a lot of course content to be taught in one quarter, and to be honest, it felt like this class was made to be taught in a semester instead. Be prepared for a lot of reading.
Winter 2024 - The tests are difficult but manageable. The labs/homeworks are pretty easy, especially if you attend discussion where the TAs went over the hard parts of each lab. There is a lot of course content to be taught in one quarter, and to be honest, it felt like this class was made to be taught in a semester instead. Be prepared for a lot of reading.
Most Helpful Review
Spring 2023 - Professor Reiher is a great lecturer. He's able to take relatively boring topics and make them engaging. There were four projects, and while they can be difficult you can probably manage to finish each in a day or two. While lectures and workload are fine, the exams were insanely hard. You absolutely cannot rely on the exams being open note and open internet. The questions connect multiple different topics, so you need to have a solid understanding of every topic.
Spring 2023 - Professor Reiher is a great lecturer. He's able to take relatively boring topics and make them engaging. There were four projects, and while they can be difficult you can probably manage to finish each in a day or two. While lectures and workload are fine, the exams were insanely hard. You absolutely cannot rely on the exams being open note and open internet. The questions connect multiple different topics, so you need to have a solid understanding of every topic.
Most Helpful Review
Winter 2020 - For Secure Software Development. Truly a great class - it’s essentially CS 136 Part 2: practical project time. There are no exams, and few lectures. Most lectures are designated as team time - where you meet with your team and work on your project/reports. The entire class revolves around proposing, designing, and building a piece of software in a secure fashion. You do this in a group of 4-5. Your grade is entirely based on the reports you write, and the project demo. First, you write a short project proposal. Then, you write a detailed design document, mainly focusing on security. These are done in weeks 1 and 2, respectively. Then, you work on the project. You’re expected to complete the project by the end of Week 7, at which point you’ll demo it. Then, you conduct a security review of your project, and write a report on it. After that, you have a week to fix bugs/issues you found. From there, you do a security review of another team’s project, and write a report. Finally, you have one final report which details your final implemented design - including all the security fixes you made after your own security review. It really is a great class. Reiher and the TAs are always available and willing to help, and encourage you to try new ideas and challenge yourself. It’s very much student-driven: it’s entirely up to you what you make, and how you split up your time building your app/service (procrastinate at your own peril). The only requirement Reiher makes for project proposals is that they have some significant security element (say, processing payments, or storing passwords). I feel like this class and CS 136 should be mandatory for graduation - they’re that valuable in my opinion. 136 gives you baseline theoretical knowledge of computer security, and small practical applications in the labs. This 188 gives you a complete real-world experience in building a secure piece of software. Reiher is knowledgeable, helpful, and has put together a truly practical class. Take this if it ever is offered while you’re at UCLA.
Winter 2020 - For Secure Software Development. Truly a great class - it’s essentially CS 136 Part 2: practical project time. There are no exams, and few lectures. Most lectures are designated as team time - where you meet with your team and work on your project/reports. The entire class revolves around proposing, designing, and building a piece of software in a secure fashion. You do this in a group of 4-5. Your grade is entirely based on the reports you write, and the project demo. First, you write a short project proposal. Then, you write a detailed design document, mainly focusing on security. These are done in weeks 1 and 2, respectively. Then, you work on the project. You’re expected to complete the project by the end of Week 7, at which point you’ll demo it. Then, you conduct a security review of your project, and write a report on it. After that, you have a week to fix bugs/issues you found. From there, you do a security review of another team’s project, and write a report. Finally, you have one final report which details your final implemented design - including all the security fixes you made after your own security review. It really is a great class. Reiher and the TAs are always available and willing to help, and encourage you to try new ideas and challenge yourself. It’s very much student-driven: it’s entirely up to you what you make, and how you split up your time building your app/service (procrastinate at your own peril). The only requirement Reiher makes for project proposals is that they have some significant security element (say, processing payments, or storing passwords). I feel like this class and CS 136 should be mandatory for graduation - they’re that valuable in my opinion. 136 gives you baseline theoretical knowledge of computer security, and small practical applications in the labs. This 188 gives you a complete real-world experience in building a secure piece of software. Reiher is knowledgeable, helpful, and has put together a truly practical class. Take this if it ever is offered while you’re at UCLA.
AD
Most Helpful Review
Fall 2020 - This quarter was the first time this version of ethics was offered. The lectures are very long and the nice part was that it was CS-oriented. Nevertheless, near middle to end of the quarter, only around 30 ppl attend lecture... I don't think attending lecture is necessary to pass the class since our exams were all open book. Aside from the lecture, attending discussions were mandatory and your discussions experience will greatly depend on the TA. My TA never had a discussion that was over 1 hour long and often ended within 30 min. Aside from one midterm and one final, we had to write two papers that were over 3000 words that took quite a bit of time. Aside from the essay, this course does not require much other effort unless you want to read the readings. The readings aren't necessary imo to do well on the tests since you can ctrl-f through them. I felt like my TA was definitely not an easy grader, and there wasn't a large curve in the class which is why I decided to PNP this class.
Fall 2020 - This quarter was the first time this version of ethics was offered. The lectures are very long and the nice part was that it was CS-oriented. Nevertheless, near middle to end of the quarter, only around 30 ppl attend lecture... I don't think attending lecture is necessary to pass the class since our exams were all open book. Aside from the lecture, attending discussions were mandatory and your discussions experience will greatly depend on the TA. My TA never had a discussion that was over 1 hour long and often ended within 30 min. Aside from one midterm and one final, we had to write two papers that were over 3000 words that took quite a bit of time. Aside from the essay, this course does not require much other effort unless you want to read the readings. The readings aren't necessary imo to do well on the tests since you can ctrl-f through them. I felt like my TA was definitely not an easy grader, and there wasn't a large curve in the class which is why I decided to PNP this class.