Jump to content

Main Page: Difference between revisions

From Computer Science Knowledge Base
No edit summary
No edit summary
 
(48 intermediate revisions by the same user not shown)
Line 25: Line 25:


=== 1.4 Branches of Computer Science ===
=== 1.4 Branches of Computer Science ===
* [[1.4.1 Theoretical CS, Algorithms, Data Structures, AI, ML, Cybersecurity, Networking, etc.]]
* 1.4.1 [[1.4.1 Theoretical CS, Algorithms, Data Structures, AI, ML, Cybersecurity, Networking, etc.|Theoretical CS, Algorithms, Data Structures, AI, ML, Cybersecurity, Networking, etc.]]
 
=== 1.5 [[1.5 How a Computer Works|How a Computer Works]] ===


== 2.0 Foundational Concepts ==  
== 2.0 Foundational Concepts ==  
Line 98: Line 100:
*** 4.2.1.2 [[4.2.1.2 Merge Sort, Quick Sort (Divide and Conquer)|Merge Sort, Quick Sort (Divide and Conquer)]]
*** 4.2.1.2 [[4.2.1.2 Merge Sort, Quick Sort (Divide and Conquer)|Merge Sort, Quick Sort (Divide and Conquer)]]
*** 4.2.1.3 [[4.2.1.3 Heap Sort, Radix Sort|Heap Sort, Radix Sort]]
*** 4.2.1.3 [[4.2.1.3 Heap Sort, Radix Sort|Heap Sort, Radix Sort]]
** '''4.2.2 Searching Algorithms:'''
** '''4.2.2 [[4.2.2 Searching Algorithms|Searching Algorithms]]:'''
*** 4.2.2.1 Linear Search
*** 4.2.2.1 [[4.2.2.1 Linear Search|Linear Search]]
*** 4.2.2.2 Binary Search
*** 4.2.2.2 [[4.2.2.2 Binary Search|Binary Search]]
** '''4.2.3 Graph Algorithms:'''
** '''4.2.3 [[4.2.3 Graph Algorithms|Graph Algorithms]]:'''
*** 4.2.3.1 Breadth-First Search (BFS)
*** 4.2.3.1 [[4.2.3.1 Breadth-First Search (BFS)|Breadth-First Search (BFS)]]
*** 4.2.3.2 Depth-First Search (DFS)
*** 4.2.3.2 Depth-First Search (DFS)
*** 4.2.3.3 Dijkstra's Algorithm (Shortest Path)
*** 4.2.3.3 Dijkstra's Algorithm (Shortest Path)
Line 113: Line 115:
*** 4.2.5.2. Tail Recursion
*** 4.2.5.2. Tail Recursion
** '''4.2.6 Greedy Algorithms'''
** '''4.2.6 Greedy Algorithms'''
* '''5.0  [[5.0 Computer Architecture & Organization|Computer Architecture & Organization]]'''
'''5.0  [[5.0 Computer Architecture & Organization|Computer Architecture & Organization]]'''
** '''5.1 [[5.1 CPU Components|CPU Components]]'''
* '''5.1 [[5.1 CPU Components|CPU Components]]'''
*** 5.1.1 [[5.1.1 Arithmetic Logic Unit (ALU)|Arithmetic Logic Unit (ALU)]]
** 5.1.1 [[5.1.1 Arithmetic Logic Unit (ALU)|Arithmetic Logic Unit (ALU)]]
*** 5.1.2 [[5.1.2 Control Unit (CU)|Control Unit (CU)]]
** 5.1.2 [[5.1.2 Control Unit (CU)|Control Unit (CU)]]
*** 5.1.3 [[5.1.3 Registers|Registers]]
** 5.1.3 [[5.1.3 Registers|Registers]]
*** 5.1.4 [https://wiki.omnivision.website/index.php?title=5.1.4_Instruction_Cycle_(Fetch,_Decode,_Execute,_Store)&veaction=edit&section=1 Instruction Cycle (Fetch, Decode, Execute, Store)]
** 5.1.4 [https://wiki.omnivision.website/index.php?title=5.1.4_Instruction_Cycle_(Fetch,_Decode,_Execute,_Store)&veaction=edit&section=1 Instruction Cycle (Fetch, Decode, Execute, Store)]
** '''5.2 [[5.2 Memory Hierarchy|Memory Hierarchy]]'''
* '''5.2 [[5.2 Memory Hierarchy|Memory Hierarchy]]'''
*** 5.2.1 [[5.2.1 Cache Memory (L1, L2, L3)|Cache Memory (L1, L2, L3)]]
** 5.2.1 [[5.2.1 Cache Memory (L1, L2, L3)|Cache Memory (L1, L2, L3)]]
*** 5.2.2 [[5.2.2 RAM (Random Access Memory)|RAM (Random Access Memory)]]
** 5.2.2 [[5.2.2 RAM (Random Access Memory)|RAM (Random Access Memory)]]
*** 5.2.3 [[5.2.3 ROM (Read-Only Memory)|ROM (Read-Only Memory)]]
** 5.2.3 [[5.2.3 ROM (Read-Only Memory)|ROM (Read-Only Memory)]]
*** 5.2.4 [[5.2.4 Virtual Memory (Basic Concept)|Virtual Memory (Basic Concept)]]
** 5.2.4 [[5.2.4 Virtual Memory (Basic Concept)|Virtual Memory (Basic Concept)]]
** '''5.3 [[5.3 Input/Output Systems|Input/Output Systems]]'''
* '''5.3 [[5.3 Input/Output Systems|Input/Output Systems]]'''
*** 5.3.1  [https://wiki.omnivision.website/index.php?title=5.3.1_I%2FO_Devices_and_Controllers&wvprov=sticky-header I/O Devices and Controllers]
** 5.3.1  [https://wiki.omnivision.website/index.php?title=5.3.1_I%2FO_Devices_and_Controllers&wvprov=sticky-header I/O Devices and Controllers]
*** 5.3.2 [https://wiki.omnivision.website/index.php?title=5.3.2_Polling%2C_Interrupts%2C_DMA&wvprov=sticky-header Polling, Interrupts, DMA]
** 5.3.2 [https://wiki.omnivision.website/index.php?title=5.3.2_Polling%2C_Interrupts%2C_DMA&wvprov=sticky-header Polling, Interrupts, DMA]
** '''5.4 Instruction Sets'''
* '''5.4 [[5.4 Instruction Sets|Instruction Sets]]'''
*** [[5.4.1 RISC vs. CISC]]
** [[5.4.1 RISC vs. CISC]]
** '''5.5 [[5.5 Assembly Language (Basic Concepts)|Assembly Language (Basic Concepts)]]'''
* '''5.5 [[5.5 Assembly Language (Basic Concepts)|Assembly Language (Basic Concepts)]]'''
* '''6.0 Operating Systems (OS)'''
* 5.6 [[5.6 How a Computer Works|How a Computer Works]]
** '''6.1 Role and Functions of an OS'''
'''6.0 [[6.0 Operating Systems (OS)|Operating Systems (OS)]]'''
*** 6.1.1 Resource Management, Process Management, Memory Management, File Management
* '''6.1 [https://wiki.omnivision.website/index.php?title=6.1_Role_and_Functions_of_an_OS&veaction=edit Role and Functions of an OS]'''
** '''6.2 Process Management'''
** 6.1.1 [https://wiki.omnivision.website/index.php?title=6.1_Role_and_Functions_of_an_OS&veaction=edit Resource Management, Process Management, Memory Management, File Management]
*** 6.2.1 Processes vs. Threads
* '''6.2 [[6.2 Process Management|Process Management]]'''
*** 6.2.2 Process States
** 6.2.1 [[6.2.1 Processes vs. Threads|Processes vs. Threads]]
*** 6.2.3 CPU Scheduling Algorithms (FCFS, SJF, Priority, Round Robin)
** 6.2.2 [[6.2.2 Process States|Process States]]
*** 6.2.4 Inter-Process Communication (IPC)
** 6.2.3 [[6.2.3 CPU Scheduling Algorithms (FCFS, SJF, Priority, Round Robin)|CPU Scheduling Algorithms (FCFS, SJF, Priority, Round Robin)]]
*** 6.2.5 Synchronization (Semaphores, Mutexes)
** 6.2.4 [[6.2.4 Inter-Process Communication (IPC)|Inter-Process Communication (IPC)]]
** '''6.3 Memory Management'''
* 6.2.5 [[6.2.5 Synchronization (Semaphores, Mutexes)|Synchronization (Semaphores, Mutexes)]]
*** 6.3.1 Paging, Segmentation
* '''6.3 [[6.3 Memory Management|Memory Management]]'''
*** 6.3.2 Virtual Memory
** 6.3.1 [[6.3.1 Paging, Segmentation|Paging, Segmentation]]
*** 6.3.3 Page Replacement Algorithms
** 6.3.2 [[6.3.2 Virtual Memory|Virtual Memory]]
** '''6.4 File Systems'''
** 6.3.3 [[6.3.3 Page Replacement Algorithms|Page Replacement Algorithms]]
*** 6.4.1 File Organization, Directory Structures
* '''6.4 [[6.4 File Systems|File Systems]]'''
*** 6.4.2 File Allocation Methods
** 6.4.1 [[6.4.1 File Organization, Directory Structures|File Organization, Directory Structures]]
** '''6.5 Concurrency & Deadlock'''
** 6.4.2 [[6.4.2 File Allocation Methods|File Allocation Methods]]
*** 6.5.1 Conditions for Deadlock
* '''6.5 [[6.5 Concurrency & Deadlock|Concurrency & Deadlock]]'''
*** 6.5.2 Deadlock Prevention, Avoidance, Detection, Recovery  
** 6.5.1 [[6.5.1 Conditions for Deadlock|Conditions for Deadlock]]
** '''7.0 [[7.0 Networking & Internet|Networking & Internet]]'''
** 6.5.2 [[6.5.2 Deadlock Prevention, Avoidance, Detection, Recovery|Deadlock Prevention, Avoidance, Detection, Recovery]]
*** '''7.1 [[7.1 Network Models|Network Models]]'''
'''7.0 [[7.0 Images & Graphics|Images & Graphics]]'''
**** 7.1.1 [[7.1.1 OSI Model (7 Layers)|OSI Model (7 Layers)]]
* '''7.1 [[7.1 What is a Digital Image?|What is a Digital Image]]?'''
**** 7.1.2 [[7.1.2 TCP/IP Model (4/5 Layers)|TCP/IP Model (4/5 Layers)]]
** 7.1.1 [[7.1.1 Pixels and Resolution|Pixels and Resolution]]
** '''7.2 [[7.2 Protocols|Protocols]]'''
** 7.1.2 [[7.1.2 How Computers See Color (RGB, basic idea)|How Computers See Color (RGB, basic idea)]]
*** 7.2.1 [[7.2.1 HTTP/HTTPS, FTP, SMTP, POP3, IMAP|HTTP/HTTPS, FTP, SMTP, POP3, IMAP]]
* '''7.2 [[7.2 Image File Formats|Image File Formats]]'''
*** 7.2.2 [[7.2.2 TCP (Reliable, Connection-Oriented)|TCP (Reliable, Connection-Oriented)]]
** 7.2.1 [[7.2.1 JPG (for photos)|JPG (for photos)]]
*** 7.2.3 [[7.2.3 UDP (Unreliable, Connectionless)|UDP (Unreliable, Connectionless)]]
** 7.2.2 [[7.2.2 PNG (for graphics, transparency)|PNG (for graphics, transparency)]]
*** 7.2.4  [[7.2.4 IP (Internet Protocol)|IP (Internet Protocol)]]
** 7.2.3 [[7.2.3 GIF (for simple animations, limited colors)|GIF (for simple animations, limited colors)]]
*** 7.2.[[7.2.5 DNS (Domain Name System)|DNS (Domain Name System)]]
* '''7.3 [[7.3 Computer Graphics: Making Digital Art|Computer Graphics: Making Digital Art]]'''
** '''7.3 [[7.3 Network Topologies|Network Topologies]]'''
** 7.3.1 [[7.3.1 Creating Images (drawing, 3D models - simple concepts)|Creating Images (drawing, 3D models - simple concepts)]]
*** 7.3.1 [[7.3.1 Bus, Star, Ring, Mesh|Bus, Star, Ring, Mesh]]
** 7.3.2 Animation Basics (moving images)
** '''7.4 Web Technologies (Basic Overview)'''
* '''7.4 Image Processing: Changing Pictures'''
*** 7.4.1 HTML, CSS, JavaScript (Client-side)
** 7.4.1 Basic Edits (brightness, contrast, filters)
*** 7.4.2  Web Servers, APIs
** 7.4.2 Why We Process Images (fixing, enhancing, effects)
** '''8.0 Databases'''
* '''7.5 Computer Vision: Teaching Computers to See''' (Brief, exciting examples)
*** '''8.1 Database Types'''
** 7.5.1 Facial Recognition
**** 8.1.1  Relational Databases (SQL)
** 7.5.2 Object Detection (self-driving cars, sorting)
**** 8.1.2  NoSQL Databases (Key-Value, Document, Column-Family, Graph)
'''8.0 Video & Multimedia'''
*** '''8.2 Relational Database Concepts'''
* 8.1 What is Digital Video? (Explaining frames, frame rate, audio)
**** 8.2.1 Tables, Rows, Columns
* 8.2 Video File Formats (MP4, MOV, etc.)
**** 8.2.2 Primary Keys, Foreign Keys
* 8.3 Video Compression (Basic idea of making files smaller)
**** 8.2.3  Relationships (One-to-One, One-to-Many, Many-to-Many)
* 8.4 Video Streaming (How YouTube/Netflix works)
*** '''8.3 SQL (Structured Query Language)'''
* 8.5 Basic Audio Concepts (Sound waves to digital, basic formats)
**** 8.3.1  CRUD Operations (SELECT, INSERT, UPDATE, DELETE)
'''9.0  [[7.0 Networking & Internet|Networking & Internet]]'''
**** 8.3.2  JOINs, Subqueries
* '''9.1 [[7.1 Network Models|Network Models]]'''
**** 8.3.3  Data Definition Language (DDL)
** 9.1.1 [[7.1.1 OSI Model (7 Layers)|OSI Model (7 Layers)]]
**** [[9.4 Software Testing|8.3.4]]  Data Manipulation Language (DML)
** 9.1.2 [[7.1.2 TCP/IP Model (4/5 Layers)|TCP/IP Model (4/5 Layers)]]
*** '''8.4 Database Design'''
* '''9.2 [[7.2 Protocols|Protocols]]'''
**** Normalization (1NF, 2NF, 3NF, BCNF)
** 9.2.1  [[7.2.1 HTTP/HTTPS, FTP, SMTP, POP3, IMAP|HTTP/HTTPS, FTP, SMTP, POP3, IMAP]]
**** Entity-Relationship (ER) Diagrams
** 9.2.2  [[7.2.2 TCP (Reliable, Connection-Oriented)|TCP (Reliable, Connection-Oriented)]]
*** '''8.5 Database Management Systems (DBMS)'''
** 9.2.3 [[7.2.3 UDP (Unreliable, Connectionless)|UDP (Unreliable, Connectionless)]]
**** Examples (MySQL, PostgreSQL, Oracle, SQL Server) IX. Software Engineering
** 9.2.4 [[7.2.4 IP (Internet Protocol)|IP (Internet Protocol)]]
** '''9.0 [[9.0 Software Engineering|Software Engineering]]'''
** 9.2.5 [[7.2.5 DNS (Domain Name System)|DNS (Domain Name System)]]
*** '''[[9.1 Software Development Life Cycle (SDLC)]]'''
* '''9.3 [[7.3 Network Topologies|Network Topologies]]'''
**** [[9.1.1.  Phases (Requirements, Design, Implementation, Testing, Deployment, Maintenance)]]
** 9.3.1 [[7.3.1 Bus, Star, Ring, Mesh|Bus, Star, Ring, Mesh]]
**** 9.1.2  [[9.1.2 Models (Waterfall, Iterative, Spiral)|Models (Waterfall, Iterative, Spiral)]]
* '''9.4 [[7.4 Web Technologies (Basic Overview)|Web Technologies (Basic Overview)]]'''
*** '''9.2 [[9.2 Agile Methodologies|Agile Methodologies]]'''
** 9.4.1  [[7.4.1 HTML, CSS, JavaScript (Client-side)|HTML, CSS, JavaScript (Client-side)]]
**** 9.2.1  [[9.2.1 Scrum, Kanban|Scrum, Kanban]]
** 9.4.2  [https://wiki.omnivision.website/index.php?title=7.4.2_Web_Servers%2C_APIs&wvprov=sticky-header Web Servers, APIs]
**** 9.2.2  [[9.2.2 User Stories, Sprints|User Stories, Sprints]]
'''10.0  Databases'''
*** '''9.3 [[9.3 Version Control|Version Control]]'''
* '''10.1 Database Types'''
**** 9.3.1  [[9.3.1 Git (Basic Commands: clone, add, commit, push, pull, branch, merge)|Git (Basic Commands: clone, add, commit, push, pull, branch, merge)]]
** 10.1.1  Relational Databases (SQL)
**** 9.3.2 [[9.3.2 GitHub/GitLab/Bitbucket (Remote Repositories)|GitHub/GitLab/Bitbucket (Remote Repositories)]]
** 10.1.2  NoSQL Databases (Key-Value, Document, Column-Family, Graph)
*** '''9.4 [[Software Testing]]'''
* '''10.2 Relational Database Concepts'''
**** 9.4.1  [[9.4.1 Unit Testing, Integration Testing, System Testing, Acceptance Testing|Unit Testing, Integration Testing, System Testing, Acceptance Testing]]
** 10.2.1  Tables, Rows, Columns
**** 9.4.2  [[9.4.2 Test-Driven Development (TDD)|Test-Driven Development (TDD)]]
** 10.2.2  Primary Keys, Foreign Keys
*** '''9.5 [[9.5 Design Patterns|Design Patterns]]'''
** 10.2.3  Relationships (One-to-One, One-to-Many, Many-to-Many)
**** 9.5.1  [[9.5.1 Creational (Singleton, Factory)|Creational (Singleton, Factory)]]
* '''10.3 SQL (Structured Query Language)'''
**** 9.5.2  [[9.5.2 Structural (Adapter, Decorator)|Structural (Adapter, Decorator)]]
** 10.3.1  CRUD Operations (SELECT, INSERT, UPDATE, DELETE)
**** 9.5.3 [[9.5.3 Behavioral (Observer, Strategy) X. Artificial Intelligence (AI) & Machine Learning (ML)|Behavioral (Observer, Strategy) X. Artificial Intelligence (AI) & Machine Learning (ML)]]
** 10.3.2  JOINs, Subqueries
** '''10.0 [[10.0 Artificial Intelligence (AI) & Machine Learning|Artificial Intelligence (AI) & Machine Learning]]'''
** 10.3.3  Data Definition Language (DDL)
*** '''10.1 [[10.1 Introduction to AI|Introduction to AI]]'''
** 10.3.4  Data Manipulation Language (DML)
**** 10.1.1  [[10.1 Introduction to AI|Strong AI vs. Weak AI]]
* '''10.4 Database Design'''
**** 10.1.2  [[10.1.2 Applications of AI|Applications of AI]]
** 10.4.1  Normalization (1NF, 2NF, 3NF, BCNF)
*** '''10.2 [[10.2 Types of Machine Learning|Types of Machine Learning]]'''
** 10.4.2  Entity-Relationship (ER) Diagrams
**** 10.2.1  [[10.2.1 Supervised Learning (Regression, Classification)|Supervised Learning (Regression, Classification)]]
* '''10.5 Database Management Systems (DBMS)'''
**** 10.2.2 [[10.2.2 Unsupervised Learning (Clustering, Dimensionality Reduction)|Unsupervised Learning (Clustering, Dimensionality Reduction)]]
** 10.5.1 Examples (MySQL, PostgreSQL, Oracle, SQL Server) IX. Software Engineering
***** 10.2.3 [[10.2.3 Reinforcement Learning|Reinforcement Learning]]
'''11.0 [[9.0 Software Engineering|Software Engineering]]'''
*** '''10.3 [[10.3 Common ML Algorithms|Common ML Algorithms]]'''
* '''11.1 [[10.1 Software Development Life Cycle (SDLC)|Software Development Life Cycle (SDLC)]]'''
**** 10.3.1  [[10.3.1 Linear Regression, Logistic Regression|Linear Regression, Logistic Regression]]
** 11.1.1. [[10.1.1. Phases (Requirements, Design, Implementation, Testing, Deployment, Maintenance)|Phases (Requirements, Design, Implementation, Testing, Deployment, Maintenance)]]
**** 10.3.2  [https://wiki.omnivision.website/index.php?title=10.3.2_Decision_Trees%2C_Random_Forests&wvprov=sticky-header Decision Trees, Random Forests]
** 11.1.2 [[9.1.2 Models (Waterfall, Iterative, Spiral)|Models (Waterfall, Iterative, Spiral)]]
**** 10.3.3 [[10.3.3 Support Vector Machines (SVM)|Support Vector Machines (SVM)]]
* '''11.2 [[9.2 Agile Methodologies|Agile Methodologies]]'''
**** 10.3.4 [[10.3.4 K-Means Clustering|K-Means Clustering]]
** 11.2.1 [[9.2.1 Scrum, Kanban|Scrum, Kanban]]
*** '''[[10.4 Neural Networks & Deep Learning (Basic Concepts)]]'''
** 11.2.2 [[9.2.2 User Stories, Sprints|User Stories, Sprints]]
**** 10.4.1  [[10.4.1 Perceptrons, Layers#10.4.1 Perceptrons, Layers|Perceptrons, Layers]]
* '''11.3 [[9.3 Version Control|Version Control]]'''
**** 10.4.2  [[10.4.2 Activation Functions|Activation Functions]]
** 11.3.1  [[9.3.1 Git (Basic Commands: clone, add, commit, push, pull, branch, merge)|Git (Basic Commands: clone, add, commit, push, pull, branch, merge)]]
**** 10.4.3  [[10.4.3 Backpropagation (High-level)|Backpropagation (High-level)]]
** 11.3.2  [[9.3.2 GitHub/GitLab/Bitbucket (Remote Repositories)|GitHub/GitLab/Bitbucket (Remote Repositories)]]
**** 10.4.4  [[10.4.4 Convolutional Neural Networks (CNNs)|Convolutional Neural Networks (CNNs)]]
* '''11.4 [[Software Testing]]'''
**** 10.4.5  [[10.4.5 Recurrent Neural Networks (RNNs)|Recurrent Neural Networks (RNNs)]]
** 11.4.1 [[9.4.1 Unit Testing, Integration Testing, System Testing, Acceptance Testing|Unit Testing, Integration Testing, System Testing, Acceptance Testing]]
*** '''10.5 [[10.5 Natural Language Processing (NLP) / Computer Vision (CV)|Natural Language Processing (NLP) / Computer Vision (CV)]]'''
** 11.4.2 [[9.4.2 Test-Driven Development (TDD)|Test-Driven Development (TDD)]]
**** 10.5.1  [[10.5.1 Basic tasks and applications|Basic tasks and applications]]
* '''11.5 [[9.5 Design Patterns|Design Patterns]]'''
**** 10.5.2  [https://wiki.omnivision.website/index.php?title=10.5.2_Large_Language_Models_%28LLMs%29&wvprov=sticky-header Large Language Models (LLMs)]
** 11.5.1  [[9.5.1 Creational (Singleton, Factory)|Creational (Singleton, Factory)]]
***** 10.5.2.1 [[10.5.2.1 Generative Pre-trained Transformers (GPT)|Generative Pre-trained Transformers (GPT)]]
** 11.5.2  [[9.5.2 Structural (Adapter, Decorator)|Structural (Adapter, Decorator)]]
** '''11.0 Cybersecurity'''
** 11.5.3  [[9.5.3 Behavioral (Observer, Strategy) X. Artificial Intelligence (AI) & Machine Learning (ML)|Behavioral (Observer, Strategy) X. Artificial Intelligence (AI) & Machine Learning (ML)]]
*** '''11.1 Fundamentals of Security'''
'''12.0 [[10.0 Artificial Intelligence (AI) & Machine Learning|Artificial Intelligence (AI) & Machine Learning]]'''
**** Confidentiality, Integrity, Availability (CIA Triad)
* '''12.1 [[10.1 Introduction to AI|Introduction to AI]]'''
**** Authentication, Authorization, Accounting (AAA)
** 12.1.1  [[10.1 Introduction to AI|Strong AI vs. Weak AI]]
*** '''11.2 Common Threats & Attacks'''
** 12.1.2  [[10.1.2 Applications of AI|Applications of AI]]
**** Malware (Viruses, Worms, Ransomware)
* '''12.2 [[10.2 Types of Machine Learning|Types of Machine Learning]]'''
**** Phishing, Social Engineering
** 12.2.1 [[10.2.1 Supervised Learning (Regression, Classification)|Supervised Learning (Regression, Classification)]]
**** Denial of Service (DoS) / Distributed Denial of Service (DDoS)
** 12.2.2 [[10.2.2 Unsupervised Learning (Clustering, Dimensionality Reduction)|Unsupervised Learning (Clustering, Dimensionality Reduction)]]
**** Man-in-the-Middle Attacks
*** 12.2.3  [[10.2.3 Reinforcement Learning|Reinforcement Learning]]
*** '''11.3 Cryptography'''
* '''12.3 [[10.3 Common ML Algorithms|Common ML Algorithms]]'''
**** Symmetric vs. Asymmetric Encryption
** 12.3.1  [[10.3.1 Linear Regression, Logistic Regression|Linear Regression, Logistic Regression]]
**** Hashing
** 12.3.2  [https://wiki.omnivision.website/index.php?title=10.3.2_Decision_Trees%2C_Random_Forests&wvprov=sticky-header Decision Trees, Random Forests]
**** Digital Signatures
** 12.3.3  [[10.3.3 Support Vector Machines (SVM)|Support Vector Machines (SVM)]]
*** '''11.4 Network Security'''
** 12.3.4  [[10.3.4 K-Means Clustering|K-Means Clustering]]
**** Firewalls, Intrusion Detection/Prevention Systems (IDS/IPS)
* '''[[10.4 Neural Networks & Deep Learning (Basic Concepts)]]'''
**** Virtual Private Networks (VPNs)
** 12.4.1  [[10.4.1 Perceptrons, Layers#10.4.1 Perceptrons, Layers|Perceptrons, Layers]]
*** '''11.5 Web Security'''
** 12.4.2  [[10.4.2 Activation Functions|Activation Functions]]
**** Cross-Site Scripting (XSS)
** 12.4.3  [[10.4.3 Backpropagation (High-level)|Backpropagation (High-level)]]
**** SQL Injection
** 12.4.4  [[10.4.4 Convolutional Neural Networks (CNNs)|Convolutional Neural Networks (CNNs)]]
**** Cross-Site Request Forgery (CSRF) XII. Theoretical Computer Science
** 12.4.5  [[10.4.5 Recurrent Neural Networks (RNNs)|Recurrent Neural Networks (RNNs)]]
** '''12.0  Theoretical Computer Science'''
* '''12.5 [[10.5 Natural Language Processing (NLP) / Computer Vision (CV)|Natural Language Processing (NLP) / Computer Vision (CV)]]'''
*** '''12.1 Automata Theory'''
** 12.5.1 [[10.5.1 Basic tasks and applications|Basic tasks and applications]]
**** Finite Automata (DFAs, NFAs)
** 12.5.2  [https://wiki.omnivision.website/index.php?title=10.5.2_Large_Language_Models_%28LLMs%29&wvprov=sticky-header Large Language Models (LLMs)]
**** Regular Expressions
*** 12.5.2.1 [[10.5.2.1 Generative Pre-trained Transformers (GPT)|Generative Pre-trained Transformers (GPT)]]
**** Context-Free Grammars & Pushdown Automata
'''13.0  Cybersecurity'''
*** '''12.2 Computability Theory'''
* '''13.1 Fundamentals of Security'''
**** Turing Machines
** 13.1.1  Confidentiality, Integrity, Availability (CIA Triad)
**** Church-Turing Thesis
** 13.1.2  Authentication, Authorization, Accounting (AAA)
**** Halting Problem (Undecidability)
* '''13.2 Common Threats & Attacks'''
*** '''12.3 Complexity Theory'''
** 13.2.1 Malware (Viruses, Worms, Ransomware)
**** Time and Space Complexity (Big O Notation revisited)
** 13.2.2  Phishing, Social Engineering
**** P, NP, NP-Complete, NP-Hard XIII. Emerging Topics & Future Trends
** 13.2.3  Denial of Service (DoS) / Distributed Denial of Service (DDoS)
** '''13.0  Emerging Topics and Future Trends'''
** 13.2.4  Man-in-the-Middle Attacks
*** '''13.1 Quantum Computing'''
* '''13.3 Cryptography'''
**** Basic Principles (Superposition, Entanglement)
** 13.3.1  Symmetric vs. Asymmetric Encryption
**** Qubits, Quantum Gates
** 13.3.2  Hashing
*** '''13.2 Blockchain & Distributed Ledger Technologies'''
** 13.3.3  Digital Signatures
**** Decentralization, Cryptocurrencies
* '''13.4 Network Security'''
**** Smart Contracts
** 13.4.1  Firewalls, Intrusion Detection/Prevention Systems (IDS/IPS)
*** '''13.3 Cloud Computing'''
** 13.4.2  Virtual Private Networks (VPNs)
**** IaaS, PaaS, SaaS
* '''13.5 Web Security'''
**** Public, Private, Hybrid Clouds
** 13.5.1  Cross-Site Scripting (XSS)
*** '''13.4 Big Data'''
** 13.5.2  SQL Injection
**** Volume, Velocity, Variety
** 13.5.3  Cross-Site Request Forgery (CSRF) XII. Theoretical Computer Science
**** Hadoop, Spark (Basic Concepts)
'''14.0  Theoretical Computer Science'''
*** '''13.5 Ethical AI & Societal Impact'''
* '''14.1 Automata Theory'''
**** Bias in AI, Privacy Concerns
** 14.1.1  Finite Automata (DFAs, NFAs)
**** AI Safety and Governance
** 14.1.2  Regular Expressions
** 14.1.3  Context-Free Grammars & Pushdown Automata
* '''14.2 Computability Theory'''
** 14.2.1  Turing Machines
** 14.2.2  Church-Turing Thesis
** 14.2.3  Halting Problem (Undecidability)
* '''14.3 Complexity Theory'''
** 14.3.1  Time and Space Complexity (Big O Notation revisited)
** 14.3.2  P, NP, NP-Complete, NP-Hard XIII. Emerging Topics & Future Trends
'''15.0  Emerging Topics and Future Trends'''
* '''15.1 Quantum Computing'''
** 15.1.1  Basic Principles (Superposition, Entanglement)
** 15.1.2  Qubits, Quantum Gates
* '''15.2 Blockchain & Distributed Ledger Technologies'''
** 15.2.1  Decentralization, Cryptocurrencies
** 15.2.2  Smart Contracts
* '''15.3 Cloud Computing'''
** 15.3.1  IaaS, PaaS, SaaS
** 15.3.2  Public, Private, Hybrid Clouds
* '''15.4 Big Data'''
** 15.41  Volume, Velocity, Variety
** 15.42  Hadoop, Spark (Basic Concepts)
* '''15.5 Ethical AI & Societal Impact'''
** 15.51  Bias in AI, Privacy Concerns
** 15.52  AI Safety and Governance
'''16.0 Resources'''
 
* 16.1 Code.org
* 16.2 Hour of Code
* 16.3 Khan Academy
* 16.4 Scratch
* 16.5 Skillstruck.com
* 16.6 Harvard CS50
** 16.61 [[16.61 Harvard CS50 (2023) Full Computer Science University Course|Harvard CS50 (2023) Full Computer Science University Course]]
 
 





Latest revision as of 04:11, 12 July 2025

Table of Contents

Computer Science Knowledge Base

1.0 Introduction to Computer Science

1.1 What is Computer Science?

1.2 History of Computing

1.3 Key Figures in Computer Science

1.4 Branches of Computer Science

1.5 How a Computer Works

2.0 Foundational Concepts

2.1 Data Representation

2.2 Boolean Algebra & Logic Gates

2.3 Algorithms & Pseudocode

2.4 Computational Thinking

3.0 Programming Fundamentals

3.1 Programming Paradigms

3.2 Data Types & Variables

3.3 Control Structures

3.4 Functions/Methods

3.5 Basic Data Structures

3.6 Error Handling & Debugging

4.0 Data Structures Algorithms (DSA)

4.1 Data Structures

5.0 Computer Architecture & Organization

6.0 Operating Systems (OS)

7.0 Images & Graphics

8.0 Video & Multimedia

  • 8.1 What is Digital Video? (Explaining frames, frame rate, audio)
  • 8.2 Video File Formats (MP4, MOV, etc.)
  • 8.3 Video Compression (Basic idea of making files smaller)
  • 8.4 Video Streaming (How YouTube/Netflix works)
  • 8.5 Basic Audio Concepts (Sound waves to digital, basic formats)

9.0 Networking & Internet

10.0 Databases

  • 10.1 Database Types
    • 10.1.1 Relational Databases (SQL)
    • 10.1.2 NoSQL Databases (Key-Value, Document, Column-Family, Graph)
  • 10.2 Relational Database Concepts
    • 10.2.1 Tables, Rows, Columns
    • 10.2.2 Primary Keys, Foreign Keys
    • 10.2.3 Relationships (One-to-One, One-to-Many, Many-to-Many)
  • 10.3 SQL (Structured Query Language)
    • 10.3.1 CRUD Operations (SELECT, INSERT, UPDATE, DELETE)
    • 10.3.2 JOINs, Subqueries
    • 10.3.3 Data Definition Language (DDL)
    • 10.3.4 Data Manipulation Language (DML)
  • 10.4 Database Design
    • 10.4.1 Normalization (1NF, 2NF, 3NF, BCNF)
    • 10.4.2 Entity-Relationship (ER) Diagrams
  • 10.5 Database Management Systems (DBMS)
    • 10.5.1 Examples (MySQL, PostgreSQL, Oracle, SQL Server) IX. Software Engineering

11.0 Software Engineering

12.0 Artificial Intelligence (AI) & Machine Learning

13.0 Cybersecurity

  • 13.1 Fundamentals of Security
    • 13.1.1 Confidentiality, Integrity, Availability (CIA Triad)
    • 13.1.2 Authentication, Authorization, Accounting (AAA)
  • 13.2 Common Threats & Attacks
    • 13.2.1 Malware (Viruses, Worms, Ransomware)
    • 13.2.2 Phishing, Social Engineering
    • 13.2.3 Denial of Service (DoS) / Distributed Denial of Service (DDoS)
    • 13.2.4 Man-in-the-Middle Attacks
  • 13.3 Cryptography
    • 13.3.1 Symmetric vs. Asymmetric Encryption
    • 13.3.2 Hashing
    • 13.3.3 Digital Signatures
  • 13.4 Network Security
    • 13.4.1 Firewalls, Intrusion Detection/Prevention Systems (IDS/IPS)
    • 13.4.2 Virtual Private Networks (VPNs)
  • 13.5 Web Security
    • 13.5.1 Cross-Site Scripting (XSS)
    • 13.5.2 SQL Injection
    • 13.5.3 Cross-Site Request Forgery (CSRF) XII. Theoretical Computer Science

14.0 Theoretical Computer Science

  • 14.1 Automata Theory
    • 14.1.1 Finite Automata (DFAs, NFAs)
    • 14.1.2 Regular Expressions
    • 14.1.3 Context-Free Grammars & Pushdown Automata
  • 14.2 Computability Theory
    • 14.2.1 Turing Machines
    • 14.2.2 Church-Turing Thesis
    • 14.2.3 Halting Problem (Undecidability)
  • 14.3 Complexity Theory
    • 14.3.1 Time and Space Complexity (Big O Notation revisited)
    • 14.3.2 P, NP, NP-Complete, NP-Hard XIII. Emerging Topics & Future Trends

15.0 Emerging Topics and Future Trends

  • 15.1 Quantum Computing
    • 15.1.1 Basic Principles (Superposition, Entanglement)
    • 15.1.2 Qubits, Quantum Gates
  • 15.2 Blockchain & Distributed Ledger Technologies
    • 15.2.1 Decentralization, Cryptocurrencies
    • 15.2.2 Smart Contracts
  • 15.3 Cloud Computing
    • 15.3.1 IaaS, PaaS, SaaS
    • 15.3.2 Public, Private, Hybrid Clouds
  • 15.4 Big Data
    • 15.41 Volume, Velocity, Variety
    • 15.42 Hadoop, Spark (Basic Concepts)
  • 15.5 Ethical AI & Societal Impact
    • 15.51 Bias in AI, Privacy Concerns
    • 15.52 AI Safety and Governance

16.0 Resources







Consult the User's Guide for information on using the wiki software.

Getting started