Updates
Discoveries
Organizations
Top Tech Organizations that are doing research which will change the way our technology works.
Artificial Intelligence
Artificial Intelligence describes tools that allow machines and software to exhibit human-like intelligence
Computing Machinery and Intelligence (1950)
Steps Toward Artificial Intelligence (1960)
A Formal Basis for the Heuristic Determination of Minimum Cost Paths (1968)
Reinforcement Learning: An Introduction (1998)
Gradient-based learning applied to document recognition (1998)
A fast learning algorithm for deep belief nets (2006)
Learning Deep Architectures for AI (2009)
A Few Useful Things to Know about Machine Learning (2012)
ImageNet Classification with Deep Convolutional Neural Networks (2012)
Sequence to Sequence Learning with Neural Networks (2014)
Generative Adversarial Nets (2014)
Human-level control through deep reinforcement learning (2015)
Attention is All You Need (2017)
The Malicious Use of Artificial Intelligence: Forecasting, Prevention, and Mitigation (2018)
The Annotated Transformer (2022)
How To Build A Thinking AI (2022)
ImageBind: a new way to ‘link’ AI across the senses (2023)
AnyGPT: Unified Multimodal LLM with Discrete Sequence Modeling (2024)
Quantum Computing
Quantum Computers work on quantum bits and can manipulate atoms, electrons, or photons states
Quantum mechanical computers (1982)
A fast quantum mechanical algorithm for database search (1996)
Scalable Ion Traps for Quantum Information Processing (2003)
Topological Quantum Computation (2008)
Quantum Supremacy Using a Programmable Superconducting Processor (2019)
Internet
The Internet is a global system of interconnected computer networks that allows computers around the world to communicate and exchange information with each other
Information Flow in Large Communication Nets (1961)
A Protocol for Packet Network Intercommunication (1974)
End-to-End Arguments in System Design (1981)
World-Wide Web: Information Universe (1992)
Above the Clouds: A Berkeley View of Cloud Computing (2018)
Web 3.0: The Future of Internet (2023)
Will Admins Cope? Decentralized Moderation in the Fediverse (2023)
Cybersecurity
Cybersecurity ensures the protection of computers, servers, mobile devices, electronic systems, networks, and data from digital attacks, damage, or unauthorized access
A Mathematical Theory of Communication (1948)
Communication Theory of Secrecy Systems (1949)
New Directions in Cryptography (1978)
A Method for Obtaining Digital Signatures and Public-Key Cryptosystems (1979)
Cryptographic Communications System and Method
Minimum Disclosure Proofs of Knowledge (1986)
Proofs of Partial Knowledge and Simplified Design of Witness Hiding Protocols (1994)
The Rational Rejection of Security Advice by Users (2009)
Wikileaks and the Battle Over the Soul of the Networked Fourth Estate (2011)
Towards data justice? The ambiguity of anti-surveillance resistance in political activism (2016)
Privacy Leakage of Location Sharing in Mobile Social Networks(2018)
INTERNET ORGANISED CRIME THREAT ASSESSMENT (2021)
Creative beyond TikToks: Investigating Adolescents’ Social Privacy Management on TikTok (2023)
China content on TikTok: the influence of social media videos on national image (2023)
TIKTOK SHOWS WHY SOCIAL MEDIA COMPANIES NEED MORE REGULATION (2023)
Programming Languages
Programming languages are sets of instructions, commands, and syntax used to create software programs, scripts, and other sets of instructions for computers to execute
Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I (1960)
The Next 700 Programming Languages (1966)
Go To Statement Considered Harmful (1968)
Monitors: An Operating System Structuring Concept (1974)
Communicating Sequential Processes (1978)
Lambda Calculus: Its Syntax and Semantics (1981)
Type classes: an exploration of the design space (1997)
Dependent Types in Practical Programming (1999)
Ownership Types for Safe Programming: Preventing Data Races and Deadlocks (2002)
RustBelt: Securing the Foundations of the Rust Programming Language (2018)
Robotics
AI trained for physical tasks
Industrial Robotics
Military and Defense Robotics
Consumer and Household Robotics
Healthcare Robotics
Commercial and Retail Robotics
Agricultural Robotics
Educational and Research Robotics
Entertainment Robotics
Assistive and Accessibility Robotics
Construction and Infrastructure Robotics
Transportation Robotics
Exploration and Environmental Robotics
Drones
Social Networks
Textboards
Imageboards
Forums
Messaging
Microblogs
Macroblogs
Media Sharing
Websites
Other
Buttons
BASIC CS GUIDE
Techniques For Learning
Common Questions
Why is this so hard?
Because you're learning it for the first time. The more consistent you're the easier it will become. Everything is hard at the start.
Why do I suck at #?
Because you are not consistent and you do not put in the effort.
How do I get better at #?
Consistency & Effort. Read, Write, & Solve complex programs/problems/projects everyday and understand how the concepts relate to each other. No other way.
Master One Area > Know Foundations > Nothing
Information Systems, Networks, Databases, Cybersecurity, Cloud, DevOps, Machine Learning/Data Science, Game/Mobile/Software/Web Development
IT Certifications Map
CompTIA Map
Applied CS Map
CS Foundations Map
Always Remember
"Sometimes it is the people no one imagines anything of who do the things that no one can imagine." - Alan Turing
"Everything was made up by people that were no smarter than you” - Steve Jobs
"You have to communicate. And a lot of sort of caricature nerds forget that. They think that if they can just write the best code, they'll change the world. But you have to be able to listen. You have to be able to communicate with your would-be users and learn from them. And you have to be able to communicate your ideas to them." - Bjarne Stroustrup
Useful learning strategies
Iceberg Model
First Priniciples
Concept Map
Issue Trees
Socratic Method
CHATGPT (USE AI AS A LEARNING TOOL)
Useful Models
Layers of Abstraction
How MicroChips Work
Inside The Miracle Of The Micro Chip
Client-Server Model
Onion Model
Internet protocol packet
The Internet protocol suite
Programming Paradigms
CPU
Network security
Projects To Work On
*List of Projects
1. Build Your Own Website (Web Development)
2. Build Your Own Web Server (Web Development)
3. Build Your Own Network Stack (Networks)
4. Build Your Own Database (Databases)
5. Build Your Own Self Hosted Network (Networks)
6. Build Your Own BitTorrent Client (Networks)
7. Build Your Own Model (Machine Learning/Data Science)
8. Build Your Own Blockchain (Cybersecurity)
9. Build Your Own Docker (DevOps/Cloud Computing)
10. Build your Own Encryption Tool (Cybersecurity)
11. Build Your Own Compiler (Software Development)
12. Build Your Own Video Game (Game Development)
13. Build Your Own 3D Renderer (Game Development)
14. Build Your Own Augmented Reality (Game Development)
15. Build Your Own Neural Network (Machine Learning)
16. Build Your Own Text Editor (Software Development)
17. Build Your Own Cloud-based Service (DevOps/Cloud Computing)
18. Build Your Own Search Engine
Basic Fundamentals
Programming Languages
Python
Libraries (NumPy, Pandas, Matplotlib, Requests, BeautifulSoup, SciPy, Scikit-Learn, TensorFlow, PyTorch)
Java
Libraries (Apache Commons, Google Guava, Junit, SLF4J/Logback, Spring/Spring Boot, Hibernate, Apache Maven)
Frameworks (Spring Boot, JavaServer Faces (JSF), Hibernate, Struts)
C & C++
Libraries (POSIX, glibc, Boost, Eigen, OpenCV)
General Atmosphere of all Languages
100+ Programming Languages
High-level
Python, Java-Family (Scala, Kotlin, Groovy), C#, JavaScript-Family (TypeScript, CoffeeScript, Dart), Ruby, Swift
System Programming Language
C++, Go, Rust, Zig
Low-level
Assembly Language, C-Family
Scripting
Bash, PowerShell, Python, Perl, JavaScript, PHP
DSL (Domain-Specific Language)
SQL, HTML, CSS, R
Web Development
HTML
CSS
Frameworks (Bootstrap) (Tailwind CSS)
Javascript
Frontend Development (React) (Angular) (Vue.js) (Next.js) (Nuxt.js)
Backend Development (Node.js) (Express.js)
Operating Systems
Basic Terminology
File Systems, Permissions, Process Management, Kernel, Memory Management, Device Drivers, System Calls, Multitasking, Inter-process Communication (IPC), User Interface (UI), Command Line Interface (CLI), Graphical User Interface (GUI), Virtualization
Terminals, Command Prompt, & Shell Scripting
Basic Commands
touch (filename)
mkdir (directory)
cd (directory)
rm (filename)
rm -r (directory)
Git
Basic Commands
git add
git commit
git push origin
git pull
git branch
git checkout
Basic Terminology
README.md
Markdown
commit, push, pull, branch, merge, rebase
.gitignore
repos
cloning
forking
Git Hosting
Github
Gitlab
Codeberg
Basic Text Editors
Artificial Intelligence
Turing Machines
Machine Learning
Deep Learning
Hugging Face
(NumPy, Pandas, Matplotlib, SciPy, SymPy, IPython, Scikit-Learn, TensorFlow, Pytorch)
ChatGPT
Basic Terminology
Supervised Learning, Unsupervised Learning, Linear Regression, Deep Learning, Neural Networks, Gradient Descent, Backpropagation, Reinforcement Learning, Reinforcement Learning, Pipeline, AutoClass, AutoTokenizer, AutoModel, Saving Models, Custom Models, Trainer
Internet
Pretty Meta
The Internet (Khan Academy's Course)
Networks
Servers
Browsers
Internet Protocols
HTTP, HTTPS, DNS, IP, TCP, UDP
Basic Terminology
cookies, sessions, web servers, client-server model, CDN (Content Delivery Network), IP Address, domain names
OOP
Classes
Objects
Libraries
Frameworks
Inheritance
Polymorphism
Encapsulation
Abstraction
SOLID principles (Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, Dependency Inversion)
Design patterns (Factory, Singleton, Observer)
Cybersecurity
Attacks
SQL injection, Cross-site scripting (XSS), Cross-Site Request Forgery (CSRF), Phishing, Man-in-the-middle (MitM), Denial of Service (DoS), Distributed Denial of Service (DDoS), Malware, Brute Force, Social Engineering, Advanced Persistent Threats (APT), Zero-day Exploits, DNS Tunneling, Insider Threats
Cryptography
Symmetric Cryptography, Asymmetric Cryptography, Hash Functions, Digital Signatures, Key Exchange, Digital Certificates, Cryptocurrency
Cryptography Libraries (OpenSSL for C) (Crypto++ for C++) (PyCrypto for Python)
Security
Network security, Application security, Information security, Firewall, VPN (Virtual Private Network), Encryption, Decryption, Two-factor authentication, Privacy Policy, Intrusion Detection System (IDS), Intrusion Prevention System (IPS), Antivirus and Antimalware Software, Secure Sockets Layer (SSL) / Transport Layer Security (TLS), Security Information and Event Management (SIEM), Security Policy, Incident Response, Password Management Tools, Multi-factor Authentication, Security by Design
Databases
SQL
MySQL, PostgreSQL, Oracle, SQL Server
NoSQL
MongoDB, Apache Cassandra, Google Firebase
Basic Terminology
normalization, transactions, ACID properties, SQL queries, indexing, joins, primary key, foreign key, schema
Cloud
Cloud Services
AWS, Google Cloud, Azure, Digital Ocean, Heroku, IBM Cloud, Oracle Cloud
DevOps and CI/CD tools
Basic Terminology
Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), virtualization, load balancing, scalability, elasticity, disaster recovery
Game & App Development
Android (Java, Kotlin)
iOS and macOS (Swift, Objective-C)
Apple Developer, Swift Resources
Windows (C#, C++)
Engines
Godot (C++) (Uses GDScript, similar to Python, and C#)
GameMaker (Uses GML, similar to JavaScript)
Libraries/Frameworks
SDL (Simple DirectMedia Layer, for C++)
Monetization Platforms
Basic Terminology
Game loop, sprites, assets, animations, scenes, prefabs, colliders, rigid bodies, vectors, game physics
Math Fundamentals
Algebra
Solving linear equations and inequalities
Graphing and interpreting linear and quadratic functions
Polynomial, rational, and radical expressions
Trigonometry
Trigonometric ratios and identities
Graphs of trigonometric functions
Trigonometric equations and applications
Laws of sines and cosines
Calculus
Limits and continuity
Differentiation and its applications
Integration and its applications
Sequences and series
2D/3D Differentiation
2D/3D Integration
Linear Algebra
Vectors and vector spaces
Matrices and determinants
Linear transformations and eigenvalues
Systems of linear equations
Statistics and Probability
Properties of Probability (Methods of Enumeration, Conditional Probability, Independent Events, Bayes' Theorem, Mathematical Expectation, Random Variables, PMF, CDF, PDF, Mean = E[x] = u, Variance = Var[x] = σ^2, MGF, Indicator, Standard Deviation, Covariance, Correlation)
Discrete Distributions (Hypergeometric Distribution, Binomial Distribution, Bernoulli Distribution, Geometric Distribution, Negative Binomial Distribution, Poisson Distribution)
Continuous Distributions (Uniform Distribution, Normal Distribution, Exponential Distribution, Gamma Distribution, Beta Distribution, Chi-Square Distribution)
Multivariate Distributions (Bivariate Distribution, Multinomial Distribution, Multivariate Uniform Distribution, Multivariate Normal (MVN) Distribution)
Discrete Mathematics
Logic and proofs
Sets, functions, and relations
Graph theory
Combinatorics and counting
Discrete probability
Physics
Mechanics
Unit Conversions, Metric System, Scientific Method
Vectors in 2D and 3D
Newton's laws of motion
Conservation laws (energy, momentum)
Motion in one and two dimensions (kinematics)
Circular motion and rotational dynamics
Oscillations and waves
Electricity & Magnetism
*Electricity/Magnetism Workbook
Electric forces and fields
Electric potential and voltage
Electric current, resistance, and Ohm's law
Circuits and their elements (resistors, capacitors, inductors)
Magnetic forces and fields
Electromagnetic induction and Faraday's law
Maxwell's equations (basic understanding)
Chemistry
Valence Electrons
Silicon
Transistors & Semiconductors
Doping Materials (n-type: phosphorus, arsenic, antimony p-type: boron, gallium, indium)
Gallium Arsenide
Conductive Materials
Copper
Gold
Insulators and Dielectrics
Silicon Dioxide
Silicon Nitride
Assembly and Packaging
Solder Materials
Thermal Interface Materials (TIMs)
Computer Engineering
Analog vs Digital
Basics of Semiconductors
Transistors (CMOS) (NMOS) (PMOS)
Resistors
Capacitors
Inductors
Diodes
Binary
Logical Circuits
Boolean Algebra (De Morgan's)
SOP/POS
Truth Tables
Logic Gates (AND) (OR) (NOT) (NOR) (XOR) (NAND) (XNOR)
Combinational Circuits
Multiplexers (2:1) (4:1) (8:1) (16:1) (32:1)
Decoders (1-Hot) (0-Cold) (2:4) (3:8) (4:16)
Encoders
Arithmetic Circuits
Adder (Half) (Full)
Sequential Circuits
Latches (SR) (Gated) (D)
Flip-flops (D) (JK) (T)
Clocks
Counters
Registers
Asynchronous Circuits
Computer Design Tools
Computer-Aided Design (CAD) tools
Verilog (Hardware Description Language - HDL)
Testing Logic Circuits
Integrated Circuits
Digital ICs
Projects To Work On
Computer Hardware
Central Processing Unit (CPU) (Arithmetic Logic Unit (ALU)) (Control Unit) (Registers) (Cache)
Graphics Processing Unit (GPU) (Shader Cores) (Memory) (Rasterization Circuits) (Parallel Processing Units)
Hard Drives (Read/Write Heads) (Spindle Motor Control) (Data Encoding/Decoding) (Cache Memory)
Motherboards (Bus) (Clock Circuit) (Voltage Regulators) (BIOS/UEFI Firmware)
Random Access Memory (RAM) (Memory Cells) (Address Decoder) (Data Bus)
Power Supply Unit (PSU) (Transformers) (Rectifiers) (Voltage Regulators)
Input/Output (I/O) Ports and Controllers (Serial and Parallel Ports) (USB Controllers) (Audio and Video Ports)
Network Interface Cards (NICs) (Data Link Controller) (MAC Address Circuit) (PHY (Physical Layer) Circuit)
Cooling Systems (Fan Controllers) (Thermal Sensors)
Solid-State Drives (SSDs) (Flash Memory) (Wear Leveling Circuit) (Controller)
Interfacing and Communication Protocols (SPI, I2C, UART) (Ethernet) (Wi-Fi and Bluetooth)
Microcontrollers and Microprocessors (Architecture) (Programming) (Peripheral Interfacing)
FPGA Programming and Design (HDL Programming) (Digital System Design)
Analog Electronics (Amplifiers) (Oscillators)
Power Electronics (Converters) (Motor Drives)
Electronic Measurement and Instrumentation (Measurement Techniques) (Instrumentation)
Control Systems (Control Theory) (PID Controllers)
Embedded Systems Design (RTOS) (Embedded C Programming)
Algorithms
Sorting Algorithms
QuickSort
MergeSort
Search Algorithms
Binary Search
Breadth-First Search (BFS)
Depth-First Search (DFS)
Graph Algorithms
Dijkstra’s Algorithm
Floyd-Warshall Algorithm
Machine Learning Algorithms
Linear Regression
Gradient Descent
Convolutional Neural Networks (CNNs)
Cryptographic Algorithms
RSA Algorithm
AES (Advanced Encryption Standard)
Dynamic Programming Algorithms
Fibonacci Sequence (using memoization)
Knapsack Problem
Divide and Conquer Algorithms
QuickSort
MergeSort
Greedy Algorithms
Huffman Coding
Prim’s and Kruskal’s Algorithms
Geometric Algorithms
Convex Hull Algorithms (Graham Scan)
Network Flow Algorithms
Ford-Fulkerson Algorithm
String Matching Algorithms
KMP (Knuth-Morris-Pratt)
Rabin-Karp Algorithm
NP-Complete Problems and Approximation Algorithms
Travelling Salesman Problem (TSP)
Randomized Algorithms
QuickSort
Randomized Quicksort
Compression Algorithms
Lempel-Ziv-Welch (LZW)
Huffman Coding
Game Theory and Minima Algorithms
Minimax Algorithm
Computational Geometry Algorithms
Line Intersection and Polygon Triangulation
Scheduling Algorithms
Round-Robin Scheduling
Earliest Deadline First (EDF)
Parsing Algorithms
LR and LL Parsers
Numerical Algorithms
Newton-Raphson Method
Gaussian Elimination
Optimization Algorithms
Gradient Descent
Simulated Annealing
Graduate Jobs
Systems Analyst
IT Project Manager
Network Administrator
Database Administrator
Cybersecurity Analyst
Cloud Engineer
DevOps Engineer
Front-end Developer
Back-end Developer
Full Stack Developer
Data Scientist
Artificial Intelligence
Books
Remember, you don't have to actually buy them - only focus on the information you need for the area you're going into (use the iceberg model in combination with first principles). You can always copy and paste pdf text into chatgpt and use it for basic summaries if you need help
Mathematical Foundations
Algorithms and Data Structures
Artificial Intelligence and Machine Learning
Computer Architecture and Systems
Computer Graphics and Visualization
Databases and Data Mining
Human-Computer Interaction (HCI)
Networks and Security
Programming Languages and Compilers
Robotics
Scientific Computing
Software Engineering
Theory of Computation
Online Resources
Certifications
Coding Interview University
Teach Yourself Computer Science
FreeTechBooks
Open Textbook Library
FreeProgrammingBooks
Brutalist Report
Tech Urls
MIT
Stanford
Berkeley
Carnegie Mellon
Academia
Coursera
arxiv (GET USE TO READING RESEARCH PAPERS)
CS Rankings (Uni)
Trending AI/ML Papers
Codecademy
edX
LeetCode
Golden
Dzone
GeeksForGeeks
Learn Cybersecuirty
Learn DevOps
Guru99
Nesoacademy
Stackoverflow
Ben Eater
3blue1brown
Computer Science
Sizeofcat
Kaggle
Cool Binary Tool
HackerRank
Pluralsight
Carbon
Exercism
Codesandbox
Vimawesome
Vim Themes
MDN Web Docs
Github Skills
Chatgpt
Narrow AI Tools
Udacity
Udemy
freeCodeCamp
W3schools
Wikipedia
Codeprojects
Math For Machine Learning Map
Design Patterns
Data Science Tutorial
Data Science Toolkit
CS Map