Programming
Courses
- UIUC Intro to Competitive Programming - https://pages.github-dev.cs.illinois.edu/sig-icpc/cs491-wf/syllabus/
- William Fiset Youtube Playlists on various topics - https://www.youtube.com/user/purpongie/playlists
- From Nand to Tetris: Building a Modern Computer From First Principles - https://www.nand2tetris.org/
Books
- Software Engineering at Google - https://abseil.io/resources/swe_at_google.2.pdf
- How to Design Programs, Second Edition - https://htdp.org/2019-02-24/index.html
- Algorithmica - https://en.algorithmica.org/hpc/ - Code
- Foundations of Multidimensional and Metric Data Structures - Hanan Samet - https://www.elsevier.com/books/foundations-of-multidimensional-and-metric-data-structures/samet/978-0-12-369446-1
- Data Structures and Algorithm Analysis - Clifford A. Shaffer - https://people.cs.vt.edu/~shaffer/Book/
Implementations
- The Stony Brook Algorithm Repository - http://algorist.com/algorist.html
- OpenDSA: Interactive Data Structures and Algorithms - https://opendsa-server.cs.vt.edu/ - Examples
Software Design
- Design Pattern - https://refactoring.guru/design-patterns
Parallel Computing
- MIT 18.337J/6.338J: Parallel Computing and Scientific Machine Learning in Julia - https://mitmath.github.io/18337/
- Patterns of Distributed Systems - https://martinfowler.com/articles/patterns-of-distributed-systems/
Data Structures
- Tradeoffs of data structures - http://www.idevelopment.info/data/Programming/data_structures/overview/Data_Structures_Algorithms_Introduction.shtml
- Applications of data structures - http://www.cs.fsu.edu/~jestes/cop3330/notes/datastruct.html
Dynamic Programming
- http://prismoskills.appspot.com/lessons/Dynamic_Programming/Chapter_01_-_Introduction.jsp
- https://medium.freecodecamp.org/demystifying-dynamic-programming-3efafb8d4296
- Dynamic Programming in Functional Programming - https://functional-algorithms-verified.org/functional_algorithms_verified.pdf
Computer Security
- picoCTF is a free computer security education program with original content built on a capture-the-flag framework - https://picoctf.org/
Operating System
- Linux Benchmarking tools - https://www.brendangregg.com/linuxperf.html
- Jeff Dean Latency Numbers over years - https://colin-scott.github.io/personal_website/research/interactive_latency.html
Hardware
- From Nand to Tetris: Building a Modern Computer From First Principles - https://www.nand2tetris.org/
- Computer Systems: A Programmer's Perspective - http://csapp.cs.cmu.edu/3e/home.html
- Semiconductors: Everything You Wanted to Know - https://www.youtube.com/watch?v=r6NUO_bymuA
- Introduction to GPUs with OpenGL - https://engineering.monstar-lab.com/en/post/2022/03/01/Introduction-To-GPUs-With-OpenGL/