Computer Science
The discipline of computation: architecture, algorithms, databases, and AI foundations.
13 Topics
AI & Machine Learning
AI and Machine Learning focus on developing systems that learn from data to make predictions or decisions. Learners will understand core algorithms, neural networks, data preprocessing, and how to train and evaluate models.
Algorithms
Algorithms are step-by-step procedures used to solve computational problems and process data. Learners will understand sorting, searching, graph traversal, and how to analyze time and space complexity using Big O notation to write efficient code.
Computer Architecture
Computer architecture explores the design and organization of computer systems, focusing on instruction sets, processors, memory hierarchies, and I/O interfaces. Learners will understand how hardware components interact to execute software instructions efficiently.
Data Structures
Data structures are specialized formats for organizing, processing, and storing data in a computer. Learners will understand arrays, linked lists, stacks, queues, trees, and graphs, and how to select the optimal structure for efficient data retrieval.
Data Structures & Algorithms
This topic combines data organization methods with step-by-step computational procedures. You will understand how to select appropriate data structures, design efficient algorithms, and analyze their time and space complexity to solve complex programming problems effectively.
Databases
Databases are structured systems for storing, managing, and retrieving data. You will understand relational and non-relational database models, write SQL queries, design schemas, and manage data integrity and transactions for modern software applications.
Introduction to CS
This introductory field covers the core principles of computing, programming, and systems. You will understand how to write simple programs, analyze basic algorithms, and grasp how hardware and software interact to solve real-world computational problems.
Introduction to Computer Science
This subject introduces the fundamental concepts of computing and programming. You will understand computational thinking, basic software development, algorithm design, and how computers process information, establishing a foundation for further technical study in the field.
Networks & Security
This field covers how computers communicate and how to protect those communications. You will understand network protocols, routing, and architecture, alongside security principles like encryption, firewalls, and defense mechanisms against network-based threats.
Operating Systems
Operating systems manage computer hardware and provide services for execution of software. You will understand process scheduling, memory management, file systems, and concurrency, enabling you to write software that interacts efficiently with the underlying system.
Programming Fundamentals
This topic covers the essential building blocks of writing computer code. You will understand variables, control flow, loops, functions, and basic data types, enabling you to write simple programs and transition to any specific programming language.
Software Engineering
Software engineering applies systematic engineering principles to software development. You will understand software lifecycles, design patterns, testing methodologies, version control, and project management practices required to build reliable, scalable, and maintainable software systems.
Theory of Computation
This mathematical branch of computer science explores what can be computed and how efficiently. You will understand automata theory, formal languages, computability, and complexity classes, helping you grasp the fundamental limits of computers and algorithms.
