Automiagically: A Field Guide to the Helpers That Helped Too Hard
This guide explores common pitfalls in Django's built-in features that may inadvertently cause confusion or errors, providing practical solutions to manage these 'automiagical' behaviors effectively.
Data Shape for Visualization
Learn how to reshape your data from wide to long format for better visualization in Tableau and tidy data workflows, including Python code examples and practical tips.
Data Structure Pairing: Deque + Hash Map (Rolling-Window Dedup)
A reusable pattern for time based sliding window uniqueness problems — combining a deque for order (window) and a hash map for O(1) insertions/lookups/deletes
Dependency Tradeoffs — Poetry vs PEP 621 (and editable installs)
Explore the tradeoffs between using Poetry and PEP 621 for Python dependency management, focusing on live editing and packaging strategies for local libraries in a development environment. The guide includes scripts and tips for migrating configurations and managing packages efficiently.
Examples
Comparisons of DS&A tasks across different languages"
Fixed Sliding Window: Rethinking the Pattern
A clean, reusable approach to sliding window problems — starting at the first valid state, removing conditional complexity, and focusing on window validity instead of index juggling.
How to Build Tree Structures
Explore multiple techniques for converting flat or semi-structured data into trees in Python, including recursive, map-based, and bottom-up builds like Merkle trees.
Introduction: Choosing the Right Language for Technical Interviews
A pragmatic exploration of Go, JavaScript, Python, and C++ in the high-stakes context of technical interviews. This living guide compares syntax, performance, paradigms, and practical usability to help you pick the right tool for the job.
Keep/Track Best N with Heaps
A quick reference for tracking the top N largest or smallest values in a stream — using heaps
Leetcode Toolbox: Surviving the Game
This section isn’t about data structures and algorithms — it’s about surviving the system. Tips and patterns to help you finish implementation before time runs out, even when your engineering instincts are working against you.
Many Processes, Many Interpreters
Why VS Code and modern Python tooling often show multiple Python versions simultaneously, and how different subsystems each run their own interpreter.
Mastering Pandas .loc
A complete guide to label-based selection and assignment in pandas, with real-world recipes.
Matrix Toolbox
Handy Python snippets and patterns for working with 2D grids and matrices: initialization, bounds checking, neighbor offsets, and n-distance neighbors.
My Thoughts
Explore personal reflections on Python, highlighting preferences for array slicing and Django, alongside challenges with whitespace and installation confusion.
Pandas, Mutability, and the Illusion of Pointers
How pandas DataFrames behave like pointer-passed structs, when operations mutate in place, and how to reason about copies.
Pytest Collection vs Marks
Filtering by mark (`pytest -m mymark`) does *not* prevent Pytest from running collection
Python Cheatsheet for Returning Programmers
Quick syntax and language reference for experienced developers returning to Python. Covers list comprehensions, lambda, unpacking, reflection, scoping, and more.
Solving, Not Sorting: When to Use Python’s `sorted()` and When to Drop Down
A timed problem-solver's guide to efficient sorting in Python
The Many Powers of `in` in Python
Existence checks, containment, and elegant branching
Traversing Trees: Eager vs Lazy Approaches
Compare recursive tree traversal with and without generators, highlighting performance and readability tradeoffs.
Understanding Python venv for Isolated Environments
This page explains how Python's built-in tool, 'venv', creates isolated environments for managing dependencies per project without affecting system Python.
Understanding the * Pattern in Function Definitions
Explanation of how Python’s * and ** argument patterns work, including keyword-only arguments and flexible function signatures.
When to Return a Tuple in Python
When to use tuples vs lists in Python return values. Covers immutability, multi-value returns, tuple semantics, and clean API design patterns.
Why Python is the Language of MVPs and POCs (Even if You Used to Hate It)
A personal and technical reflection on how Python became my default language for MVPs — despite my early frustrations.