diff --git a/modules/level-4/cm-1005-introduction-to-programming-i/README.md b/modules/level-4/cm-1005-introduction-to-programming-i/README.md index 3dbc7d6c..78a5f529 100644 --- a/modules/level-4/cm-1005-introduction-to-programming-i/README.md +++ b/modules/level-4/cm-1005-introduction-to-programming-i/README.md @@ -3,28 +3,28 @@ ### Table of contents - [Introduction to Programming I](#introduction-to-programming-i) -- [Professor(s)](#professors) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Recognition of Prior Learning](#recognition-of-prior-learning) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Essential reading](#essential-reading) - - [JavaScript](#javascript) - - [p5.js - JavaScript library](#p5js---javascript-library) - - [W3 Schools](#w3-schools) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [:heart: Notes](#heart-notes) - - [On REPL (see relevant sections)](#on-repl-see-relevant-sections) - - [Sleuth assignments](#sleuth-assignments) - - [Tips & Tricks](#tips--tricks) - - [Utils and aids (student created)](#utils-and-aids-student-created) - - [Text editor](#text-editor) - - [Configuring VS Code (optional)](#configuring-vs-code-optional) - - [Extensions](#extensions) - - [p5.js autocompletion](#p5js-autocompletion) - - [Conclusion](#conclusion) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Recognition of Prior Learning](#recognition-of-prior-learning) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Essential reading](#essential-reading) + - [JavaScript](#javascript) + - [p5.js - JavaScript library](#p5js---javascript-library) + - [W3 Schools](#w3-schools) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [:heart: Notes](#heart-notes) + - [On REPL (see relevant sections)](#on-repl-see-relevant-sections) + - [Sleuth assignments](#sleuth-assignments) + - [Tips & Tricks](#tips--tricks) + - [Utils and aids (student created)](#utils-and-aids-student-created) + - [Text editor](#text-editor) + - [Configuring VS Code (optional)](#configuring-vs-code-optional) + - [Extensions](#extensions) + - [p5.js autocompletion](#p5js-autocompletion) + - [Conclusion](#conclusion) --- @@ -36,11 +36,12 @@ variables, conditionals, functions and loops. You'll learn how to create interactive, graphical computer programs. You will also be introduced to basic object-oriented programming techniques. -## Professor(s) +### Professor(s) + - Dr. Edward Anstead - Dr. Simon Katan -## Topics covered +### Topics covered - Your development environment - Drawing in 2D @@ -53,79 +54,79 @@ introduced to basic object-oriented programming techniques. - Extending Objects - Constructor functions -## Assessment +### Assessment Coursework only (Type II) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1005_ITP1-Module-Spec.pdf) -## Recognition of Prior Learning +### Recognition of Prior Learning - At the time of this writing, you can apply for [automatic RPL](https://london.ac.uk/applications/how-apply/recognition-prior-learning/recognition-and-accreditation-prior-learning-3) for this module if you obtain the [IBM Applied AI Professional Certificate](https://www.coursera.org/professional-certificates/applied-artifical-intelligence-ibm-watson-ai). **Note:** If you don't have prior programming experience, the course offered by UoL is probably easier and the recommended way to go. -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1005_ITP1.pdf) -## Resources +### Resources -### Essential reading +#### Essential reading _"There is no required textbook for this module. The module draws on number of different, largely web-based, public resources as well as the resources produced as bespoke material for this module. The programming language is Javascript, with the p5js library used for graphical and interactive programming functionality. The main external resource is the set of online tutorials available from: [https://p5js.org/learn/](https://p5js.org/learn/)."_ _"Specific readings for each topic are listed with direct links to free online resources that provide additional material on the topics of this course."_ -### JavaScript +#### JavaScript -#### p5.js - JavaScript library +##### p5.js - JavaScript library - [p5.js](https://p5js.org/) - Official website to find [the reference guide](https://p5js.org/reference) and an [online editor](https://editor.p5js.org/) to practice. Next step: [p5.js libraries](https://p5js.org/libraries/). - [Examples](https://p5js.org/examples/) are also available to get started. - [The Coding Train](https://www.youtube.com/user/shiffman/playlists) (playlists) - Channel from Daniel Shiffman, a board member of `p5.js`. -#### W3 Schools +##### W3 Schools - [JavaScript Array Iteration Methods](https://www.w3schools.com/js/js_array_iteration.asp) - Will help in making your code more concise and readable. -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1005-introduction-to-programming-i/). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/introduction-to-programming-i). -### On REPL (see relevant sections) +#### On REPL (see relevant sections) - [Podcasts](../../../podcasts/) - [Websites](../../../websites/) - [YouTube](../../../youtube/) -### Sleuth assignments +#### Sleuth assignments -#### Tips & Tricks +##### Tips & Tricks - Each case in Sleuth has four stages. You have a maximum of **FIVE** attempts for each 'stage'. Attempt a 'stage' when you are confident. If you make a mistake, you will get a pop-up explaining what requirement you hadn't met. But if you exhaust your five attempts, fret not because, after some downtime (about 24 hours), you will be able to solve a variation of the same stage again. This will not affect your grade, and only the highest grade is counted. - Get familiar with finding precise coordinates in an image inside Brackets (text editor) [**note**: support for Brackets is ending on September 1, 2021. [VS Code](https://code.visualstudio.com/) is a good alternative]. If you are using VS Code, you can use the [Luna Paint](https://marketplace.visualstudio.com/items?itemName=Tyriar.luna-paint) extension to view image coordinates. - Practice all basic drawing functions with `p5.js` in the [online editor](https://editor.p5js.org/) before attempting to solve crimes. -#### Utils and aids (student created) +##### Utils and aids (student created) - JavaScript library with visual aids for solving case 202 stage 4 [utils4sleuth.js](https://gist.github.com/amilos/beb1eee1cbd334f1e9abca8c9772c725). - Python program to create directories for Sleuth cases [Make-Sleuth-Folders.py](https://github.com/BlairCurrey/Make-Sleuth-Folders) -### Text editor +#### Text editor - The officially recommended text editor for this module is still [Brackets](http://brackets.io/). More options available on the [free software page](../../../software/). - **Note**: support for Brackets is ending on September 1, 2021. [VS Code](https://code.visualstudio.com/) is a good alternative. -#### Configuring VS Code (optional) +##### Configuring VS Code (optional) This section is optional but recommended for your sanity in the long run as `p5.js` will be used in a few modules across this degree. You can certainly use VS Code as is without the need to install further extensions, but the following may make your life easier. -##### Extensions +###### Extensions VS Code supports JavaScript and its ecosystem by default, but you may want to enable more functionality by installing the following extensions: @@ -139,7 +140,7 @@ Once you've gained some experience and confidence, you may want to try these as - [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) - checks for "[code lint](https://en.wikipedia.org/wiki/Lint_(software))" in JS. Requires [ESLint](https://eslint.org/) to be installed, and may require some configuration to conform with the style used in the course (for more information on using ESLint, see the [ESLint user guide](https://eslint.org/docs/user-guide/configuring/); for a sample configuration that's compatible with ITP1, see [here](https://gist.githubusercontent.com/morags/2d762fd51c5ea4d733756baaf20cc6cc/raw/4093a82e966b38a75ba32bc0f623d61412ee047c/.eslintrc.json)) - [Project Manager](https://marketplace.visualstudio.com/items?itemName=alefragnani.project-manager) - useful when you start working on several projects at a time -##### p5.js autocompletion +###### p5.js autocompletion To enable autocompletion for p5.js in a beginner-friendly way, you can install the extension [p5.vscode](https://marketplace.visualstudio.com/items?itemName=samplavigne.p5-vscode). If you feel more adventurous and are looking for a challenge and some extra flexibility in your setup, please keep reading! @@ -165,6 +166,6 @@ import { } from "./node_modules/@types/p5/global"; This will import the type definitions you just downloaded into the global scope, allowing Code to autocomplete all of p5's identifiers from anywhere in your code (for more information on `global.d.ts`, see the [TypeScript documentation](https://www.typescriptlang.org/docs/handbook/declaration-files/templates/global-d-ts.html); for more information on p5.js's modes, see [p5.js's Github wiki](https://github.com/processing/p5.js/wiki/p5.js-overview#user-content-instantiation--namespace)). -##### Conclusion +###### Conclusion Congratulations! Now VS Code is all set up. Keep a copy of Code's [keyboard shortcut reference](https://code.visualstudio.com/docs/getstarted/keybindings#_keyboard-shortcuts-reference) handy, and you'll be a Code master in no time! diff --git a/modules/level-4/cm-1010-introduction-to-programming-ii/README.md b/modules/level-4/cm-1010-introduction-to-programming-ii/README.md index 6aa3d05d..8e2d5fe8 100644 --- a/modules/level-4/cm-1010-introduction-to-programming-ii/README.md +++ b/modules/level-4/cm-1010-introduction-to-programming-ii/README.md @@ -2,7 +2,6 @@ # Table of contents -- [Table of contents](#table-of-contents) - [Introduction to Programming II](#introduction-to-programming-ii) - [Professor(s)](#professors) - [Topics covered](#topics-covered) @@ -18,7 +17,9 @@ - [Kinks to be aware of](#kinks-to-be-aware-of) - [:heart: Notes](#heart-notes) -# Introduction to Programming II +--- + +## Introduction to Programming II By taking this module, you will enhance your programming skills through the development of a project. You will learn about producing @@ -26,11 +27,12 @@ maintainable code, defensive coding techniques, program testing techniques, cyclical approaches to software development, encapsulation, developing code across multiple files and using third-party libraries. -# Professor(s) +## Professor(s) + - Dr. Edward Anstead - Dr. Simon Katan -# Topics covered +## Topics covered - Introduction to the project, - Case study 1: Click & Point Adventure @@ -43,32 +45,32 @@ developing code across multiple files and using third-party libraries. - Testing and debugging - Completing your project -# Assessment +## Assessment Coursework only (Type III) -# Module specification +## Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1010_ITP2-Module-Spec.pdf) -# Syllabus +## Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1010_ITP2.pdf) -# Resources +## Resources -## Articles +### Articles - [Understanding Automatic Semicolon Insertion in JavaScript](http://www.bradoncode.com/blog/2015/08/26/javascript-semi-colon-insertion/) - [Your Guide to Semicolons in JavaScript](https://news.codecademy.com/your-guide-to-semicolons-in-javascript/) -## Case studies +### Case studies -### Music visualizer +#### Music visualizer - [But what is the Fourier Transform? A visual introduction](https://www.youtube.com/watch?v=spUNpyF58BY) - YouTube video - 3Blue1Brown -## Essential reading +### Essential reading _"There is no required textbook for this course. Listed below are some books to supplement some of the material covered in this course."_ @@ -76,16 +78,16 @@ _"There is no required textbook for this course. Listed below are some books to - **The Pragmatic Programmer – Your Journey to Mastery, by David Thomas, Andrew Hunt** - **Coders at Work: Reflections on the Craft of Programming, by Peter Seibel** -## Getting started with HTML +### Getting started with HTML - [Getting started with the web](https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web) - [HTML5 tutorial](https://www.w3schools.com/html/default.asp) - [Responsive website basics: code with HTML, CSS, and JavaScript](https://www.coursera.org/learn/website-coding) (Coursera) -## Kinks to be aware of +### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1010-introduction-to-programming-ii/). -## :heart: Notes +### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/introduction-to-programming-ii). diff --git a/modules/level-4/cm-1015-computational-mathematics/README.md b/modules/level-4/cm-1015-computational-mathematics/README.md index c36ea3b4..ff32ffbf 100644 --- a/modules/level-4/cm-1015-computational-mathematics/README.md +++ b/modules/level-4/cm-1015-computational-mathematics/README.md @@ -1,8 +1,7 @@ [Go back to the main page](../../../README.md) -# Table of contents +### Table of contents -- [Table of contents](#table-of-contents) - [Computational Mathematics](#computational-mathematics) - [Professor(s)](#professors) - [Topics previously covered (numerical mathematics)](#topics-previously-covered-numerical-mathematics) @@ -17,7 +16,7 @@ --- -# Computational Mathematics +## Computational Mathematics This module helps you hone your skills in thinking abstractly. It also introduces you to many of the standard continuous models used to help @@ -30,10 +29,11 @@ mathematical concepts and techniques that underpin Computer Science. In particular, you will study number systems, special functions, graphing and linear algebra. -# Professor(s) +## Professor(s) + - Dr. Sarah Santos -# Topics previously covered (numerical mathematics) +## Topics previously covered (numerical mathematics) - Number bases and modular arithmetic - Sequences and Series @@ -46,32 +46,32 @@ graphing and linear algebra. - Linear Transformations - Introduction to Combinatorics and Probability -# Assessment +## Assessment One two hour unseen written examination and coursework (Type I) -# Module specification +## Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1015_CM-Module-Spec.pdf) -# Syllabus +## Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1015_CM.pdf) -# Resources +## Resources -## Complementary learning +### Complementary learning - [Saylor Academy](https://learn.saylor.org/course/index.php?categoryid=13) - _"Explore the real-world applications of mathematics through algebra, calculus, statistics, and geometry. You can earn a free certificate of completion for any of these online Mathematics courses, or use many of them to earn credit in leading college programs."_ -## Reading List +### Reading List - [Computational Mathematics Weekly Reading List PDF (April 2020)](https://github.com/world-class/binary-assets/blob/master/modules/cm1015-cm/cm_weekly_reading_list.pdf) -## :heart: Notes +### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/computational-mathematics). -### Numerical Mathematics (earlier iteration of the module) +#### Numerical Mathematics (earlier iteration of the module) - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/numerical-mathematics). diff --git a/modules/level-4/cm-1020-discrete-mathematics/README.md b/modules/level-4/cm-1020-discrete-mathematics/README.md index 2620def9..31271a2d 100644 --- a/modules/level-4/cm-1020-discrete-mathematics/README.md +++ b/modules/level-4/cm-1020-discrete-mathematics/README.md @@ -3,23 +3,23 @@ ### Table of contents - [Discrete Mathematics](#discrete-mathematics) -- [Professor(s)](#professors) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Additional reading](#additional-reading) - - [Complementary learning](#complementary-learning) - - [Essential reading](#essential-reading) - - [Solutions to problems in the textbook Discrete Mathematics and its Applications](#solutions-to-problems-in-the-textbook-discrete-mathematics-and-its-applications) - - [Examples of past and current written exams](#examples-of-past-and-current-written-exams) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [Mathematical symbols](#mathematical-symbols) - - [:heart: Notes](#heart-notes) - - [On REPL](#on-repl) - - [Supplementary videos](#supplementary-videos) - - [Weekly readings](#weekly-readings) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Additional reading](#additional-reading) + - [Complementary learning](#complementary-learning) + - [Essential reading](#essential-reading) + - [Solutions to problems in the textbook Discrete Mathematics and its Applications](#solutions-to-problems-in-the-textbook-discrete-mathematics-and-its-applications) + - [Examples of past and current written exams](#examples-of-past-and-current-written-exams) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [Mathematical symbols](#mathematical-symbols) + - [:heart: Notes](#heart-notes) + - [On REPL](#on-repl) + - [Supplementary videos](#supplementary-videos) + - [Weekly readings](#weekly-readings) --- @@ -32,11 +32,12 @@ the fundamental discrete mathematical tools that will support you during the BSc degree. Particular attention is paid to notions of experimentation, reasoning and generalisation. -## Professor(s) +### Professor(s) + - Dr. Lahcen Ouarbya - Dr. Abdelkrim Alfalah -## Topics covered +### Topics covered [See this fabulous mind map for more details](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/CM-1020_DM_mind_map.png). @@ -51,21 +52,21 @@ experimentation, reasoning and generalisation. - Trees - Counting -## Assessment +### Assessment One two hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1020_DM-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1020_DM.pdf) -## Resources +### Resources -### Additional reading +#### Additional reading - :star: :3rd_place_medal: [Mathematics for Computer Science](https://uvacs2102.github.io/docs/mcs.pdf) - _"Proofs, Structures, Counting, Probability, Recurrences."_ - [A Guide to Writing Proofs](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/A_Guide_to_Writing_Proofs.pdf). @@ -79,11 +80,11 @@ One two hour unseen written examination and coursework (Type I) - [Set Theory for Computer Science](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/set_theory_for_computer_science.pdf). - [Solving Linear Recurrence Relations](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/solving_linear_recurrence_relations.pdf) - From University of California, Berkeley, [from this page](https://math.berkeley.edu/~arash/55/8_2.pdf). -### Complementary learning +#### Complementary learning - [Saylor Academy](https://learn.saylor.org/course/index.php?categoryid=13) - _"Explore the real-world applications of mathematics through algebra, calculus, statistics, and geometry. You can earn a free certificate of completion for any of these online Mathematics courses, or use many of them to earn credit in leading college programs."_ -### Essential reading +#### Essential reading _"The essentials readings for this course will come from the following text book, which is available in the University of London digital library:_ @@ -94,30 +95,30 @@ _This course does not require you to read the whole book, you will be given spec - [Weekly Readings and Exercises for Kenneth, H, Rosen. Discrete Mathematics and its Applications. (2012) 7th Global Edition](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/DM%20weekly%20reading%2C%207E%20global%20edition.pdf). -#### Solutions to problems in the textbook Discrete Mathematics and its Applications +##### Solutions to problems in the textbook Discrete Mathematics and its Applications - [7th Edition (2012) - written explanations on Slader.com](https://www.slader.com/textbook/9780073383095-discrete-mathematics-with-applications-7th-edition) - [8th Edition (2018) - step-by-step solutions in videos on Numerade.com](https://www.numerade.com/books/discrete-mathematics-and-its-applications/) -### Examples of past and current written exams +#### Examples of past and current written exams - 2014, 2015, 2016, 2017, 2018 ([PDF with answers](https://github.com/world-class/binary-assets/blob/master/modules/past-exams/cm1020-dm/DM18_answers.pdf)), 2020 ([PDF with answers](https://github.com/world-class/binary-assets/blob/master/modules/past-exams/cm1020-dm/DM20_answers.pdf)): [Visit this page](https://github.com/world-class/binary-assets/tree/master/modules/past-exams/cm1020-dm). - [DM March 2020 exam](https://github.com/world-class/binary-assets/blob/master/modules/past-exams/cm1020-dm/DM20_2020-03-03.pdf) -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1020-discrete-mathematics/). -### Mathematical symbols +#### Mathematical symbols - The [list of mathematical symbols](https://en.wikipedia.org/wiki/List_of_mathematical_symbols) on Wikipedia is a handy reference. Chapter 1 of _Kenneth, H, Rosen. Discrete Mathematics and its Applications. (2012) 7th Edition_ is outside the scope of the essential readings for this module, but provides a solid foundation to understand the notations and some proof techniques used during the course. - [Type mathematical symbols (online keyboard)](https://math.typeit.org) - Online keyboard to help with typing mathematical symbols. -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/discrete-mathematics). -### On REPL +#### On REPL - [Websites](../../../websites/README.md#discrete-mathematics) @@ -163,7 +164,7 @@ _This course does not require you to read the whole book, you will be given spec - [The Karnaugh Map - Rules of Simplification](https://www.youtube.com/watch?v=PA0kBrpHLM4) - Jonnie Palmer - [Transitive closure](https://www.youtube.com/watch?v=OO8Jfs9uZnc) - GVSUmath -### Supplementary videos +#### Supplementary videos | Weeks in the module | Resource | | ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | @@ -178,6 +179,6 @@ _This course does not require you to read the whole book, you will be given spec | 17 & 18 Relations | [Math for CS - MIT (Lecture 11 and reading from MCS notes)](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/video-lectures/) | | 19 & 20 Combinatorics | [Math for CS - MIT (Lecture 16 and 17 and reading from MCS notes)](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-fall-2010/video-lectures/) | -### Weekly readings +#### Weekly readings - [Reading by weeks and topics PDF](https://github.com/world-class/binary-assets/blob/master/modules/cm1020-dm/DM_Reading.pdf) diff --git a/modules/level-4/cm-1025-fundamentals-of-computer-science/README.md b/modules/level-4/cm-1025-fundamentals-of-computer-science/README.md index 3f5ac4b2..2f083741 100644 --- a/modules/level-4/cm-1025-fundamentals-of-computer-science/README.md +++ b/modules/level-4/cm-1025-fundamentals-of-computer-science/README.md @@ -2,8 +2,6 @@ # Table of contents -- [Table of contents](#table-of-contents) -- [Fundamentals of Computer Science](#fundamentals-of-computer-science) - [Professor(s)](#professors) - [Topics covered](#topics-covered) - [Assessment](#assessment) @@ -36,10 +34,11 @@ intelligence and machine learning. These will be presented as practical examples to illustrate how they are implemented in modern computer systems. -# Professor(s) +## Professor(s) + - Dr. Golnaz Badkobeh -# Topics covered +## Topics covered - Boolean logic - Algorithms @@ -52,21 +51,21 @@ systems. - Regular languages - Context-free grammar -# Assessment +## Assessment One two hour unseen written examination and coursework (Type I) -# Module specification +## Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1025_FCS-Module-Spec.pdf) -# Syllabus +## Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1025_FCS.pdf) -# Resources +## Resources -## Complementary learning +### Complementary learning - Highly recommended for week 7 onwards: [lectures](https://web.cs.ucdavis.edu/~rogaway/classes/120/spring14/) and [videos](https://www.cs.ucdavis.edu/~rogaway/classes/120/fall12/lectures.html) from Prof. Michael Harrison. - [Context-free grammar tool](https://web.stanford.edu/class/archive/cs/cs103/cs103.1156/tools/cfg/) @@ -77,7 +76,7 @@ One two hour unseen written examination and coursework (Type I) - [Introduction to Theoretical Computer Science](https://introtcs.org/public/index.html) - [Truth Table Generator](https://web.stanford.edu/class/cs103/tools/truth-table-tool/) -## Essential reading +### Essential reading _"Specific essential readings for each week from the following list are included in the Readings page for each week:_" @@ -88,24 +87,24 @@ _"Specific essential readings for each week from the following list are included - Dexter Kozen (2007). Automata and Computability, 1st. Springer - Shi-Kui Chang (2003). Data Structures and Algorithms, 1st. World Scientific Publishing Co -### Textbooks solutions +#### Textbooks solutions -#### Discrete Mathematics and its Applications +##### Discrete Mathematics and its Applications - [7th Edition (2012) - written explanations on Slader.com](https://www.slader.com/textbook/9780073383095-discrete-mathematics-with-applications-7th-edition) - [8th Edition (2018) - step-by-step solutions in videos on Numerade.com](https://www.numerade.com/books/discrete-mathematics-and-its-applications/) -#### Introduction to Automata Theory, Languages, and Computation +##### Introduction to Automata Theory, Languages, and Computation - [Solutions to Selected Exercises - stanford.edu](http://infolab.stanford.edu/~ullman/ialcsols/sols.html) -## :heart: Notes +### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/fundamentals-of-computer-science). -## Sample Paper with solutions +### Sample Paper with solutions -### March 2020 +#### March 2020 - [FCS sample paper (mock)](https://github.com/world-class/binary-assets/blob/master/modules/cm1025-fcs/FCS_Mock_exam_Mar_2020.pdf) - [Solutions (by students)](https://docs.google.com/document/d/1Pb86mf6FsSjkWS4qbh6B05EISP3KTbkQL46MZxvQ9qk/edit) @@ -114,15 +113,15 @@ _"Specific essential readings for each week from the following list are included - [FCS past exam September 2020 (Part B)](https://github.com/world-class/binary-assets/blob/master/modules/cm1025-fcs/CM1025_Exam_Questions_Sept_2020.pdf) - [Solutions (by students)](https://jamboard.google.com/d/1HfJiFXtCtdK02W62-imDlDqsH2oqv48C0LoO66HCdhE/edit) -## Study guide +### Study guide - [Resources compiled by Hassan Sarhan](https://github.com/h-sarhan/FCS-study-guide). -## Weekly reading list +### Weekly reading list - [Weekly reading list PDF](https://github.com/world-class/binary-assets/blob/master/modules/cm1025-fcs/FCS_reading_list.pdf) -## Supplementary Videos +### Supplementary Videos Following are supplementary videos for Theory of computation part of the module (week 7-14) for week 1-6 refer NM/DM material and for week 15-20 refer ADS1 material. diff --git a/modules/level-4/cm-1030-how-computers-work/README.md b/modules/level-4/cm-1030-how-computers-work/README.md index ac648037..84d722ee 100644 --- a/modules/level-4/cm-1030-how-computers-work/README.md +++ b/modules/level-4/cm-1030-how-computers-work/README.md @@ -3,16 +3,16 @@ ### Table of contents - [How Computers Work](#how-computers-work) -- [Professor(s)](#professors) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Recognition of Prior Learning](#recognition-of-prior-learning) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Essential reading](#essential-reading) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [:heart: Notes](#heart-notes) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Recognition of Prior Learning](#recognition-of-prior-learning) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Essential reading](#essential-reading) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [:heart: Notes](#heart-notes) --- @@ -27,10 +27,11 @@ reason about computer systems and predict their behaviour. You'll also learn about typical computer system architectures, basic networking and network services such as databases. -## Professor(s) +### Professor(s) + - Dr. Marco Gillies -## Topics covered +### Topics covered - Introduction to Computer Science and Notional Machines - Notional machines of web applications @@ -43,25 +44,25 @@ network services such as databases. - Data and Databases - Machine Learning -## Assessment +### Assessment One two hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1030_HCW-Module-Spec.pdf) -## Recognition of Prior Learning +### Recognition of Prior Learning - At the time of this writing, you can apply for [automatic RPL](https://london.ac.uk/applications/how-apply/recognition-prior-learning/recognition-and-accreditation-prior-learning-3) for this module if you obtain the [Google IT Support Professional Certificate](https://www.coursera.org/professional-certificates/google-it-support). -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1030_HCW.pdf) -## Resources +### Resources -### Essential reading +#### Essential reading _"The essentials readings for this course will come from the following text book, which you will be able access from within some lessons on Coursera platform:_ @@ -71,10 +72,10 @@ _This course does not require you to read the whole book; you will be given spec _You will also be asked to do some independent research from online sources or using the University of London digital library."_ -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1030-how-computers-work/). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/how-computers-work). diff --git a/modules/level-4/cm-1035-algorithms-and-data-structures-i/README.md b/modules/level-4/cm-1035-algorithms-and-data-structures-i/README.md index e3d421f6..9a658195 100644 --- a/modules/level-4/cm-1035-algorithms-and-data-structures-i/README.md +++ b/modules/level-4/cm-1035-algorithms-and-data-structures-i/README.md @@ -3,25 +3,25 @@ ### Table of contents - [Algorithms and Data Structures I](#algorithms-and-data-structures-i) -- [Professor(s)](#professors) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Complementary learning](#complementary-learning) - - [Visualizations](#visualizations) - - [Algorithms](#algorithms) - - [`mergeSort` algorithm](#mergesort-algorithm) - - [`quickSort` algorithm](#quicksort-algorithm) - - [`quickSort` & `mergeSort` algorithms MIT](#quicksort--mergesort-algorithms-mit) - - [Computational complexity & P vs NP](#computational-complexity--p-vs-np) - - [Essential reading](#essential-reading) - - [Examples of past and current written exams](#examples-of-past-and-current-written-exams) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [:heart: Notes](#heart-notes) - - [On REPL](#on-repl) - - [Solutions to the textbook Introduction to Algorithms](#solutions-to-the-textbook-introduction-to-algorithms) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Complementary learning](#complementary-learning) + - [Visualizations](#visualizations) + - [Algorithms](#algorithms) + - [`mergeSort` algorithm](#mergesort-algorithm) + - [`quickSort` algorithm](#quicksort-algorithm) + - [`quickSort` & `mergeSort` algorithms MIT](#quicksort--mergesort-algorithms-mit) + - [Computational complexity & P vs NP](#computational-complexity--p-vs-np) + - [Essential reading](#essential-reading) + - [Examples of past and current written exams](#examples-of-past-and-current-written-exams) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [:heart: Notes](#heart-notes) + - [On REPL](#on-repl) + - [Solutions to the textbook Introduction to Algorithms](#solutions-to-the-textbook-introduction-to-algorithms) --- @@ -42,10 +42,11 @@ and how to describe computational problems and their solutions. The model will allow you to compare algorithms regarding their correctness and regarding their efficiency. -## Professor(s) +### Professor(s) + - Dr. Matty Hoban -## Topics covered +### Topics covered - Introduction to algorithms, flowcharts and pseudocode - Computations using flowcharts and pseudocode @@ -58,58 +59,58 @@ and regarding their efficiency. - Advanced sorting - Linear collections -## Assessment +### Assessment One two hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1035_ADS1-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1035_ADS1.pdf) -## Resources +### Resources -### Complementary learning +#### Complementary learning - [Algorithmic Design and Techniques](https://courses.edx.org/courses/course-v1:UCSanDiegoX+ALGS200x+2T2017/course) - _edX platform, by UC San Diego_ - [Data Structures Fundamentals](https://courses.edx.org/courses/course-v1:UCSanDiegoX+ALGS201x+1T2019/course) - _edX platform, by UC San Diego_ - [Easy Theory](https://www.youtube.com/c/EasyTheory/playlists) - _"This is a channel about making Computer Science theory as easy as possible."_ Relevant for this course as well as [Fundamentals of Computer Science](../cm-1025-fundamentals-of-computer-science/README.md). -#### Visualizations +##### Visualizations - [Data Structures Visualization](https://www.cs.usfca.edu/~galles/visualization/Algorithms.html) - Visualizations of a lot of data structures and related algorithms. - [Animated DSA Visualization](https://visualgo.net/en) - Sorting algorithms, searching algorithms and many data structures beautifully visualized. -#### Algorithms +##### Algorithms - [Comparison of Algorithms](https://en.wikipedia.org/wiki/Sorting_algorithm#Comparison_of_algorithms) - See time complexity at a glance for various popular algorithms. - [Data Structure & Algorithms Introduction](https://www.programiz.com/dsa/algorithm) - Sorting algorithms, data structures, tree data structure and more. -##### `mergeSort` algorithm +###### `mergeSort` algorithm - [2.7.2. Merge Sort Algorithm](https://www.youtube.com/watch?v=mB5HXBb_HY8) - Abdul Bari - [Algorithm lecture 8 -- Merge sort algorithm, analysis and problems](https://www.youtube.com/watch?v=sfmaf4QpVTw) - Gate Lectures by Ravindrababu Ravula -##### `quickSort` algorithm +###### `quickSort` algorithm - [Algorithms lecture 9 -- Quick sort algorithm](https://www.youtube.com/watch?v=3DV8GO9g7B4) - Gate Lectures by Ravindrababu Ravula - [2.8.1 QuickSort Algorithm](https://www.youtube.com/watch?v=7h1s2SojIRw) - Abdul Bari -##### `quickSort` & `mergeSort` algorithms MIT +###### `quickSort` & `mergeSort` algorithms MIT - [3. Insertion Sort, Merge Sort](https://youtu.be/Kg4bqzAqRBM) - MIT 6.006 Introduction to Algorithms, Fall 2011 -#### Computational complexity & P vs NP +##### Computational complexity & P vs NP - [Big-O Cheat Sheet](https://www.bigocheatsheet.com/) - bigocheatsheet.com - [Computational Complexity](https://www.youtube.com/watch?v=moPtwq_cVH8) - MIT OpenCourseWare - [P vs. NP and the Computational Complexity Zoo](https://www.youtube.com/watch?v=YX40hbAHx3s) - hackerdashery -### Essential reading +#### Essential reading _"Specific essential readings for this course will be taken from the following text book:_ @@ -121,25 +122,25 @@ _In addition to the text book, there are additional reading activities written b _There will also be discussion prompts asking you to do some independent research using online sources."_ -### Examples of past and current written exams +#### Examples of past and current written exams - 2014, 2015, 2016, 2018, 2020: [Visit this page](https://github.com/world-class/binary-assets/tree/master/modules/past-exams/cm1035-ads1). - [ADS1 September 2020 online exam](https://github.com/world-class/binary-assets/blob/master/modules/past-exams/cm1035-ads1/ADS2020-09-21.pdf) - [Solutions](https://github.com/world-class/binary-assets/blob/master/modules/past-exams/cm1035-ads1/ADS2020-09-21_answers.pdf) -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1035-algorithms-and-data-structures-i/). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/algorithms-and-data-structures-i). -### On REPL +#### On REPL - [YouTube](../../../youtube/README.md#algorithms). - [Websites](../../../websites/README.md#algorithms). -### Solutions to the textbook Introduction to Algorithms +#### Solutions to the textbook Introduction to Algorithms - [CLRS Solutions](https://sites.math.rutgers.edu/~ajl213/CLRS/CLRS.html) - Michelle Bodnar, Andrew Lohr diff --git a/modules/level-4/cm-1040-web-development/README.md b/modules/level-4/cm-1040-web-development/README.md index 2581d443..a70cd04a 100644 --- a/modules/level-4/cm-1040-web-development/README.md +++ b/modules/level-4/cm-1040-web-development/README.md @@ -3,21 +3,21 @@ ### Table of contents - [Web Development](#web-development) -- [Professor(s)](#professors) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Awesome learning resources](#awesome-learning-resources) - - [Essential reading](#essential-reading) - - [Games](#games) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [:heart: Notes](#heart-notes) - - [On REPL (See sections on Web development)](#on-repl-see-sections-on-web-development) - - [Programming](#programming) - - [JavaScript](#javascript) - - [Text editor](#text-editor) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Awesome learning resources](#awesome-learning-resources) + - [Essential reading](#essential-reading) + - [Games](#games) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [:heart: Notes](#heart-notes) + - [On REPL (See sections on Web development)](#on-repl-see-sections-on-web-development) + - [Programming](#programming) + - [JavaScript](#javascript) + - [Text editor](#text-editor) --- @@ -35,11 +35,12 @@ you to present your work online in the form of a website. Enrolled students only: [Course syllabus available on Coursera](https://www.coursera.org/learn/london-cs-orientation/supplement/p88ho/syllabus-web-development-cm1040). -## Professor(s) +### Professor(s) + - Dr. Nick Hine - And more -## Topics covered +### Topics covered - Introduction to Web Development - Web Site Design @@ -52,25 +53,25 @@ Enrolled students only: [Course syllabus available on Coursera](https://www.cour - JavaScript Libraries - Web Hosting & Professional Practices -## Assessment +### Assessment Coursework only (Type III) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM1040_WD-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM1040_WD.pdf) -## Resources +### Resources -### Awesome learning resources +#### Awesome learning resources - [awesome-learning-resources](https://github.com/lauragift21/awesome-learning-resources) - GitHub awesome list. [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) -### Essential reading +#### Essential reading _"There is no required textbook for this module. The module will draw on a number of different, largely web-based, public resources as well as the resources produced as bespoke material for this module. Some key online references are:_ @@ -80,7 +81,7 @@ _"There is no required textbook for this module. The module will draw on a numbe _Specific readings for each topic are listed with direct links to free online resources that provide additional material on the topics of this course."_ -### Games +#### Games - [CSS Diner](https://flukeout.github.io/) - _"A fun game to help you learn and practice CSS selectors."_ - [Flexbox Froggy](http://flexboxfroggy.com/) - _"A game for learning CSS flexbox."_ @@ -89,26 +90,26 @@ _Specific readings for each topic are listed with direct links to free online re - [Grid Garden](https://codepip.com/games/grid-garden/) - _"How well can you tend to your carrot garden using CSS grid? In this game, you must water your carrot crops and poison the weeds by mastering CSS grid, a powerful new module that makes 2-dimensional grid layouts a piece of cake. With it you can define columns, rows, and grid template areas."_ - [Service Workies](https://serviceworkies.com/) - _"Learn Service Workers inside and out with the new game of Service Worker mastery."_ -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-4/cm-1040-web-development/). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-4/web-development/). -### On REPL (See sections on Web development) +#### On REPL (See sections on Web development) - [Podcasts](../../../podcasts/) - [YouTube](../../../youtube/) - [Websites](../../../websites/) -### Programming +#### Programming - [Mozilla Developer Network Tutorials](https://developer.mozilla.org/) - [W3 Schools Online Web Tutorials](http://www.w3schools.com/) -#### JavaScript +##### JavaScript - [Eloquent JavaScript](http://eloquentjavascript.net/), by Marijn Haverbeke. The book can be downloaded: - [As PDF](http://eloquentjavascript.net/Eloquent_JavaScript.pdf); @@ -116,7 +117,7 @@ _Specific readings for each topic are listed with direct links to free online re - [As MOBI](https://eloquentjavascript.net/Eloquent_JavaScript.mobi) (for Kindle). - [Handlebars Training](https://www.youtube.com/playlist?list=PLtV5RF44Yj8S4RcpQehL-2XMuVsJXwNvK), by Rich Finelli (YouTube playlist) -### Text editor +#### Text editor If you followed our guide at the [ITP1 resource page](../cm-1005-introduction-to-programming-i/README.md#text-editor), then you already have Visual Studio Code set up. For this course, you may want to install the following extensions in addition to those recommended earlier: diff --git a/modules/level-5/cm-2025-computer-security/README.md b/modules/level-5/cm-2025-computer-security/README.md index 8e8dbbba..c90bc559 100644 --- a/modules/level-5/cm-2025-computer-security/README.md +++ b/modules/level-5/cm-2025-computer-security/README.md @@ -3,16 +3,18 @@ ### Table of contents - [Computer Security](#computer-security) -- [Assessment](#assessment) -- [Mock exams](#mock-exams) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Documents](#documents) - - [:heart: Notes](#heart-notes) - - [Websites](#websites) - - [YouTube](#youtube) - - [Reading list](#reading-list) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Mock exams](#mock-exams) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Documents](#documents) + - [:heart: Notes](#heart-notes) + - [Websites](#websites) + - [YouTube](#youtube) + - [Reading list](#reading-list) --- @@ -25,7 +27,12 @@ of security systems and a practical element that will help you discover the pitfalls of security design and to comprehend the mathematics underlying the protocols by programming small examples. -# Topics covered +### Professor(s) + +- Dr. Matthew Yee-King +- Dr. Robert Zimmer + +### Topics covered - Security threats - Social Issues in Computer Security @@ -38,45 +45,45 @@ mathematics underlying the protocols by programming small examples. - Public Key Cryptography - Blockchain protocols -## Assessment +#### Assessment One two hour unseen written examination and coursework (Type I) -## Mock exams +#### Mock exams [See past exams here](https://github.com/world-class/binary-assets/tree/master/modules/cm2025-csec). -## Module specification +#### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM2025_CS-Module-Spec.pdf) -## Syllabus +#### Syllabus - [Syllabus PDF (October 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM2025_CS.pdf) -## Resources +#### Resources -### Documents +##### Documents [Public-Key Cryptography RSA Attacks against RSA](https://github.com/world-class/binary-assets/blob/master/modules/cm2025-csec/Public-Key_Cryptography_RSA_Attacks_against_RSA.pdf) - From www.lri.fr. -### :heart: Notes +##### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-5/computer-security). -### Websites +##### Websites - [RSA Encryption](https://brilliant.org/wiki/rsa-encryption/) - Brilliant.org. - [Euler's Theorem](https://brilliant.org/wiki/eulers-theorem/) - [Euler's Totient Function](https://brilliant.org/wiki/eulers-totient-function/) - [Fermat's Little Theorem](https://brilliant.org/wiki/fermats-little-theorem/) -### YouTube +##### YouTube - [How the RSA algorithm works, including how to select d, e, n, p, q, and φ (phi)](https://www.youtube.com/watch?v=Z8M2BTscoD4) - Anthony Vance. - [Public Key Cryptography: RSA Encryption Algorithm](https://www.youtube.com/watch?v=wXB-V_Keiu8) - Art of the Problem. - [RSA algorithm step by step example](https://www.youtube.com/watch?v=j2NBya6ADSY) - shad sluiter. -### Reading list +##### Reading list - [Reading list](./reading_list.md) diff --git a/modules/level-5/cm-2030-graphics-programming/README.md b/modules/level-5/cm-2030-graphics-programming/README.md index 863da3bc..b2779cd1 100644 --- a/modules/level-5/cm-2030-graphics-programming/README.md +++ b/modules/level-5/cm-2030-graphics-programming/README.md @@ -2,8 +2,7 @@ # Table of contents -- [Table of contents](#table-of-contents) -- [Graphics Programming](#graphics-programming) +- [Professor(s)](#professors) - [Topics covered](#topics-covered) - [Assessment](#assessment) - [Module specification](#module-specification) @@ -23,7 +22,11 @@ underpin digital representations of graphics; how digital media files represent graphics, and how to handle and manipulate them; and the basics of working with simulated physics and 3D graphics. -# Topics covered +## Professor(s) + +- Dr. Theo Papatheodorou + +## Topics covered - Introduction to graphics - Coordinate transformations @@ -36,25 +39,25 @@ basics of working with simulated physics and 3D graphics. - 3D graphics - Recap and review -# Assessment +## Assessment Coursework only (Type II) -# Module specification +## Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM2030_GP-Module-Spec.pdf) -# Syllabus +## Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM2030_GP.pdf) -# Resources +## Resources -## Complementary learning +### Complementary learning - [Collision Detection](https://github.com/jeffThompson/CollisionDetection) - Uses [Processing](https://github.com/processing-js/processing-js) (deprecated), which is similar to but not the same as [p5js](https://p5js.org). _"This book explains the algorithms behind [...] collisions using basic shapes like circles, rectangles, and lines so you can implement them into your own projects."_. - [Image Processing in p5.js](https://idmnyu.github.io/p5.js-image/) - _"Basic setup, filters, layers, animation setup, blur, edge detection."_ -## :heart: Notes +### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-5/graphics-programming). diff --git a/modules/level-5/cm-2035-algorithms-and-data-structures-ii/README.md b/modules/level-5/cm-2035-algorithms-and-data-structures-ii/README.md index 990dc5f0..b8b75932 100644 --- a/modules/level-5/cm-2035-algorithms-and-data-structures-ii/README.md +++ b/modules/level-5/cm-2035-algorithms-and-data-structures-ii/README.md @@ -3,17 +3,18 @@ ### Table of contents - [Algorithms and Data Structures II](#algorithms-and-data-structures-ii) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [List of required reading](#list-of-required-reading) -- [Resources](#resources) - - [Complementary learning](#complementary-learning) - - [Mock exam](#mock-exam) - - [Solutions shared by students](#solutions-shared-by-students) - - [:heart: Notes](#heart-notes) - - [Solutions to the textbook Introduction to Algorithms](#solutions-to-the-textbook-introduction-to-algorithms) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [List of required reading](#list-of-required-reading) + - [Resources](#resources) + - [Complementary learning](#complementary-learning) + - [Mock exam](#mock-exam) + - [Solutions shared by students](#solutions-shared-by-students) + - [:heart: Notes](#heart-notes) + - [Solutions to the textbook Introduction to Algorithms](#solutions-to-the-textbook-introduction-to-algorithms) --- @@ -33,7 +34,11 @@ and efficiency of algorithms. You will be expected to have mastered the material in Algorithms and Data Structures I before attempting this module. -## Topics covered +### Professor(s) + +- Dr. Alejandra Beghelli Zapata + +### Topics covered - Complexity, growth of functions and big-O notation - Stacks and queues @@ -46,19 +51,19 @@ Data Structures I before attempting this module. - Sets, maps and hash tables - Collections -## Assessment +### Assessment One two hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM2035_ADS2-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus PDF September 2020](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM2035_ADS2.pdf) -## List of required reading +### List of required reading Book - Cormen, T.H., C.E. Leiserson, R.L. Rivest and C. Stein Introduction to algorithms. (MIT Press, 2009) 3rd edition [ISBN 9780262533058]. @@ -82,9 +87,9 @@ Book - Cormen, T.H., C.E. Leiserson, R.L. Rivest and C. Stein Introduction to al | 17 | Heaps, Heapsort and priority queues | Chapter 6 | pp. 151-69 | | 19 | Graph representation, MST and Dijsktra | Ch.22- 22.1, Ch. 23, Ch 24-Ch. 24.3 | pp. 579-92, pp. 624-42, pp.658-66 | -## Resources +### Resources -### Complementary learning +#### Complementary learning - Courses @@ -123,18 +128,18 @@ Book - Cormen, T.H., C.E. Leiserson, R.L. Rivest and C. Stein Introduction to al - [Introduction to algorithms](https://www.youtube.com/watch?v=0IAPZzGSbME&list=PLDN4rrl48XKpZkf03iYFl-O29szjTrs_O) (playlist) - Abdul Bari - [Introduction to algorithms](https://www.youtube.com/watch?v=HtSuA80QTyo&list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb) (playlist) - MIT OpenCourseWare -### Mock exam +#### Mock exam - [Mock exam, 2020](https://github.com/world-class/binary-assets/blob/master/modules/cm2035-ads2/CM2035-ADS2_MOCK_Exam.pdf) -#### Solutions shared by students +##### Solutions shared by students - Solutions to the mock exam are available in this [Google Sheets document](https://docs.google.com/spreadsheets/d/1llp2ReT4yWXPnoM9vuJM5FtCZdSKhgbwe0CUsbUTVJA/edit?usp=sharing). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-5/algorithms-and-data-structures-ii). -### Solutions to the textbook Introduction to Algorithms +#### Solutions to the textbook Introduction to Algorithms - [CLRS Solutions](https://sites.math.rutgers.edu/~ajl213/CLRS/CLRS.html) - Michelle Bodnar, Andrew Lohr diff --git a/modules/level-5/cm-2040-databases-networks-and-the-web/README.md b/modules/level-5/cm-2040-databases-networks-and-the-web/README.md index ace75781..39465119 100644 --- a/modules/level-5/cm-2040-databases-networks-and-the-web/README.md +++ b/modules/level-5/cm-2040-databases-networks-and-the-web/README.md @@ -3,16 +3,17 @@ ### Table of contents - [Databases, Networks and the Web](#databases-networks-and-the-web) -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Mock exam](#mock-exam) -- [Module specification](#module-specification) -- [Reading list for this course](#reading-list-for-this-course) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Kinks to be aware of](#kinks-to-be-aware-of) - - [:heart: Notes](#heart-notes) - - [Websites](#websites) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Mock exam](#mock-exam) + - [Module specification](#module-specification) + - [Reading list for this course](#reading-list-for-this-course) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Kinks to be aware of](#kinks-to-be-aware-of) + - [:heart: Notes](#heart-notes) + - [Websites](#websites) --- @@ -28,7 +29,11 @@ through dynamic websites. In particular, you will learn about the Relational Model, Query processing, and socket architectures to enable communication. -## Topics covered +### Professor(s) + +- Dr. Elaheh Homayounvala + +### Topics covered - Networking concepts - Building Simple socket clients and servers @@ -41,36 +46,36 @@ communication. - Revision of HTML and CSS - Building a dynamic website -## Assessment +### Assessment One two hour unseen written examination and coursework (Type I) -## Mock exam +### Mock exam [See the `binary-assets` repository](https://github.com/world-class/binary-assets/tree/master/modules/cm2040-dnw). -## Module specification +### Module specification - [Module specification (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM2040_DNW-Module-Spec.pdf) -## Reading list for this course +### Reading list for this course - [Reading list for this course](https://github.com/world-class/binary-assets/blob/master/modules/cm2040-dnw/CM2040_DNW-reading-list.pdf) -## Syllabus +### Syllabus - [Syllabus PDF (September 2020)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM2040_DNW.pdf) -## Resources +### Resources -### Kinks to be aware of +#### Kinks to be aware of - [List of reported errors and bugs with the module](../../../kinks/level-5/cm-2040-databases-networks-and-the-web/). -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-5/databases-networks-and-the-web). -### Websites +#### Websites - [SQL Zoo - for interactive SQL practice problems](https://sqlzoo.net/) diff --git a/modules/level-6/cm-3005-data-science/README.md b/modules/level-6/cm-3005-data-science/README.md index 17fc1e08..fa5faab7 100644 --- a/modules/level-6/cm-3005-data-science/README.md +++ b/modules/level-6/cm-3005-data-science/README.md @@ -1,19 +1,21 @@ [Go back to the main page](../../../README.md) -### Table of contents - -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Recognition of Prior Learning](#recognition-of-prior-learning) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [:heart: Notes](#heart-notes) - - [Reading list](#reading-list) +#### Table of contents + +- [Data Science (CM3005)](#data-science-cm3005) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Recognition of Prior Learning](#recognition-of-prior-learning) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) + - [Reading list](#reading-list) --- -# Data Science (CM3005) +## Data Science (CM3005) By taking this module, you will gain a data science skillset. With these skills, you will be able to write computer programs that can @@ -24,7 +26,11 @@ results. You will be able to use data analysis in the decision-making process. You will also learn about a range of application domains for data science. -## Topics covered +### Professor(s) + +- Dr. Tony Russel-Rose + +### Topics covered - Introduction and development environment - Working with different types of data @@ -37,28 +43,28 @@ data science. - Scientific data visualisation - Case studies: different contexts for data analysis -## Assessment +### Assessment One two-hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3005_DS-Module-Spec.pdf) -## Recognition of Prior Learning +### Recognition of Prior Learning - At the time of this writing, you can apply for [automatic RPL](https://london.ac.uk/applications/how-apply/recognition-prior-learning/recognition-and-accreditation-prior-learning-3) for this module if you obtain the [IBM Data Science Professional Certificate](https://www.coursera.org/professional-certificates/ibm-data-science). -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3005_DS.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/data-science). -### Reading list +#### Reading list - [Reading list](https://github.com/world-class/binary-assets/blob/master/modules/cm3005-ds/CM3005_reading_list.pdf) diff --git a/modules/level-6/cm-3010-databases-advanced-data-techniques/README.md b/modules/level-6/cm-3010-databases-advanced-data-techniques/README.md index 595ed3b8..6f6b9f5f 100644 --- a/modules/level-6/cm-3010-databases-advanced-data-techniques/README.md +++ b/modules/level-6/cm-3010-databases-advanced-data-techniques/README.md @@ -1,22 +1,24 @@ [Go back to the main page](../../../README.md) -# Databases and Advanced Data Techniques (CM3010) - -### Table of contents - -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Past exams](#past-exams) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [:heart: Notes](#heart-notes) - - [Reading list](#reading-list) - - [Semantic Web](#semantic-web) - - [SQL](#sql) +#### Table of contents + +- [Databases and Advanced Data Techniques (CM3010)](#databases-and-advanced-data-techniques-cm3010) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Past exams](#past-exams) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) + - [Reading list](#reading-list) + - [Semantic Web](#semantic-web) + - [SQL](#sql) --- +## Databases and Advanced Data Techniques (CM3010) + This module aims to show you how to work with data in your computer programs. You will learn how to use SQL and NoSQL databases to store tabular data and documents. You will learn about the ethics of gathering @@ -25,7 +27,11 @@ data security. You will learn about open data resources, and how you can access them from your computer programs. You will learn about audio and video data, and the challenges of working with this kind of data. -## Topics covered +### Professor(s) + +- Dr. David Lewis + +### Topics covered - Open data sources: different data formats - Gathering and cleaning data @@ -38,36 +44,36 @@ video data, and the challenges of working with this kind of data. - Audio and video data - Data security -## Assessment +### Assessment One two-hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3010_DADT-Module-Spec.pdf) -## Past exams +### Past exams [See past exams here](https://github.com/world-class/binary-assets/tree/master/modules/past-exams/cm3010-dadt). -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3010_DADT.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/databases-and-advanced-data-techniques). -### Reading list +#### Reading list [Reading list for topics 1 to 5](https://github.com/world-class/binary-assets/blob/master/modules/cm3010-dadt/CM3010_reading_list_topics_1-5.pdf). -### Semantic Web +#### Semantic Web - [Linked Data Engineering (Semantic Web) OpenHPI](https://www.youtube.com/playlist?list=PLoOmvuyo5UAfY6jb46jCpMoqb-dbVewxg). - Prof. Dr. Harald Sack -### SQL +#### SQL - [The Art of PostgreSQL](https://theartofpostgresql.com/). - _"The book that teaches SQL to developers: Learn to replace thousands of lines of code with simple queries!"_ diff --git a/modules/level-6/cm-3015-machine-learning-neural-networks/README.md b/modules/level-6/cm-3015-machine-learning-neural-networks/README.md index 5b5910d9..6748e55e 100644 --- a/modules/level-6/cm-3015-machine-learning-neural-networks/README.md +++ b/modules/level-6/cm-3015-machine-learning-neural-networks/README.md @@ -1,19 +1,21 @@ [Go back to the main page](../../../README.md) -### Table of contents - -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Recognition of Prior Learning](#recognition-of-prior-learning) -- [Past exams](#past-exams) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [:heart: Notes](#heart-notes) +#### Table of contents + +- [Machine Learning and Neural Networks (CM3015)](#machine-learning-and-neural-networks-cm3015) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Recognition of Prior Learning](#recognition-of-prior-learning) + - [Past exams](#past-exams) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) --- -# Machine Learning and Neural Networks (CM3015) +## Machine Learning and Neural Networks (CM3015) This module provides a broad view of machine learning and neural networks. You will learn how to solve common machine learning problems @@ -24,7 +26,12 @@ networks. You will learn about machine learning and neural network software libraries that allow you to develop machine learning systems rapidly, and you will learn how to verify and evaluate the results. -## Topics covered +### Professor(s) + +- Dr. Jamie Ward +- Dr. Tim Blackwell + +### Topics covered - Regression and classification - Features and distances @@ -37,28 +44,28 @@ rapidly, and you will learn how to verify and evaluate the results. - Network optimisers - Deep and recurrent networks -## Assessment +### Assessment Coursework only (Type II). -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3015_MLNN-Module-Spec.pdf) -## Recognition of Prior Learning +### Recognition of Prior Learning - At the time of this writing, you can apply for [automatic RPL](https://london.ac.uk/applications/how-apply/recognition-prior-learning/recognition-and-accreditation-prior-learning-3) for this module if you obtain the [IBM AI Engineering Professional Certificate](https://www.coursera.org/professional-certificates/ai-engineer). -## Past exams +### Past exams - [See past-exams/cm3015-mlnn at binary-assets](https://github.com/world-class/binary-assets/tree/master/modules/past-exams/cm3015-mlnn). -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3015_MLNN.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/machine-learning-and-neural-networks). diff --git a/modules/level-6/cm-3020-artificial-intelligence/README.md b/modules/level-6/cm-3020-artificial-intelligence/README.md index 13a8274b..9f0293b0 100644 --- a/modules/level-6/cm-3020-artificial-intelligence/README.md +++ b/modules/level-6/cm-3020-artificial-intelligence/README.md @@ -3,6 +3,7 @@ ### Table of contents - [Artificial Intelligence (CM3020)](#artificial-intelligence-cm3020) + - [Professor(s)](#professors) - [Topics covered](#topics-covered) - [Assessment](#assessment) - [Syllabus](#syllabus) @@ -21,6 +22,11 @@ making and problem solving including under uncertainty. You will have an opportunity to apply Artificial Intelligence techniques to particular problems such as game playing and decision making. +### Professor(s) + +- Dr. Larisa Soldatova +- Dr. Matthew Yee-King + ### Topics covered - Historical overview of Artificial Intelligence. diff --git a/modules/level-6/cm-3025-virtual-reality/README.md b/modules/level-6/cm-3025-virtual-reality/README.md index 6d873c08..070b2eab 100644 --- a/modules/level-6/cm-3025-virtual-reality/README.md +++ b/modules/level-6/cm-3025-virtual-reality/README.md @@ -1,5 +1,16 @@ [Go back to the main page](../../../README.md) +### Table of contents + +- [Virtual Reality (CM3025)](#virtual-reality-cm3025) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) + +--- + ## Virtual Reality (CM3025) The module will combine the theory and psychology of VR with practical @@ -15,6 +26,11 @@ interactive virtual environments. These skills will include creating 3D environments, designing and implementing 3D interaction for VR and building social VR experiences with interactive virtual characters. +### Professor(s) + +- Dr. Marco Gillies +- Dr. Sylvia Pan + ### Topics covered - Introduction to Virtual Reality: History of VR, VR Hardware and applications @@ -32,8 +48,8 @@ building social VR experiences with interactive virtual characters. Coursework only (Type III) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/virtual-reality). diff --git a/modules/level-6/cm-3030-games-development/README.md b/modules/level-6/cm-3030-games-development/README.md index 4f03ad18..bd8a6a64 100644 --- a/modules/level-6/cm-3030-games-development/README.md +++ b/modules/level-6/cm-3030-games-development/README.md @@ -2,12 +2,16 @@ ### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) +- [Games Development (CM3030)](#games-development-cm3030) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) -# Games Development (CM3030) +## Games Development (CM3030) This module will introduce you to i) industry standard tools for game development, such as game engines, and ii) the process of game @@ -28,7 +32,11 @@ player with limited computational resources. This module gives students practical experience of programming game AI systems and an understanding of the relevant theory. -## Topics covered +### Professor(s) + +- Dr. Tom Cole + +### Topics covered - Introduction to game development, the games industry and game engines - Creating sprite based 2D @@ -41,20 +49,20 @@ of the relevant theory. - Behaviour Trees - Recap and review -## Assessment +### Assessment Coursework only (Type III) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3030_GD-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3030_GD.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/games-development). diff --git a/modules/level-6/cm-3035-advanced-web-development/README.md b/modules/level-6/cm-3035-advanced-web-development/README.md index ecc79cf9..2143c4b8 100644 --- a/modules/level-6/cm-3035-advanced-web-development/README.md +++ b/modules/level-6/cm-3035-advanced-web-development/README.md @@ -2,18 +2,20 @@ ### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [Complementary learning](#complementary-learning) - - [YouTube](#youtube) - - [:heart: Notes](#heart-notes) +- [Advanced Web Development (CM3035)](#advanced-web-development-cm3035) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [Complementary learning](#complementary-learning) + - [YouTube](#youtube) + - [:heart: Notes](#heart-notes) --- -# Advanced Web Development (CM3035) +## Advanced Web Development (CM3035) Through this module, you will learn how to build dynamic, data-driven websites using databases, front-end frameworks and server-side @@ -27,7 +29,11 @@ server-side web applications, by building web-accessible wrappers around databases. You will consider issues of scalability, and learn about web application configuration and deployment. -## Topics covered +### Professor(s) + +- Dr. Daniel Buchan + +### Topics covered - The web stack: clients, web servers and databases - Advanced features of HTML, CSS and Templates @@ -40,23 +46,23 @@ application configuration and deployment. - Working with external APIs - Scalability -## Assessment +### Assessment Coursework only (Type II) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3035_AWD-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3035_AWD.pdf) -## Resources +### Resources -### Complementary learning +#### Complementary learning -#### YouTube +##### YouTube - [Build a Django DRF app and React Front-end - Part-1](https://www.youtube.com/watch?v=soxd_xdHR0o) - Very Academy - [Build a Django DRF Quiz API - Part-2](https://www.youtube.com/watch?v=EWJ2-xkfvXI) - Very Academy @@ -68,6 +74,6 @@ Coursework only (Type II) - [Image Uploading / Handling with React Front-end - Part-8](https://www.youtube.com/watch?v=V2zaeqFSSTE) - Very Academy - [Django Rest Framework Course - Social Logins with React and DRF - Part-9](https://www.youtube.com/watch?v=wlcCvzOLL8w) - Very Academy -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/advanced-web-development). diff --git a/modules/level-6/cm-3040-physical-computing-iot/README.md b/modules/level-6/cm-3040-physical-computing-iot/README.md index 1f027743..ad100f7d 100644 --- a/modules/level-6/cm-3040-physical-computing-iot/README.md +++ b/modules/level-6/cm-3040-physical-computing-iot/README.md @@ -3,6 +3,7 @@ ### Table of contents - [Physical Computing and the Internet of Things (CM3040)](#physical-computing-and-the-internet-of-things-cm3040) + - [Professor(s)](#professors) - [Topics covered](#topics-covered) - [Assessment](#assessment) - [Syllabus](#syllabus) @@ -26,6 +27,10 @@ software engineering. The practical objective of this course is the development of the skills needed for designing and building interactive physical devices. +### Professor(s) + +- Dr. Darpan Triboan + ### Topics covered - Electricity and circuits diff --git a/modules/level-6/cm-3045-3d-graphics-animation/README.md b/modules/level-6/cm-3045-3d-graphics-animation/README.md index a79d600f..54a11385 100644 --- a/modules/level-6/cm-3045-3d-graphics-animation/README.md +++ b/modules/level-6/cm-3045-3d-graphics-animation/README.md @@ -1,15 +1,19 @@ [Go back to the main page](../../../README.md) -### Table of contents +#### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) +- [3D Graphics and Animation (CM3045)](#3d-graphics-and-animation-cm3045) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) --- -# 3D Graphics and Animation (CM3045) +## 3D Graphics and Animation (CM3045) This module will cover advanced methods used in current state-of-the-art graphics and animation systems. It will include the mathematical @@ -21,7 +25,12 @@ of physics and shader programming. You will study a range of examples, and through these learn how you can program computer graphics in contemporary graphical software for different applications. -## Topics covered +### Professor(s) + +- Dr. Marco Gillies +- Dr. Sylvia Pan + +### Topics covered - Overview of 3D Graphics and mathematics for graphics - 3D Models and Transforms @@ -34,20 +43,20 @@ contemporary graphical software for different applications. - Vertex Shaders - Fragment Shaders -## Assessment +### Assessment One two-hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3045_3DGA-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3045_3DGA.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/3d-graphics-and-animation). diff --git a/modules/level-6/cm-3050-mobile-development/README.md b/modules/level-6/cm-3050-mobile-development/README.md index 8442a411..d5f2c6dc 100644 --- a/modules/level-6/cm-3050-mobile-development/README.md +++ b/modules/level-6/cm-3050-mobile-development/README.md @@ -1,14 +1,16 @@ [Go back to the main page](../../../README.md) -# Table of contents +### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Syllabus](#syllabus) -- [Resources](#resources) - - [:heart: Notes](#heart-notes) +- [Mobile Development (CM3050)](#mobile-development-cm3050) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) -# Mobile Development (CM3050) +## Mobile Development (CM3050) This module aims to give you the fundamental understanding and skills needed to develop mobile applications. By studying this module, you will @@ -21,7 +23,11 @@ how to work with various sensors available on mobile devices using built-in APIs. The style of the modules will be practical, with a focus on developing functioning applications. -## Topics covered +### Professor(s) + +- Joe McAlister + +### Topics covered - The mobile app ecosystem - Mobile user interface design @@ -34,18 +40,18 @@ on developing functioning applications. - Advanced APIs - Deployment -## Assessment +### Assessment Coursework only (Type III) -## Syllabus +### Syllabus - [Syllabus PDF (December 2021)](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3050_MD.pdf) -## Resources +### Resources - [Lectures for the Spring 2020 version of Stanford University's course CS193p (Developing Applications for iOS using SwiftUI)](https://cs193p.sites.stanford.edu/) -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/mobile-development). diff --git a/modules/level-6/cm-3055-interaction-design/README.md b/modules/level-6/cm-3055-interaction-design/README.md index 6ba4e77e..d17e2a5c 100644 --- a/modules/level-6/cm-3055-interaction-design/README.md +++ b/modules/level-6/cm-3055-interaction-design/README.md @@ -2,14 +2,18 @@ ### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) +- [Interaction Design [CM3055]](#interaction-design-cm3055) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) --- -# Interaction Design [CM3055] +## Interaction Design [CM3055] When taking this module, you will examine the notion of 'interaction with technology'. You will focus on the concepts behind modern user @@ -22,7 +26,12 @@ will learn how to evaluate interactive systems against criteria such as efficiency and usability. You will examine issues of accessibility from the perspective of different populations. -## Topics covered +### Professor(s) + +- Dr. Sarah Wiseman +- Dr. Sean McGrath + +### Topics covered - History of HCI. - Usability and Principles of design. @@ -35,20 +44,20 @@ the perspective of different populations. - Tools and techniques that support interaction development. - Current trends in interaction design and HCI. -## Assessment +### Assessment One two-hour unseen written examination and coursework (Type I) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3055_ID-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3055_ID.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/interaction-design). diff --git a/modules/level-6/cm-3060-natural-language-processing/README.md b/modules/level-6/cm-3060-natural-language-processing/README.md index 24bd2e3a..9f57d78a 100644 --- a/modules/level-6/cm-3060-natural-language-processing/README.md +++ b/modules/level-6/cm-3060-natural-language-processing/README.md @@ -3,11 +3,12 @@ ### Table of contents - [Natural Language Processing (CM3060)](#natural-language-processing-cm3060) + - [Professor(s)](#professors) - [Topics covered](#topics-covered) - [Assessment](#assessment) - [Syllabus](#syllabus) -- [Resources](#resources) - - [:heart: Notes](#heart-notes) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) --- @@ -24,6 +25,10 @@ used to extract information from and classify text. You will work in an appropriate programming environment for NLP, using libraries to implement NLP workflows. +### Professor(s) + +- Dr. Tony Russel-Rose + ### Topics covered - History of NLP. @@ -45,8 +50,8 @@ One two-hour unseen written examination and coursework (Type I) - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3060_NLP.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/natural-language-processing). diff --git a/modules/level-6/cm-3065-intelligent-signal-processing/README.md b/modules/level-6/cm-3065-intelligent-signal-processing/README.md index c7df6550..2d7d9b02 100644 --- a/modules/level-6/cm-3065-intelligent-signal-processing/README.md +++ b/modules/level-6/cm-3065-intelligent-signal-processing/README.md @@ -2,14 +2,18 @@ ### Table of contents -- [Topics covered](#topics-covered) -- [Assessment](#assessment) -- [Module specification](#module-specification) -- [Syllabus](#syllabus) +- [Intelligent Signal Processing (CM3065)](#intelligent-signal-processing-cm3065) + - [Professor(s)](#professors) + - [Topics covered](#topics-covered) + - [Assessment](#assessment) + - [Module specification](#module-specification) + - [Syllabus](#syllabus) + - [Resources](#resources) + - [:heart: Notes](#heart-notes) --- -# Intelligent Signal Processing (CM3065) +## Intelligent Signal Processing (CM3065) This module aims to provide you with a broad experience of digital signal processing techniques and applications. You will study how audio @@ -19,7 +23,11 @@ and processing. You will learn how you can extract information from audio signals. You will implement movement and face detection systems that work with live camera input. -## Topics covered +### Professor(s) + +- Dr. Francisco Marti Perez + +### Topics covered - Capturing representing and processing audio signals - LTI systems and impulse responses @@ -31,20 +39,20 @@ that work with live camera input. - Computer vision: face detection - Compressing signals -## Assessment +### Assessment Coursework only (Type II) -## Module specification +### Module specification - [Module specification](https://github.com/world-class/binary-assets/blob/master/modules/module-specification/CM3065_ISP-Module-Spec.pdf) -## Syllabus +### Syllabus - [Syllabus](https://github.com/world-class/binary-assets/blob/master/modules/syllabi/Syllabus_CM3065_ISP.pdf) -## Resources +### Resources -### :heart: Notes +#### :heart: Notes - Visit [this page of world-class/notes](https://github.com/world-class/notes/tree/master/level-6/intelligent-signal-processing).