MuhammadLab
Programming

Guides and interactive tools for programming concepts.

Use programming guides for lecture structure, then connect students to visual tools for algorithms, data structures, debugging, and complexity thinking.

Start here

A structured path for teaching and self-study.

Each resource is grouped by purpose so students can read a guide first, then open a browser-based tool when they are ready to inspect an example artifact or practice a concept.

3

Learning guides

32

Interactive tools

Learning guides

Guides

Teaching-first walkthroughs for core programming concepts and coding workflows.

PythonReady to draft

Python Foundations Guide

A beginner-friendly guide for variables, loops, functions, data structures, and debugging habits.

PythonLoopsFunctionsDebugging
Coming soon
General programmingReady to draft

Algorithm Thinking Guide

Learn decomposition, step-by-step reasoning, pseudocode, and Big-O basics with practical examples.

AlgorithmsPseudocodeBig-OProblem solving
Coming soon
General programmingPlanned

Data Structures Guide

A practical guide to arrays, linked lists, stacks, queues, trees, and graphs for teaching labs.

Data structuresStackQueueTree
Coming soon

Interactive tools

Interactive tools

Browser-based programming tools students can use directly while learning concepts.

PythonAvailable

Python Code Visualizer — Step-by-Step Execution

Run Python code line-by-line and inspect variables, stack frames, and data structures at each step.

Python VisualizerPython Code VisualizerStep By StepPython Execution TracePython Tutor
PythonAvailable

Python Formatter & Syntax Checker — Free Online

Format Python code with PEP 8 style rules and check for syntax errors with line-specific feedback.

Python FormatterPython Syntax CheckerPep8 FormatterPython Code FormatPython Linter
ProgrammingAvailable

Algorithm Visualizer — Sort, Search & More

Step through classic algorithms — bubble sort, binary search, linear search, factorial — with live variable inspection.

Algorithm VisualizerSorting VisualizerBubble Sort VisualizerBinary Search Visualizer
ProgrammingAvailable

Regular Expressions Interactive Demo

A teaching-first regex playground for testing patterns, flags, capture groups, replacements, and common text-processing examples.

Regular Expressions InteractiveRegex Learning ToolRegex TesterCapture GroupsRegex FlagsText Processing
PythonAvailable

Python Loop Visualizer — Trace For & While Loops

Step through Python for and while loops and see loop variables and accumulator changes at each iteration.

Python Loop VisualizerFor Loop TraceWhile Loop TracePython Loop Debug
PythonAvailable

JSON to Python Objects Converter

Convert JSON data to equivalent Python dict, list, and literal representations instantly.

Json To PythonJson To DictConvert Json PythonJson Python Converter
PythonAvailable

Pseudocode to Python Converter

Convert plain English pseudocode to structured Python starter code with rule-based mapping.

Pseudocode To PythonPseudocode ConverterPseudocode PythonConvert Pseudocode
PythonAvailable

Python Quiz Generator — Practice Challenges

Practice Python with multiple-choice questions on variables, loops, functions, lists, and more.

Python QuizPython PracticePython McqPython QuestionsLearn Python Quiz
ProgrammingAvailable

Big-O Complexity Explainer — Time & Space

Learn and compare time complexity notations with examples, code, and a complexity comparison table.

Big O NotationTime ComplexityAlgorithm ComplexityBig O ExamplesO(n) O(log N)
PythonAvailable

Python Recursion Visualizer — Call Tree & Stack

Visualize recursive Python functions with a call stack view, argument and return value tracking.

Python Recursion VisualizerRecursive Function TraceCall Stack PythonRecursion Debug
ProgrammingAvailable

Multiprocessing Simulator — CPUs, Cores, Threads & Speedup

Explore how CPUs, cores, threads, parallel work, and overhead affect estimated runtime and speedup.

Multiprocessing SimulatorParallel SpeedupAmdahl Law SimulatorCpu Core ThreadThread Contention
PythonAvailable

Python Line-by-Line Executor — Step Execution

Execute Python code one line at a time with forward/backward controls and per-step explanations.

Python Line ByPython Step ExecutionPython StepperExecute Python Step
PythonAvailable

CSV to Python Objects Converter

Convert CSV data to Python list of dicts or list of lists with automatic header detection.

Csv To PythonCsv To DictConvert Csv PythonCsv Python Converter
ProgrammingAvailable

Truth Table Generator — Boolean Logic

Generate truth tables for Boolean expressions with AND, OR, NOT, XOR operators (up to 4 variables).

