Exploring Ideas: A Blog on Technology, Startups, Food, and More
Welcome to my blog where I share thoughts and insights on technology, startups, and life in Atlanta. Browse through the articles below or explore by topic.
Juggling Projects? Analyze Multiple Repos at Once with GitPandas
May 23, 2025
So, you’ve got your Git analysis chops honed with gitpandas on a single repository. Nice! But what happens when your project isn’t just one repo? Maybe you’re wrangling microservices, managing a monorepo with distinct sub-projects, or just have a collection of related tools living in separate folders. Analyzing them one by one is a drag. Fear not! gitpandas has a nifty tool called ProjectDirectory...
Remote Work vs Asynchronous Work: Why Async Wins, Wherever You Are
May 22, 2025
When people talk about “remote work,” they often assume it means working asynchronously. But that’s not always true. Remote work just means you’re not in the same physical place as your team. Asynchronous work, on the other hand, is about not needing everyone to be online or working at the same time. The are related but distinct concepts. You Can Mix and Match Synchronous Remote Work: Your team is...
Group Decision Making: Team Dynamics in Life-Critical Situations
May 21, 2025
Imagine this: A flight crew faces a sudden storm. A trauma team in a hospital juggles multiple critical patients. On a nuclear submarine, officers must act fast when a system malfunctions. In all these cases, teams have to make big decisions, fast, with limited information, and the stakes couldn’t be higher. So, how do organizations make sure their teams get these decisions right, even under pres...
Stargazers CLI Update: Nested Commands, Account Trends, and Plotting!
May 20, 2025
Big news for users of the stargazers CLI! The latest update brings a cleaner command structure and some powerful new features for analyzing your GitHub stars and forks. (See the commit here) All Commands Now Under stargazers Previously, the CLI had separate entry points for different commands. Now, everything is neatly organized under the main stargazers command. This means you’ll run subcommands ...
Mutation Testing with mumut for Pygeohash
May 19, 2025
Ensuring the reliability and correctness of a library like pygeohash is paramount. While traditional code coverage metrics tell us which lines of code our tests execute, they don’t tell us how well those lines are tested. Did our tests actually check the logic, or did they just run through it? This is where mutation testing comes in. What is Mutation Testing? Mutation testing is a powerful techniq...
Decision Journals: Learning from High-Stakes Decisions
May 18, 2025
Picture this: In a hospital trauma center, a team scrambles to save a life, making split-second decisions. On an aircraft carrier, commanders weigh whether to keep flying as a storm rolls in. In a nuclear plant, operators must act fast when something goes wrong. These moments are intense, risky, and packed with lessons. But if we don’t write them down and study them, those lessons fade, and mistak...
Pad Kra Pao (Thai Basil Stir-Fry)
May 17, 2025
Pad Kra Pao is the ultimate Thai comfort food: fast, spicy, and deeply satisfying. The secret? Get a good sear on your ground pork and use the right basil (holy basil if you can find it, otherwise Thai basil). Ingredients 1 lb ground pork 4 cloves garlic, minced 2-4 Thai chilies, sliced (adjust to taste) 1 shallot, thinly sliced 2 tbsp neutral oil 2 tbsp soy sauce, mix dark and light 1 tbsp fish s...
Digging into Code Churn with GitPandas
May 16, 2025
Alright, let’s talk about Git history. Sometimes you just know a certain part of the codebase feels… messy. Maybe it’s that one module everyone’s afraid to touch, or a feature that seems to break every other week. Wouldn’t it be cool if you could quantify that gut feeling? Turns out, you can, and a neat little Python library called gitpandas makes it pretty straightforward. Today, we’re diving int...
Refactoring Library Interfaces
May 15, 2025
In our previous posts, we explored API design principles and developer ergonomics. Now, let’s tackle a common challenge: how do you take an existing library interface from clunky to elegant without breaking existing code? Identifying Pain Points Before we can improve an interface, we need to identify what makes it painful to use. Here are some common red flags I’ve encountered: 1. Inconsistent Nam...
Context-Aware Library Design: Build for Your Users
May 14, 2025
After diving into API design principles, developer ergonomics, and refactoring interfaces, let’s tackle a neat trick: making your library smart enough to feel right for everyone, from beginners to experts, without becoming a tangled mess. Know Who’s Using Your Code Building libraries like category-encoders, I’ve seen users generally fit into these buckets: Beginners: Want it simple. Give ’em clear...
Subscribe to the Newsletter
Get the latest posts and insights delivered straight to your inbox.