COM SCI 188
Special Courses in Computer Science
Description: Lecture, four hours; discussion, two hours; outside study, six hours. Special topics in computer science for undergraduate students taught on experimental or temporary basis, such as those taught by resident and visiting faculty members. May be repeated for credit with topic or instructor change. Letter grading.
Units: 4.0
Units: 4.0
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.
Most Helpful Review
Fall 2020 - Most enjoyable CS class ever taken at UCLA. Probably the most useful one as well for those who want to follow a SDE career path in web development, next to Cho's CS144. John is always so clear. He's the kind of person who can always explain concepts in the most optimal way. I would say some extent of web development experience is preferred though. It will give you a much easier time understanding stuff. You would want to first understand how to build a web app before you think about how to scale them. John will cover some of the basics, but he mainly focuses on the scalability part. Also, he is from the industry, and he will invite some guest speakers from the industry as well. So, another plus for those who are industry-oriented. Overall, definitely worth taking! Such a pity that this class probably won't open every quarter, and he probably won't even teach regularly at UCLA.
Fall 2020 - Most enjoyable CS class ever taken at UCLA. Probably the most useful one as well for those who want to follow a SDE career path in web development, next to Cho's CS144. John is always so clear. He's the kind of person who can always explain concepts in the most optimal way. I would say some extent of web development experience is preferred though. It will give you a much easier time understanding stuff. You would want to first understand how to build a web app before you think about how to scale them. John will cover some of the basics, but he mainly focuses on the scalability part. Also, he is from the industry, and he will invite some guest speakers from the industry as well. So, another plus for those who are industry-oriented. Overall, definitely worth taking! Such a pity that this class probably won't open every quarter, and he probably won't even teach regularly at UCLA.
AD
Most Helpful Review
Spring 2017 - Highly recommend Prof. Scalzo. Really nice guy, and he does a good job of explaining concepts. I believe this class is now a regular CS class and not a 188 anymore, but when I took it basically all you did was a quarter long project and a final exam. The final was just memorization of concepts covered in his slides, and for the project you could pretty much do anything with machine learning and medical data. So the workload was basically up to you: you could either just do a really simple project, or if you had a personal interest you could go for something more ambitious. Either way I think he tended to grade on the easier side, especially if he saw you were putting effort into it. Highly recommend this class if you want to learn about machine learning with medical imaging and do a practical project.
Spring 2017 - Highly recommend Prof. Scalzo. Really nice guy, and he does a good job of explaining concepts. I believe this class is now a regular CS class and not a 188 anymore, but when I took it basically all you did was a quarter long project and a final exam. The final was just memorization of concepts covered in his slides, and for the project you could pretty much do anything with machine learning and medical data. So the workload was basically up to you: you could either just do a really simple project, or if you had a personal interest you could go for something more ambitious. Either way I think he tended to grade on the easier side, especially if he saw you were putting effort into it. Highly recommend this class if you want to learn about machine learning with medical imaging and do a practical project.