Teaching

Module Leader

MSc Secure Programming (INFR11098) module page

  • Gave lectures, created coursework and exam, marked coursework and exam, led TAs and practicals
  • Course Security Outcomes
    • Know how to respond to security alerts specifying CVE ID numbers which identify software issues
    • Identify possible security programming errors when conducting code reviews in languages such as Java, C or Python
    • Define a methodology for security testing and use appropriate tools in its implementation
    • Apply new security-enhanced programming models and tools which help ensure security goals, e.g.,with access control, information flow tracking, protocol implementation, or atomicity enforcement.
  • Sample Course Feedback
    • Student oaUJ: "Please encourage all lecturers to use Piazza as effectively as Dr Arnaboldi"
    • Student zAQT: "BEST COURSE IN INFORMATICS PERIOD"
    • Student qpHn: "I knew very little about security before this course, and I believe I learnt a lot"

Project Supervision

    • Joe Hutchesont (Co-Supervisor with Prof. Aspinall, UG, University of Edinburgh), 22/23 - "Automated Identification of Connected Autonomous Vehicle Risk Scenarios"
    • Agathe Petillot (Co-Supervisor with Prof. Aspinall, UG, University of Edinburgh), 22/23 - "Automated Identification of Connected Autonomous Vehicle Risk Scenarios"
    • Fayz Siddiqui (Co-Supervisor with Prof. Aspinall, UG, University of Edinburgh), 22/23 - "Automated Identification of Connected Autonomous Vehicle Risk Scenarios"
    • Henri-Louis Boisvert (Co-Supervisor with Prof. Komandantskaya, MSc, Heriot-Watt University), 21/22 - "Evaluating the Performance of Different Reinforcement Learning Methods for Autonomous Racing"

Teaching Tools

    Coursework Automatic Judge System and Marking Tool (CSC362 - Cryptography - Newcastle University)

    • Made a submission and marking website for Cryptography
    • Automated judge system evaluating code quality and structure
    • Automated marking of coursework through testcases and automated feedback system
    • Invoved: PHP, MySQL, Java, JUnit

    CTF Competition Coursework Submission Tool (CSC3124 - System and Network Security - Newcastle University)

    • Developed Coursework Tool for Capture The Flag (security competition)
    • Generated Unique Security challenges for students
    • Created virtual security environments for security testing
    • Involved: C, Java, python, NodeJS, virtual machines, networking

Teaching Assistant Positions

    • Security Analysis of Complex Systems, (MSc) CSC8207, 2019-2020
    • System Security, (MSc) CSC8102, 2019-2020
    • Cryptography, (UG) CSC3621, 2016-2020
    • System and Network Security, (UG) CSC3124, 2016-2020
    • Software Engineering, (UG) CSC2021, 2016-2020
    • Understanding Concurrency, (UG) CSC3324, 2016-2020
    • Website Construction and Management (Server-side), (UG) CSC2021, 2016-2017