Truth Table GeneratorBoolean LogicTruth TableLogic GatesBoolean Expression
ProgrammingAvailable

Binary Search Tree Visualizer — Insert, Search, Delete

See BST ordering rules and highlight insertion/search paths and deletion cases step by step.

Bst VisualizerBinary Search TreeBst Delete CasesInorder Traversal Sorted
ProgrammingAvailable

Heap Visualizer — Min-Heap / Max-Heap

Learn heaps as complete binary trees stored in arrays. Bubble-up and heapify-down steps included.

Heap VisualizerMin HeapMax HeapHeapifyBubble Up
ProgrammingAvailable

Graph Visualizer — Nodes, Edges, BFS & DFS

Build a graph, switch directed/undirected mode, and run BFS/DFS with visited/frontier highlights.

Graph VisualizerBfsDfsDirected GraphUndirected Graph
ProgrammingAvailable

List / Array Visualizer — Indexes, Insert, Remove

Understand indexed access and shifting on insert/remove with a clean array-cell view.

Array VisualizerList VisualizerIndex AccessInsert RemoveData Structure Visualizer
ProgrammingAvailable

Priority Queue Visualizer — Serve By Priority

Learn how priority queues serve next items by priority (min/max) with history and explanations.

Priority Queue VisualizerMin PriorityMax PriorityHeap Priority Queue
PythonAvailable

Python Stack Frame Visualizer — Call Stack View

Inspect the Python call stack at each execution step — view active frames, local variables, and return values.

Stack Frame VisualizerPython Call StackPython Frame InspectorPython Stack Trace
PythonAvailable

Python Diff Checker — Compare Code Snippets

Compare two Python code snippets side-by-side with a unified diff view and change summary.

Python DiffCode DiffCompare Python CodePython Code Comparison
PythonAvailable

Python Debugging Practice — Find & Fix Bugs

Practice debugging skills by finding and fixing intentional bugs in Python code snippets with hints.

Python Debugging PracticePython Bug FixDebug PythonPython Bugs
PythonAvailable

Python Data Structure Explorer — Lists, Dicts, Sets

Explore Python lists, dictionaries, sets, and tuples interactively with visual block representations.

Python Data StructuresList VisualizerDict VisualizerPython Containers
PythonAvailable

Python Dictionary Visualizer — Explore How Dicts Work

See how dictionary keys are hashed, stored, updated, and retrieved step by step.

Python Dictionary VisualizerPython Dict VisualizerHash Table VisualizerDictionary HashingPython Dict Lookup
ProgrammingAvailable

Stack Visualizer — Push, Pop, Peek (LIFO)

Learn stack operations step by step with a visual “top” view and underflow handling.

Stack VisualizerLifoPush Pop PeekData Structure VisualizerStack Tutorial
ProgrammingAvailable

Queue Visualizer — Enqueue, Dequeue (FIFO)

Learn queue operations step by step with front/rear labels and FIFO intuition.

Queue VisualizerFifoEnqueue DequeueData Structure VisualizerQueue Tutorial
ProgrammingAvailable

Linked List Visualizer — Nodes, Pointers & Traversal

Visualize nodes and next pointers. Insert/delete/traverse with highlighted steps.

Linked List VisualizerNodes And PointersTraversalData Structure Visualizer
ProgrammingAvailable

Tree Visualizer — Hierarchy, Levels & Traversal

Learn tree concepts (root/parent/child/leaf) and traversals with step-by-step highlights.

Tree VisualizerTree TraversalPreorder Postorder LevelData Structures Visualizer
ProgrammingAvailable

Deque Visualizer — Push/Pop From Both Ends

Learn a double-ended queue with front/rear operations and step-by-step explanations.

Deque VisualizerDouble Ended QueuePush FrontPush BackPop FrontPop Back
PythonAvailable

Python Variable Tracker — Track State Changes

Track how Python variables change at every execution step with before/after highlighting.

Python Variable TrackerVariable TracePython State TrackerVariable Changes Python
PythonAvailable

Python Variable Trace Table Generator

Auto-generate a variable trace table from Python code execution for dry-run study.

Trace TableVariable TracePython TraceDry Run TableExam Trace Table
ProgrammingAvailable

Set Visualizer — Uniqueness, Membership & Set Ops

See how sets store unique elements and perform union/intersection/difference.

Set VisualizerUnion Intersection DifferenceUnique ValuesData Structure Visualizer

Suggested learning path

Start with Python foundations, then move through algorithm thinking, visualizers, data structures, debugging practice, and Big-O complexity.