*Foundational knowledge* is very different from *basic knowledge* : if you're a newcomer in the field, it may not be the shortest path to become "job-ready"... but what you'll learn here will last your life long !

Feel free to contribute if you know some great resources that fits the definition above.

- Structure and Interpretation of Computer Programs (MIT) (video playlist) (book)
- Mathematics for Computer Science (MIT) (video playlist)

- Software Foundations in Coq by B. Pierce (website)
- Logical Foundations (website)
- Programming Language Foundations (website) (video serie, see page bottom)
- Verified Functional Algorithms (website)

- Programming Language Foundations in Agda by P. Wadler (book) (repo)

- Category Theory for Programmers by B. Milewski (video playlist) (book)
- Programming with categories (MIT) (video playlist)
- Seven Sketches in Compositionality: An Invitation to Applied Category Theory (book)

- Propositions as Types (video)
- The Little Typer (ðŸ’² book)
- Oregon Programming Languages Summer School 2010 (video playlist)

- The Little Prover (ðŸ’² book)
- Oregon Programming Languages Summer School 2010 (video playlist)

- Dependent types with Idris by Edwin Brady (video playlist)
- Adventure with Types in Haskell - Simon Peyton Jones (video playlist)

- wikipedia article
- Programming Paradigms (Stanford) (video playlist)

- Erik Meijer: Functional Programming (video)

- Programming from the ground up by Jonathan Bartlett (book)

- Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know... (video)

- Architecture of Open Source Applications
- Volume I (website) (ðŸ’² book)
- Volume II (website) (ðŸ’² book)
- 500 lines or less (website) (ðŸ’² book)
- Performance of Open Source Applications (website) (ðŸ’² book)

- System Design (video playlist)

- Time, Clocks, and the Ordering of Events in a Distributed System (article)
- The TLA+ Video Course by Leslie Lamport (course)

- Computer Architecture (ETH ZÃ¼rich) (video playlist)
- Programming from the ground up by Jonathan Bartlett (book)

- Analysis of Algorithms by Steven Skiena (video playlist)
- Purely Functional Data Structures by Chris Okasaki (book)
- The Algorithm Design Manual (ðŸ’² book)

- Linear Algebra course by Gilbert Strang (MIT) (video playlist)

- Notes on Discrete Mathematics (Yale) (pdf)

- Introduction to Calculus (pdf)

- Mathematics of Machine Learning (MIT) (pdf)
- The Matrix Calculus You Need For Deep Learning (University of San Francisco) (pdf)
- Deep Reinforcement Learning (Berkeley) (video playlist)
- Convolutional Neural Networks for Visual Recognition (Stanford) (video playlist)
- Natural Language Processing with Deep Learning (Stanford) (video playlist)

- Network Fundamentals (video playlist)

- PKI bootcamp (video playlist)
- Introduction to Cryptography by Christof Paar (video playlist)
- Cryptography (MIT) (video playlist)

Get A Weekly Email With Trending Projects For These Topics

No Spam. Unsubscribe easily at any time.

Algorithms (10,759)Â

Awesome (3,759)Â

Cryptography (3,493)Â

Awesome List (3,471)Â

Programming Language (3,304)Â

Networking (2,621)Â

Computer Science (1,466)Â

Algorithms And Data Structures (975)Â

Linear Algebra (820)Â

Computer Architecture (229)Â

Software Architecture (183)Â

Category Theory (164)Â

Related Projects