Programming ability is fast becoming a required skill. A decade ago, the ability to code was considered more of a specialist skill. As the digital world increases in importance, we are beginning to see a shift in our understanding of programming as a skill; from a specialist skill to a basic one. In the context of cyber security, having an understanding of how computer programs are designed and how computers process information is of critical importance to understanding how we defend against digital threats.
We will use Python to learn programming. Python is multi-functional language and is user friendly, especially for those new to programming. The skills learned in this course with Python can be used more broadly in different contexts and with different programming languages.
Students will develop an awareness of the main concepts in programming.
- Understanding of the key vocabulary
- Understanding of how computers follow instructions
- Understanding of basic data structures
Students will be able to create small, meaningful programs that accomplish goals
- Students can implement required functions as needed
Students will create connections between programming and the wider cyber security context
Mode of instruction
Lecture, assignments and exam
There will be a written examination with close and short questions; there will also be regular assignments.
The final grade for the course will be the weighted average of 70% examination and 30% assignments. Both components need to be at least 5.0 and the final grade should be at least 5.5 to pass the course.
It will be possible to retake the exam.
It will not be possible to resubmit assignments.
The teacher will inform the students how the inspection of and follow-up discussion of the exams will take place.
There is no textbook or reading list for this course.
Any literature and reading materials will be announced during the course.
- You have to sign up for courses and exams (including retakes) in uSis. Check this link for information about how to register for courses.
It is assumed that students have no previous computer programming experience.