Skip to content

Instantly share code, notes, and snippets.

@tuananhlai
Last active May 28, 2026 04:09
Show Gist options
  • Select an option

  • Save tuananhlai/112f9a147dfa2679989073d659b87dc6 to your computer and use it in GitHub Desktop.

Select an option

Save tuananhlai/112f9a147dfa2679989073d659b87dc6 to your computer and use it in GitHub Desktop.
Subject Content Objectives Project
Programming 101 Python - Understand core features of a programming language (common data types, variables, operators, conditional, loops, functions, classes, modules, ...)
- Know how to solve simple programming problems in Python
- Be comfortable with common development toolings (text editors)
Tic-tac-toe
Data Structures and Algorithms - Understand common data structures and how they are applied (databases, message brokers, key-value stores, ...)
- Understand common algorithms and how they are applied
- Know how to analyze the complexity of an algorithm
- Understand the problem solving process
- Know how to solve easy-medium DSA problems
Dictionary
Git - Common Git operations (clone, add, commit, push, pull, reset, ...)
- GitHub
- Understanding what a version management system is and why we need it
- Develop an intuitive understandings of how Git works
- Know how to operate Git from the command-line
- Know how to use Git & GitHub during the development process
Relational Databases - SQL
- Normalization forms
- Database Design
- ACID
- Transactions, indexes, constraints, basic query performance
- Build a simple database-backed application (SQLite3)
- Understand what a relational database is and how it differs from other data storage methods
- Understand how to use SQL to retrieve data in different ways
- Understand normalization forms and when to / not to apply them
- Know how to use SQLite3 to persist application data
- Know how to design database schemas for simple applications
To-do List
Web Development (Backend) To-do List (with HTTP endpoints)
Computer Networking - OSI Model, IP, TCP, UDP, DNS, HTTP
Software Testing - Unit / Integration / E2E testing concepts.
- Applied testing techniques to previous projects.
Web Development (Frontend) - HTML, CSS, JavaScript
- How browsers work
- Build a working web application
To-do List (with React frontend)
Operating Systems Linux
Containerization Docker
Cloud Computing AWS
System Design
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment