Computer science & electronics

See it move. Try it yourself.

From sorting races to cache hits, explore how things work through interactive experiments.

Browse all lessons

Explore by subject

Coding Tests

Applications covers connected components and shortest paths. Advanced combines distances and scheduling in an evacuation problem. Each guide includes the original problem link, an interactive experiment, and solution code.

Data Structures

Applications covers sorting, searching, ranges, trees, and hashing. Advanced covers divide and conquer, heaps, and shortest paths.

Databases

Explore indexes, JOINs, normalization, and transaction isolation with interactive examples.

Digital Logic

Build intuition for digital circuits with adders, memory, and ring oscillators.

Embedded Systems

Explore serial communication, PWM, sampling, and error detection.

Operating Systems

Experiment with CPU scheduling, memory management, and synchronization.

Learn by experimenting

  1. Predict the result before running.
  2. Step through and watch what changes.
  3. Change a condition, repeat, and compare.

These simulations model concepts for learning. Check the conditions and explanations on each page.

The person behind the projects

Explore my embedded systems and IoT research, development experience, and programs.

Developer Life Explore my programs and how to use them. Browse

Profile