Skip to content

Diagram and MicroSim Details

Total Visual Elements: 104 Diagrams: 2 MicroSims: 102

Chapter 1: Intro To Computer Science

Total elements: 5

ASCII Character Map

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to look up the ASCII numeric value for common characters and recognize the pattern of how letters and digits are organized in th...

Binary Number Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 12
  • Difficulty: Hard
  • Learning Objective: Students will be able to convert between binary and decimal representations by toggling individual bits and observing the resulting decimal value....

Compiled vs. Interpreted Languages

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare compiled and interpreted language execution models by stepping through a visual side-by-side demonstration of how sou...

Computational Thinking Pillars

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 3
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify and explain the four pillars of computational thinking (decomposition, pattern recognition, abstraction, algorithms)...

Inside a Computer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify the main hardware components of a computer (CPU, RAM, storage, input devices, output devices) and describe the role ...

Chapter 2: Python Fundamentals

Total elements: 6

Arithmetic Operators Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to apply Python's seven arithmetic operators to compute correct results, with special attention to integer division and modulo....

Code Readability Comparison

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Hard
  • Learning Objective: Students will be able to evaluate Python code for readability and identify specific improvements (naming, spacing, comments, structure)....

Expressions vs. Statements

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to classify Python code fragments as expressions (produce a value) or statements (perform an action) and explain the difference....

Python Data Types Overview

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify the four fundamental Python data types (int, float, bool, str) and classify example values into the correct type....

Python REPL vs. Scripts

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to distinguish between interactive REPL mode and script mode, understanding when to use each approach....

String Operations Playground

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 11
  • Difficulty: Hard
  • Learning Objective: Students will be able to construct string expressions using concatenation, repetition, and f-string formatting, and predict the output of string opera...

Chapter 3: Boolean Logic

Total elements: 6

Comparison Operator Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 14
  • Difficulty: Hard
  • Learning Objective: Students will be able to predict and verify the result of comparison expressions by selecting operators and values, then checking the Boolean output....

De Morgan's Laws Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 11
  • Difficulty: Very Hard
  • Learning Objective: Students will be able to apply De Morgan's Laws to transform Boolean expressions and verify equivalence using side-by-side truth tables....

Interactive Truth Table Builder

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Medium
  • Learning Objective: Students will be able to construct truth tables for compound Boolean expressions and evaluate whether two expressions are logically equivalent....

Logical Operator Venn Diagrams

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to visualize the behavior of and, or, and not operators using Venn diagrams and predict the result of combined Boolean exp...

Order of Operations Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace the step-by-step evaluation of complex Boolean expressions by applying the correct order of operations....

Truthiness Tester

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to classify Python values as truthy or falsy and predict the result of bool() conversion....

Chapter 4: Control Flow

Total elements: 6

Break vs Continue Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to distinguish between break and continue by tracing the execution of loops that use each statement and predicting the output....

Control Flow Patterns

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to identify and distinguish the three fundamental control flow patterns (sequential, selection, iteration) and trace the path of...

If-Elif-Else Flowchart

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to trace the execution path through an if-elif-else chain by entering a test value and observing which branch is taken....

Loop Patterns Comparison

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to identify which loop pattern (accumulator, counter, sentinel, flag) is being used in a given code example and explain why that...

Nested Loop Grid Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace the execution order of nested loops by watching a cell-by-cell animation across a grid and predicting which cell is fil...

Range Function Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to predict the output of the range() function with various start, stop, and step arguments by adjusting sliders and observing th...

Chapter 5: Working With Strings

Total elements: 6

Palindrome Checker

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to apply string reversal and cleaning techniques to determine whether a given string is a palindrome, and trace through the comp...

Split and Join Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 11
  • Difficulty: Hard
  • Learning Objective: Students will be able to explain how split() breaks a string into a list and how join() reassembles a list into a string, and predict the output f...

String Formatting Comparison

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to construct formatted strings using f-strings and the .format() method, and choose the appropriate formatting approach for a ...

String Indexing Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to determine the character at any given index (positive or negative) within a string....

String Methods Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 14
  • Difficulty: Hard
  • Learning Objective: Students will be able to apply common string methods to a given input string, predict the output before seeing it, and explain what each method does....

