Introduction to Object-Oriented Programming (OOP) in Python

Why Learn OOP? Lately, I’ve been revisiting some fundamentals to reinforce Python’s role as a powerful tool for object-oriented programming (OOP). My mentor encouraged me to use Python like a developer—not just as an analyst—and I completely agree. Understanding data structures is essential, but incorporating OOP principles makes you a much stronger problem solver. Surprisingly, many analysts either never learn OOP theory or only encounter it after they’ve already become proficient in Python....

February 15, 2025 · 5 min · Stann-Omar Jones

Using Virtual Environments in Python

Introduction As a Python developer, managing dependencies and ensuring a clean development environment has always been a top priority for me. Virtual environments have become my go-to tool for handling project-specific dependencies, avoiding conflicts, and maintaining a tidy global Python environment. In this blog post, I’ll share the benefits I’ve experienced using virtual environments and walk you through a quick tutorial on using virtualenvwrapper, an extension that has significantly enhanced my workflow....

March 31, 2024 · 3 min · Stann-Omar Jones

Data Structures/Objects in Python: An Overview

As a Data Scientist at the ShapeUp Project, I’ve been working on data analysis projects at Shape Up The Vote Data Project that activate barbershops and salons as voter engagement hubs in 13 states with 5,500 participating shops by 2024. We use relational organizing principles and remote communication through text and phone banking. My role involves collecting, cleaning, and enriching data on potential participants to identify the best shops to contact....

February 1, 2024 · 5 min · Stann-Omar Jones

Differentiating Between Functions, Methods, and Attributes in Python

Python can be a bit confusing at times, especially when it comes to understanding the differences between functions, methods, and attributes. Let’s break down these concepts to make them clearer. Functions Functions are more general than methods. They operate in the global environment and can work across all classes of objects. Functions are defined using the def keyword and can be called without being tied to any particular object instance....

January 15, 2024 · 2 min · Stann-Omar Jones

When Should You Map a Parameter to a New Variable in Python?

When writing functions in Python, you may sometimes find yourself assigning a function parameter to a new variable. While this can improve readability and functionality, it’s not always necessary. In this article, we’ll explore when and why mapping parameters to new variables makes sense—and when it doesn’t. 1. Preserving the Original Parameter (Avoiding Side Effects) Some data types in Python, like lists and dictionaries, are mutable, meaning that modifications inside a function can affect the original object....

January 2, 2024 · 3 min · Stann-Omar Jones