Year 4 Resources
Index
Semester 1
- F20BC/F21BC - Biologically Inspired Computation
- F20CN/F21CN - Computer Network Security
- F20DL/F21DL - Data Mining and Machine Learning
- F20GA/F21GA - 3D Graphics and Animation
- F20IF/F21IF - Information Systems Methodologies
- F20RO/F21RO - Intelligent Robotics
- F20RS/F21RS - Rigorous Methods for Software Engineering
- F20SA/F21SA - Statistical Modelling and Analysis
- F20SC/F21SC - Industrial Programming
Semester 2
- F20AA/F21AA - Applied Text Analytics
- F20AD/F21AD - Advanced Interaction Design
- F20AN/F21AN - Advanced Network Security
- F20BD/F21BD - Big Data Management
- F20DV/F21DV - Data Visualisation and Analytics
- F20EC/F21EC - e-Commerce Technology
- F20FO/F21FO - Digital Forensics
- F20GP/F21GP - Computer Games Programming
Biologically Inspired Computation (F20BC/F21BC)
Linear Algebra
- Knowledge of Fundamentals of Linear Algebra, especially vector and matrix operations
- Matrix Introduction - Math Insight
- Matrix Vector Multiplication - Math Insight
Calculus
- Basics of Calculus, especially calculating derivatives and chain rule derivative
- Differentiation - Khan Academy
- Chain Rule Introduction - Khan Academy
- Probability and Statistics
- Probability & Statistics - Open Learning Initiative
- Statistics (STAT 516) - Purdue University
- Basic Probability Theory and Statistics - Towards Data Science
- Statistics and Probability - Khan Academy
- Any programming language with vector operations, preferably Python or Matlab. But Java can also do (however, you will miss the vector operations, unless you use a library such as jama).
-
Python (see also other references)
- Python for Beginners - Programming with Mosh (YouTube)
- Python Tutorial - Full Course - Programming with Mosh (YouTube)
- Python Courses - python-course.eu
-
Matlab
-
(Optional)
Some knowledge of data structures basic (Arrays, LinkedList, Stacks, Queues) and advanced (Disjoint Sets, Self-Balancing Trees, Segment Trees, Tries, quadtree…).
These are needed to understand implementation of meta-heuristic algorithms.
Computer Network Security (F20CN/F21CN)
Python
- F28PL Python resources
- Python Essential Training - LinkedIn Learning Course
- Python Quick Start - LinkedIn Learning Course
Bash Scripting
- BashGuide
- Learning Linux Command Line - LinkedIn Learning Course
- Learning Bash Scripting - LinkedIn Learning Course
Security Concepts:
Online Courses
- University of Washington: Cybersecurity: The CISO’s View - edX Course
- Universidad Carlos III de Madrid: Cyber Security Basics: A Hands-on Approach - edX Course
- University of Washington: Introduction to Cybersecurity - edX Course
- KU Leuven: Web Security Fundamentals - edX Course
- Delft University of Technology: Cyber Security Economics - edX Course
Books
- Computer Security and the Internet: Tools and Jewels from Malware to Bitcoin
- Cryptography: An Introduction
- Handbook of Applied Cryptography
- Security in Computing
Data Mining and Machine Learning (F20DL/F21DL)
Basic knowledge of Python is required. This includes some Python libraries like NumPy, Pandas and Matplotlib. (Scikit-Learn & TensorFlow is a plus)
- Basic Python
This is very brief, and should be followed by completing a further full Python online course of your choice.
3D Graphics and Animation (F20GA/F21GA)
C++
-
Information Systems Methodologies (F20IF/F21IF)
Intelligent Robotics (F20RO/F21RO)
Rigorous Methods for Software Engineering (F20RS/F21RS)
Statistical Modelling and Analysis (F20SA/F21SA)
Industrial Programming (F20SC/F21SC)
C#
- Foundational C# with Microsoft - freeCodeCamp Certification
(Covers all the key basics required to know before the course begins, from ) - Learning C# - LinkedIn Learning Course
- Getting Started as a C# Developer - LinkedIn Learning Path
(Covers almost all the courses suggested in the course page) <!– - C# Essential Training 1: Types and Control Flow - LinkedIn Learning Course - C# Essential Training 2: Generics, Collections, and LINQ - LinkedIn Learning Course
(Chapter 7 on LINQ) - C#: Delegates, Events, and Lambdas - LinkedIn Learning Course
- C#: Interfaces and Generics - LinkedIn Learning Course –>
Python
- F28PL Python resources
- Crash Course in Python - Coursera
Applied Text Analytics (F20AA/F21AA)
- Basic knowledge of Machine Learning models and Evaluation Criteria
- Preferably take F20/F21DL in Semester 1
- Knowledge of Machine Learning libraries i.e. Scikit-Learn & TensorFlow
- Scikit-Learn Tutorial
Advanced Interaction Design (F20AD/F21AD)
Advanced Network Security (F20AN/F21AN)
Big Data Management (F20BD/F21BD)
Data Visualisation and Analytics (F20DV/F21DV)
-
F20DV/F21DV Course Page
- D3.js Documentation
- Data Visualization Certification (D3.js) - freeCodeCamp Certification
e-Commerce Technology (F20EC/F21EC)
Digital Forensics (F20FO/F21FO)
- Digital Forensics - My CS - YouTube
Computer Games Programming (F20GP/F21GP)
Theme Moonwalk