String Slicing Playground

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 16
  • Difficulty: Hard
  • Learning Objective: Students will be able to use slice notation to extract substrings, predict the result of a slice expression, and experiment with start, stop, and step...

Chapter 6: Functions And Modular Design

Total elements: 6

Arguments vs Parameters

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 1
  • Difficulty: Hard
  • Learning Objective: Students will be able to distinguish between parameters (in the definition) and arguments (in the call), and between positional, keyword, and default ...

Function Anatomy

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify the parts of a Python function definition — the def keyword, function name, parameters, colon, body, and return st...

Function Call Flow

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace the flow of execution when a function is called, including how arguments are passed, how the function body runs, and ho...
  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to recognize and apply common function patterns (input validation, multiple returns, result accumulation, function composition) ...

Modular Design Builder

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 9
  • Difficulty: Hard
  • Learning Objective: Students will be able to break a monolithic program into modular functions by identifying logical units of work and creating appropriate function boun...

Variable Scope Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 11
  • Difficulty: Hard
  • Learning Objective: Students will be able to predict the value of variables at different points in a program by understanding the rules of local and global variable scope...

Chapter 7: Higher Order Functions And Recursion

Total elements: 6

Factorial Recursion Tree

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace through recursive factorial calls, identify the base case and recursive case, and explain how the return values cascade...

Fibonacci Tree Visualization

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 13
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace Fibonacci recursion, identify redundant calculations in tree recursion, and compare the number of function calls for di...

Higher-Order Functions Flow

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to explain what makes a function "higher-order" and classify examples as higher-order or regular functions....

Map Filter Reduce Pipeline

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 12
  • Difficulty: Hard
  • Learning Objective: Students will be able to chain map, filter, and reduce operations on a list and predict the output at each stage....

Recursion vs Iteration Side-by-Side

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 19
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare recursive and iterative implementations of the same algorithm side by side, tracking execution steps, memory usage, a...

Recursive Call Stack Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 24
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace the call stack during recursive execution, identify when frames are pushed and popped, and determine the value of local...

Chapter 8: Lists

Total elements: 6

List Creation Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to create Python lists and visualize how items are stored in indexed positions....

List Indexing and Slicing Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to use positive and negative indices to access specific list items and apply slice notation to extract sublists....

List Methods Playground

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to apply common list methods (append, insert, remove, pop, sort, reverse) and predict the resulting list state....

List Traversal Animator

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 15
  • Difficulty: Hard
  • Learning Objective: Students will be able to trace the execution of a for loop over a list and predict the output for each iteration....

Nested List Grid Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to access elements in nested lists using double-index notation and interpret a list of lists as a 2D grid....

Zip Function Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to use the zip function to combine multiple lists element by element and predict the output of zip operations....

Chapter 9: Advanced List Operations

Total elements: 6

List Aliasing Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to explain the difference between creating an alias and creating an independent copy by observing how variable names point to ob...

List Operations Cheat Sheet

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 3
  • Difficulty: Medium
  • Learning Objective: Students will be able to quickly recall the syntax and purpose of all advanced list operations covered in this chapter....

List Statistics Dashboard

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Hard
  • Learning Objective: Students will be able to use len, min, max, and sum to compute basic statistics on a list of numbers and interpret the results visually....

Queue Simulator

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to demonstrate FIFO (First In, First Out) behavior by enqueuing and dequeuing items and contrast it with stack (LIFO) behavior....

