Training Projects

1. Data Structures in C

Code: projects/01_data_structures/data_structures.c Goal: Implement linked list, stack, BST with proper memory management Concepts: pointers, malloc/free, structs, testing with assert

2. Sorting and Search in C

Code: projects/02_algorithms/algorithms.c Goal: Implement mergesort, quicksort, binary search Concepts: divide and conquer, recursion, Big O

3. TCP Echo Server

Code: projects/03_systems/echo_server.c Goal: Handle multiple clients with epoll Concepts: sockets, file descriptors, multiplexing

4. PID Controller Simulation

Code: projects/04_embedded/pid_controller.py Goal: Tune PID for a first-order system, plot step response Concepts: feedback control, tuning, stability

5. Kalman Filter

Code: projects/05_control/kalman_filter.py Goal: Track a moving object from noisy measurements Concepts: state estimation, predict-update, noise parameters

6. Packet Parser

Code: projects/06_networking/packet_parser.py Goal: Parse raw TCP/IP packet bytes, extract headers Concepts: binary protocols, struct, network byte order