====== ndef.dev ====== We are a circle of friends that met in mysterious ways. We have been sharing course material we find online with each other. Here we list a selection of it and, in some cases, our study notes. For an introduction to computer science, and in particular to C, you might want to consider reading [[http://www.kevinhouston.net/httlam.html|How to Think Like a Mathematician]], [[https://us.macmillan.com/books/9780805071665/thenewturingomnibus|The New Turing Omnibus]] and taking CS50 ([[https://www.youtube.com/playlist?list=PLhQjrBD2T382VRUw5ZpSxQSFrxMOdFObl|lectures]], and [[https://cdn.cs50.net/2016/x/psets/|psets]]). * Soft Skills * [[https://www.cl.cam.ac.uk/teaching/2021/EconLaw/materials.html|Economics, Law and Ethics]] * [[https://www.cl.cam.ac.uk/teaching/2021/Business/|Business Studies]] * [[https://www.cl.cam.ac.uk/teaching/2021/Cybercrime/|Cybercrime]] * [[https://www.youtube.com/playlist?list=PLGF2tWj9M1qT8poSiEK1rDEsTjRBVAW2b|Geopolitics]] (pt-br) * Marketing * Patents * [[https://oyc.yale.edu/political-science/plsc-114|Philosophy]] * Project Appraisal * [[https://www.cl.cam.ac.uk/teaching/1415/C00/|Technical Communication and Research Skills]] * Science * Chemistry * Foundations of Chemistry * Computer Science * Algorithms * [[https://www.youtube.com/playlist?list=PLrEqNqXQXCHfEE4FaukrJ5iABsXXyZR15|1.0. Algorithm Analysis]] * [[https://www.cl.cam.ac.uk/teaching/2122/Algorithm1/|1.1. Data Structures and Algorithm Design and Analysis]] * [[https://www.cl.cam.ac.uk/teaching/2122/Algorithm2/|1.2. Graph algorithms and Advanced Data Structures]] * [[https://www.dcc.fc.up.pt/~pribeiro/aulas/pc2122/|2. Programming Challenges]] * [[https://www.cl.cam.ac.uk/teaching/2122/RandAlgthm/|3. Randomised Algorithms]] * Programming Languages * [[https://www.cl.cam.ac.uk/teaching/2122/Semantics/|Semantics of Programming Languages]] * [[https://www.cl.cam.ac.uk/teaching/2122/ConceptsPL/|Concepts in Programming Languages]] * [[https://www.cl.cam.ac.uk/teaching/2122/HLog+ModC/|Hoare Logic and Model Checking]] * [[https://www.dcc.fc.up.pt/~ricroc/aulas/1920/il/|Foundations of Logic Languages]] * [[https://www.dcc.fc.up.pt/~pbv/aulas/linguagens/index.html|Foundations of Functional Languages]] (pt-pt) * [[https://ocw.mit.edu/courses/8-370x-quantum-information-science-i-spring-2018/|Quantum Computing]] * Software Systems * Compilers * [[https://www.cl.cam.ac.uk/teaching/2122/CompConstr/|1. Construction]] * [[https://www.cl.cam.ac.uk/teaching/2122/OptComp/|2. Optimising]] * Information Management * [[https://bu-disc.github.io/CS460-Fall2019/|1. A First Course in Database Systems]] * [[http://infolab.stanford.edu/~ullman/dbsi/win03/index.html|2. Database System Implementation]] * [[https://www.cl.cam.ac.uk/teaching/2122/InfoTheory/|Information Theory]] * Operating System Design and Implementation * [[https://www.cl.cam.ac.uk/teaching/2122/OpSystems/materials.html|1. A First Course in Operating Systems]] * [[https://www.cl.cam.ac.uk/teaching/2122/AOS/|2. Systems research (Advanced Operating Systems)]] * Concurrency * [[https://www.cl.cam.ac.uk/teaching/2122/ConcDisSys/|Multiprocessor Programming]] * [[https://www.cl.cam.ac.uk/teaching/2122/ConcDisSys/|Distributed Systems]] * [[http://www.cs.cmu.edu/afs/cs/academic/class/15418-s19/www/schedule.html|Parallel Computing]] * [[https://web.archive.org/web/20110520234945/http://mpri.master.univ-paris7.fr/C-2-3.html|Reactive Systems]] * Systems Fundamentals * [[https://blog.diogo.site/2018-09-05-unix|1. Unix Fundamentals]] * [[https://www.cl.cam.ac.uk/teaching/2122/UnixTools|2. Unix Tools]] * 3. Systems Administration * Theoretical Computer Science * [[https://www.csee.umbc.edu/portal/help/theory/|0. Foundations of Theoretical Computer Science]] * [[https://www.cse.cuhk.edu.hk/~siuon/csci3130-f18/|1. Formal Languages, Automata Theory and Models of Computation]] * [[https://www.cl.cam.ac.uk/teaching/2021/CompTheory/|2. Computability]] * [[https://www.cl.cam.ac.uk/teaching/2122/Complexity/|3. Computer Complexity Theory]] * Intelligent Systems * [[https://inst.eecs.berkeley.edu/~cs188/fa18/|Artificial Inteligence]] * Knowledge Representation and Reasoning * [[https://www.cl.cam.ac.uk/teaching/1920/NLP/|Natural Language Processing]] * [[https://www.cl.cam.ac.uk/teaching/1718/IntDesign/|Interaction Design]] * Mathematics * [[https://web.stanford.edu/class/cs103x/|Topics in Elementary Mathematics]] * Real Analysis * [[https://paginas.fe.up.pt/am1/|Single Variable]] (pt-pt) * [[https://paginas.fe.up.pt/am2/|Multivariable]] (pt-pt) * Algebra * [[https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab|Linear Algebra and Analytic Geometry]] * Abstract Algebra * [[https://www.youtube.com/playlist?list=PLi01XoE8jYoi3SgnnGorR_XOW3IcK-TP6|Group Theory]] * [[https://www.cl.cam.ac.uk/teaching/2122/CAT/|Category Theory]] * Tensor Products * [[https://villate.org/publications/Villate_2001_Equacoes_Diferenciais.pdf|Differential Equations and Difference Equations]] (pt-pt) * Complex Analysis * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNQromC4WswpU1krLOq5Ro6S|Vector Calculus and Partial Differential Equations]] * Geometry * Differential Geometry * [[https://www.cl.cam.ac.uk/teaching/2122/LogicProof/|Logic and Formal Proof]] * Number Theory, Cryptography and Applications * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNSVjnsviglFoY2nXildDCcv|Singular Value Decomposition]] * [[https://www.fc.up.pt/mp/jcsantos/PDF/Topologia.pdf|Topology]] (pt-pt) * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNT_Xh3Oy0Y4LTj0Oxo8GqsC|Fourier Analysis]] * Linear Analysis * Physics * [[https://villate.org/dynamics/index.html|Mechanics]] * Electricity and Electromagnetism * Vibrations and Waves * Thermodynamics and Structure of Matter * Topics of Modern Physics * Quantum Mechanics * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNTE4BMbTMSQgk_elqfum7zf|Dynamical Systems]] * Technology * [[https://villate.org/talks/20211129/index.html|LaTeX]] (pt-pt) * [[https://www.cl.cam.ac.uk/teaching/2021/TeX+MATLAB/|MATLAB]] * Programming Fundamentals * [[https://www.cl.cam.ac.uk/teaching/2122/ProgC/|C and C++]] * Erlang * GOLang * [[https://www.dcc.fc.up.pt/~pbv/aulas/pf/slides/|Haskell]] (pt-pt) * Java * [[https://progressivejava.blogspot.com/p/if-you-are-starting-in-java-we-sugest.html|Java]] * [[https://www.cl.cam.ac.uk/teaching/2122/OOProg/|Object Oriented Programming]] * [[https://www.cl.cam.ac.uk/teaching/2122/FJava/|Concurrency in Java]] * [[https://docplayer.com.br/5458633-Programacao-orientada-a-eventos-freepascal-lazarus.html|FreePascal + Lazarus]] (pt-pt) * Lisp * Common Lisp * Scheme * ML * [[https://www.cl.cam.ac.uk/teaching/2122/FoundsCS/|OCaml]] * [[https://www.cl.cam.ac.uk/teaching/2122/Prolog/|Prolog]] * Python * [[https://www.uni-weimar.de/de/medien/professuren/medieninformatik/mediensicherheit/lehre/ws-2018/security-engineering-course/|ADA]] * Engineering * Software Engineering * [[https://cs.ccsu.edu/~stan/classes/CS410/CS410-FA18.html|Software Engineering Methodologies]] * [[https://cs.ccsu.edu/~stan/classes/CS530/CS530-SU19.html|Software Architecture and Design]] * [[https://www.cl.cam.ac.uk/teaching/2122/SWSecEng/|Security in Software Engineering]] * [[https://cits5501.github.io/|Quality Management and Software Process Improvement]] * Formal Methods * [[https://haslab.github.io/MFES/|Software Modelling]] * [[https://haslab.github.io/MFP/CSI/2122/index|Program Design By Calculation]] * [[https://haslab.github.io/MFP/VF/2122/index|Formal Verification - Interactive Theorem Proving, Systems Specification, and Model Checking]] * [[https://haslab.github.io/MFP/PCF/2122/index|Cyber-Physical Programming]] * [[http://www.cse.chalmers.se/edu/year/2018/course/TDA567/index.html|Testing, Debugging, and Verification]] * [[https://github.com/bugcounting/software-analysis/|Software Analysis]] * [[https://ocw.tudelft.nl/courses/system-validation/|System Validation]] * [[https://www.lri.fr/~marche/MPRI-2-36-1/2019-2020/|Proof of Program]] * [[http://www.cs.cmu.edu/~15811/|Verifying Complex Systems]] * Cybersecurity * [[https://www.cs.virginia.edu/~evans/courses/cs387/|Applied Cryptography]] * Building Information Governance * Cryptocurrencies * Digital Preservation * Forensics * Fraud Detection * [[https://www.iso.org/standard/75652.html|Information Security Management]] * [[https://cnitarot.github.io/courses/ns_Spring_2016/|Network Security]] * People and Security - Social Engineering * Privacy-Enhancing Technologies * [[cybersecurity:reverse_engineering|Reverse Engineering]] * Security and Applications in Smartcards * Systems and Data Security * [[https://www.cl.cam.ac.uk/teaching/2122/Security/|Theory and Practice of Cyber Security Attacks]] * Understanding and Mitigating Malware * Graphics and Visual Computing * Computer Animation * [[https://www.youtube.com/playlist?list=PLplnkTzzqsZTfYh4UbhLGpI5kGd5oW_Hh|Computer Graphics]] * [[https://nicolbolas.github.io/oldtut/index.html|OpenGL]] * [[https://www.youtube.com/playlist?list=PLplnkTzzqsZS3R5DjmCQsqupu43oS9CFN|Interactive Graphics]] * Game Engine Programming * Image Processing * Multimedia * Virtual and Augmented Reality * Computational Science * [[https://www.cl.cam.ac.uk/teaching/2122/Bioinfo/|Bioinformatics]] * Complexity * Computational Chemistry * Computational Mathematics with SageMath * Computational Physics * Control * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNR20Mz-VpzgfQs5zrYi085m|Automatic Control]] * Linear and Nonlinear State-Space Control Theory * Decision Support Methods * Game Theory * [[https://easyperf.net/|High Performance Computing]] * [[computational_science:numerical_analysis|Numerical Analysis]] * Optimisation * [[https://projects.iq.harvard.edu/stat110/home|Probability]] * [[https://www.cl.cam.ac.uk/teaching/2122/IntroProb/|Probability for Computer Scientists]] * [[https://www.statisticshowto.com/|Statistics]] * [[https://www.cl.cam.ac.uk/teaching/1617/CompSysMod/|Simulation and Modelling]] * Computer and Electronics Engineering * [[https://www.cl.cam.ac.uk/teaching/2122/DSP/|Acquisition and Digital Signal Processing]] * Computer-aided Design (CAD) * [[https://www.cl.cam.ac.uk/teaching/2122/DSPCM/|Computer Music]] * Computer Systems Design * [[https://www.ic.unicamp.br/~sandro/cursos/mc722/2s2014/slides/|Computer Hardware]] * Instruction Set Architectures (ISA) * X86 ISA * ARM ISA * IA-32 ISA * MIPS ISA * [[https://www.cl.cam.ac.uk/teaching/1011/ECAD+Arch/|Electronic Computer-aided Design (ECAD)]] * History of Computing * Computer Vision * Digital Electronics * Electromechanical Systems * Embedded Systems * Robotics * Autonomous Robotic Systems * [[https://asl.ethz.ch/education/lectures/autonomous_mobile_robots.html|Mobile Robotics]] * Robot Kinematics and Dynamics * System-on-Chip Design * Networks Engineering * [[https://www.cl.cam.ac.uk/teaching/2122/CompNet/|Protocols and Principles of the Internet]] * Network Administration * Mobile Communication Networks * [[https://www.dcc.fc.up.pt/~pribeiro/aulas/ns2122/|Network Science (Complex Graphs Theory)]] * Data Science and Engineering * [[https://www.cl.cam.ac.uk/teaching/2122/CC/|Cloud Computing]] * [[https://www.youtube.com/playlist?list=PLMrJAkhIeNNQV7wi9r7Kut8liLFMWQOXn|Introduction to Data Science]] * [[https://www.cl.cam.ac.uk/teaching/2122/DataSci/|Data Science]] * [[https://www.dcc.fc.up.pt/~rpribeiro/aulas/DMI2021/|Machine Learning and Bayesian Inference]] * [[https://www.cl.cam.ac.uk/teaching/2122/MLRD/|Machine Learning and Real-world Data]] * [[https://www.dcc.fc.up.pt/~rpribeiro/aulas/back/TADS1920/|Advanced Topics in Data Science]] * [[https://www.cl.cam.ac.uk/teaching/1718/InfoRtrv/|Information Retrieval]]