WassupAI

WassupAI

16
Dec
Python ThreadPoolExecutor - Lifecycle of a Thread Pool

Python ThreadPoolExecutor - Lifecycle of a Thread Pool

A pool goes through distinct stages: initialization, task submission, and shutdown. We examine the internal state at each stage and how to manually control the lifecycle using .shutdown(wait=True) versus relying on the garbage collector.
8 min read
16
Dec
Python ThreadPoolExecutor - Context Managers

Python ThreadPoolExecutor - Context Managers

Using the with statement ensures threads are cleaned up automatically. We cover the initialization and shutdown of the pool, ensuring that system resources are released gracefully even if errors occur.
8 min read
16
Dec
Python ThreadPoolExecutor - The Executor Interface

Python ThreadPoolExecutor - The Executor Interface

The concurrent.futures module provides a high-level abstraction for threading. We introduce the Executor class, which replaces complex manual thread management with a clean, consistent, and modern API.
8 min read
16
Dec
Python ThreadPoolExecutor - The Global Interpreter Lock (GIL)

Python ThreadPoolExecutor - The Global Interpreter Lock (GIL)

The GIL is Python's controversial mutex that allows only one thread to control the interpreter at a time. Learn why this design limits performance for CPU-bound tasks but leaves I/O-bound tasks largely unaffected.
8 min read
16
Dec
Python ThreadPoolExecutor - Threads vs. Processes

Python ThreadPoolExecutor - Threads vs. Processes

Threads share memory, while processes run in separate memory spaces. We explore why threads are lightweight and ideal for I/O tasks, contrasting them with the heavier resource needs and serialization overhead of multiprocessing.
7 min read
16
Dec
Python ThreadPoolExecutor - Synchronous vs. Asynchronous

Python ThreadPoolExecutor - Synchronous vs. Asynchronous

Understanding blocking code is the first step. We distinguish between linear execution and parallel tasks to see why waiting on I/O operations (like network requests) wastes valuable time in standard, synchronous Python scripts.
7 min read
14
Dec
Linear Algebra Series - Change of Basis Matrix Solver

Linear Algebra Series - Change of Basis Matrix Solver

Interactive Solver for the Change of Basis Matrix
6 min read
14
Dec
Linear Algebra Series - The Four Fundamental Subspaces Solver

Linear Algebra Series - The Four Fundamental Subspaces Solver

Interactive Solver for The Four Fundamental Subspaces - Column Space, Row Space, Null Space and the Left Null Space
5 min read
12
Dec
Interactive SkLearn Series - Model Persistence

Interactive SkLearn Series - Model Persistence

Save your work. We’ll use joblib to serialize trained models to disk, allowing you to reload them later for inference without needing to retrain from scratch.
8 min read
12
Dec
Interactive SkLearn Series - Partial Dependence Plots

Interactive SkLearn Series - Partial Dependence Plots

Visualize cause and effect. We’ll generate Partial Dependence Plots (PDPs) to see exactly how changing a specific feature impacts the model’s predicted outcome, holding others constant.
11 min read