IntroCS Curriculum

General Resources

Computational Thinking

Binary, ASCII, Algorithms, Pseudocode.


Syntax, Variables, Data Types, Functions, Operators, Boolean Expressions, Loops, Libraries, Principles of good design.


Compiling, Bugs and Debugging, Arrays and Strings, Command-Line Interaction, Exit Codes, Typecasting.


Searching ( Linear Search, Binary Search), Sorting ( Bubble Sort, Insertion Sort, Selection Sort, Merge Sort), Computational Complexity, Recursion.


Functions, Tools for Debugging, More on Strings, Memory, Pointers, Structs, File I/O, Hexadecimal, Images.

Data Structures

Valgrind, Structures and Encapsulation, Linked Lists, Hash Tables, Trees, Tries.


Python, Conditionals, Booleans, Loops, Data Types, Functions.

Graphs & Trees

Object Oriented Programming


Cookies, Sessions, Databases, SQL, Race Conditions.

Web Programming

Internet Basics, Routers, HTTP, HTML, Forms, CSS, JavaScript, IP Addresses, TCP and IP, DNS and DHCP, Python for web programming, Flask, MVC, Autocomplete, Events, Ajax, JSON.