The information presented in this course is easy to digest and on point when discussing the identification of security vulnerabilities. The information related to ciphers, hash functions, threat model description, cryptography usage, OWASP, various security vulnerabilities (sql injection, cross site scripting, permissions, authentication via cookies and sessions, etc) were all fairly modern (I think?) and well explained. WebGoat and Burp were cool tools (once I got them working...) and their associated labs (while not required for completion) were useful and interesting.
While the information was good and fairly well presented in general, I think this class would be greatly improved with an integrated jupyter notebook for the java programming sections. This would allow auto-graded input/output based assignments. Additionally create more jupyter notebook assignments in each module to further solidify chapter topics. The labs were difficult to setup: the tools themselves seem to be fairly old and required a bit of configuring to get them to work correctly. The assignment is out of date: javax has been deprecated since the release of java 9 in 2017; the assignments should be updated to use the latest technologies. If a jupyter notebook was used the above problems would be solved, as the lab/assignment environment would be pre-configured correctly. Additionally, this would guarantee all students access to the same development environment and that all the necessary packages are available.