Homepage / Notes / Computer Science
Harvard CS61: Systems Programming and Machine Organization
Ahead-of-time (AOT) compilation
When you compile code in advance, like in C / C++
Just-in-time (JIT) compilation
When code is compiled as it's being ran, but the machine code is being saved, so that the 2nd time a piece of code is being ran, it's very fast
What is LLVM?
Harvard CS153: Compilers
Cornell CS6120: Advanced Compilers: The Self-Guided Online Course
Software Design Patterns
Single instantiation of a class
Software Design Principles
Harvard CS51: Abstraction and Design in Computation
Tacit / Point-free Programming
https://en.wikipedia.org/wiki/Tacit_programming A programming paradigm in which function definitions do no identify the arguments on which they operate.
Functional Algorithms, Verified
A function that takes another function as an argument, and return a function
Tart is a virtualization toolset to build, run and manage macOS and Linux virtual machines on Apple Silicon.
Say goodbye to slow, clunky containers and VMs
OrbStack is the fast, light, and easy way to run Docker containers and Linux. Develop at lightspeed with our Docker Desktop alternative.
Application Layer Protocols
* Item 1
* Item 2
* Item 3
Read the Imposter's Handbook? => Started on <2021-02-17> "Season 2" available for after => https://bigmachine.io/products/imposter-season-2/
SymbolHound is a search engine that doesn't ignore special characters. This means you can easily search for symbols like &, %, and π. We hope SymbolHound will help programmers find information about their chosen languages and frameworks more easily.
The AI search engine for developers.
List of Resources
List of Stanford CS classes
Structure and Interpretation of Computer Programs (SICP)
Concepts, Techniques and Models of Computer Programming
by Peter Van-Roy
https://medium.com/basecs Exploring the basics of computer science, every Monday, for a year.
The Odin Project
Make a Lisp
Seven Languages in Seven Weeks
by Bruce A. Tate
by Tom Stuart
Theory of Computation
What Books Should Everyone Read?
Software Design for Flexibility: How to Avoid Programming Yourself Into a Corner
by Chris Hanson and Gerald Jay Sussman
Foundations of Computer Science
Preparing for technical interviews
NeetCode YouTube Channel - Review / solution of interview questions
https://leetcode.com/ LeetCode is the best platform to help you enhance your skills, expand your knowledge and prepare for technical interviews.
Coding Interview University
https://github.com/jwasham/coding-interview-university A complete computer science study plan to become a software engineer.
Deep Learning Interviews: Hundreds of fully solved job interview questions from a wide range of key topics in AI
The 30-minute guide to rocking your next coding interview
Lessons From A Tech Job Search
Job Hunting While Day-Jobbing
How to Pass a Software Engineering Coding Interview
Cracking the Coding Interview
by Gayle Laakmann McDowell
Gaming CS Interviews
Tech Interview Handbook
by Charles Petzold
2nd Edition came out <2022-08-07>
by Robert Martin (Uncle Bob)
The Pragmatic Programmer
by Andre Hunt, David Thomas
by Steve McConnell
The Mythical Man-Month
by Fred Brooks
Coders at Work
by Peter Seibel
Teach Yourself Computer Science
Open Source Society University
8483's web development notes
Putting the "You" in CPU
Performance Engineering Of Software Systems
The Missing Semester of Your CS Education