Shallow vs Deep Copy Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 9
  • Difficulty: Hard
  • Learning Objective: Students will be able to distinguish between shallow and deep copying by observing how changes to nested elements propagate (or don't) in each type of...

Stack Simulator

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Medium
  • Learning Objective: Students will be able to demonstrate LIFO (Last In, First Out) behavior by pushing and popping items on a visual stack and predicting the next item to...

Chapter 10: Tuples And Sets

Total elements: 6

Python Collections Overview

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 1
  • Difficulty: Medium
  • Learning Objective: Students will be able to classify Python's four core collection types (list, tuple, set, frozenset) by their properties and select the appropriate typ...

Removing Duplicates Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 9
  • Difficulty: Hard
  • Learning Objective: Students will be able to use a set to remove duplicate values from a list by stepping through the conversion process and observing how duplicates are ...

Tuple and Set Concept Map

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Medium
  • Learning Objective: Students will be able to summarize the relationships between tuples, sets, frozensets, and lists by exploring a concept map that connects their shared...

Tuple vs List Mutability

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to explain the difference between mutable lists and immutable tuples by observing how modification operations succeed on lists b...

Tuples vs Lists Comparison

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Hard
  • Learning Objective: Students will be able to choose between tuples and lists for a given scenario by comparing their properties and trade-offs....

Venn Diagram Set Operations

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to compute union, intersection, difference, and symmetric difference of two sets by interacting with a Venn diagram and seeing t...

Chapter 11: Dictionaries

Total elements: 6

Counting and Grouping Patterns

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 12
  • Difficulty: Hard
  • Learning Objective: Students will be able to implement counting and grouping patterns by watching how a dictionary builds up step by step as data is processed....

Dict vs List Lookup Performance

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare the lookup performance of lists vs dictionaries and explain why dictionaries are faster for membership testing....

Dictionary Iteration Flowchart

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to trace through different dictionary iteration patterns (keys, values, items) and predict the output at each step....

Dictionary Structure Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to visualize how a Python dictionary stores key-value pairs and understand the mapping relationship between keys and values....

Dictionary Use Cases Infographic

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify common real-world scenarios where dictionaries are the appropriate data structure and explain why....

Nested Dictionary Explorer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Medium
  • Learning Objective: Students will be able to navigate through nested dictionaries by clicking through levels of keys and constructing the bracket-chain notation needed to...

Chapter 12: Classes And Objects

Total elements: 6

Class vs. Object Visual

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 1
  • Difficulty: Medium
  • Learning Objective: Students will be able to distinguish between a class (blueprint/template) and an object (instance) by seeing a visual analogy of a cookie cutter produ...

Dog Class Complete Structure

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to read a class diagram showing the structure of a Python class, identifying its attributes and methods....

Encapsulation Bank Vault Analogy

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Medium
  • Learning Objective: Students will be able to explain how encapsulation protects an object's internal data by restricting direct access and using getter/setter methods as ...

Instance vs. Class Attributes

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 1
  • Difficulty: Medium
  • Learning Objective: Students will be able to differentiate between instance attributes (unique per object) and class attributes (shared across all objects) by viewing a m...

OOP Benefits Concept Map

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Medium
  • Learning Objective: Students will be able to summarize the key benefits of OOP (organization, reusability, encapsulation, real-world modeling, teamwork) and explain why O...

Object Interaction Playground

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to create Dog objects, call methods, and observe results in an interactive playground that demonstrates class instantiation, met...

Chapter 13: Inheritance And Polymorphism

Total elements: 6

Animal Class Hierarchy

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to trace inheritance relationships in a class hierarchy and identify which attributes and methods each class inherits versus def...

Dunder Methods Cheat Sheet

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify common dunder methods, the operators they map to, and the purpose of each....

Music Library Class Diagram

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Easy
  • Learning Objective: Students will be able to analyze a multi-class system and identify inheritance, composition, abstract methods, operator overloading, and the iterator ...

Polymorphism Playground

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 12
  • Difficulty: Medium
  • Learning Objective: Students will be able to demonstrate polymorphism by selecting different animal types, calling the same method on each, and observing different behavi...

Shape Hierarchy with Abstract Base Class

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 3
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify abstract classes and understand why they cannot be instantiated directly, by interacting with a visual hierarchy tha...

UML Class Diagram Builder

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to read and construct UML class diagrams that show inheritance and composition relationships between classes....

Chapter 14: Errors And Exceptions

Total elements: 3

Error Type Identifier

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare and contrast syntax errors, runtime errors, and logic errors by identifying when each occurs, how Python reports them...

Python Exception Hierarchy

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 11
  • Difficulty: Medium
  • Learning Objective: Students will be able to construct try-except blocks by dragging code statements into the correct positions within a try-except structure....

Try-Except-Finally Flow Chart

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Hard
  • Learning Objective: Students will be able to predict the output of Python code containing try-except-else-finally blocks with various exception scenarios by tracing throu...

Chapter 15: File Input And Output

Total elements: 6

CSV File Structure

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to interpret the structure of a CSV file by mapping raw comma-separated text to a table representation and back....

File Format Decision Tree

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to choose the appropriate file format (plain text, CSV, or JSON) for a given data storage scenario and justify their choice....

File I/O Flow

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to describe the sequence of operations in a file I/O workflow: open, read/write, and close....

JSON to Dictionary Mapping

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to convert between JSON text and Python dictionary representations by editing one view and seeing the other update automatically...

Read Methods Comparison

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare the behavior of read(), readline(), and readlines() and predict the output of each method for a given file....

With Statement vs Manual Close

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 6
  • Difficulty: Medium
  • Learning Objective: Students will be able to explain why the with statement is safer than manual open()/close() by observing what happens when an error occurs durin...

Chapter 16: Software Engineering

Total elements: 3

Comment Quality Checker

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to predict which code blocks execute when a Python file is run directly versus when it is imported as a module....

Git Workflow Visualizer

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Hard
  • Learning Objective: Students will be able to identify code that violates the DRY principle and explain how to refactor it using functions....

Software Development Lifecycle

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to distinguish between Python modules and packages, and explain how import statements connect them....

Chapter 17: Testing And Debugging

Total elements: 3

TDD Cycle

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 9
  • Difficulty: Medium
  • Learning Objective: Students will be able to use breakpoints and step-through controls to trace the execution of a Python function and identify where a bug occurs....

Unit Test Runner

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 4
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify boundary values for a given function specification and predict whether each test input will pass or fail....

Which Debugging Strategy Should You Use?

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 12
  • Difficulty: Medium
  • Learning Objective: Students will be able to write and test input validation rules for common data types (age, email, password) and predict which inputs will pass or fail...

Chapter 18: Searching And Sorting

Total elements: 3

Big-O Growth Rate Chart

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 2
  • Difficulty: Medium
  • Learning Objective: Students will be able to select an appropriate search or sort algorithm for a given scenario and justify their choice based on input characteristics a...

Binary Search Step-by-Step

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare the performance of selection sort, insertion sort, and merge sort by watching them sort identical arrays side by side...

Linear Search Flowchart

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 10
  • Difficulty: Hard
  • Learning Objective: Students will be able to execute a linear search on a given array by stepping through the algorithm and predicting whether each element matches the ta...

Chapter 19: Algorithm Analysis

Total elements: 3

[](../chapters/19-algorithm-analysis/index.md#diagram-)

  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Medium

| Complexity Class | Name | Example | Operations for ( n = 1{,}000 ) |

  • Type: Diagram
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Easy

| Strategy | Approach | When to Use | Guarantee |

  • Type: Diagram
  • Bloom's Taxonomy: Not specified
  • UI Elements: 0
  • Difficulty: Easy

Chapter 20: Advanced Python

Total elements: 6

Collections Module Overview

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 3
  • Difficulty: Medium
  • Learning Objective: Students will be able to identify the four main collections module classes (Counter, defaultdict, OrderedDict, namedtuple) and describe when to use ea...

Context Manager Flow

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to trace the execution flow of a context manager, identifying when enter and exit are called....

Generator vs List Memory

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 9
  • Difficulty: Hard
  • Learning Objective: Students will be able to compare memory usage between lists and generators by observing a visual representation of how each stores data....

How Decorators Work

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 5
  • Difficulty: Medium
  • Learning Objective: Students will be able to trace how a decorator wraps a function by watching an animated flow diagram of the decoration process....

Python Best Practices Checklist

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 8
  • Difficulty: Hard
  • Learning Objective: Students will be able to evaluate Python code snippets against best practices and identify areas for improvement....

Regex Pattern Tester

  • Status: Specified
  • Type: Microsim
  • Bloom's Taxonomy: Not specified
  • UI Elements: 7
  • Difficulty: Hard
  • Learning Objective: Students will be able to write and test simple regular expressions by entering patterns and seeing matches highlighted in real time....