The NonFunctional Dev


  • Categories
  • About
  • Contact
  • 7-3-2025

    ORMs, Coupling, and the XY Problem

    Code Quality, System Design

    In modern application development, Object-Relational Mappers (ORMs) have been used for working with relational databases to increase the development speed. They offer powerful abstractions that map database tables to in-memory objects, making it “easier” to perform data operations without writing raw SQL. However, ORMs come with trade-offs. When misunderstood or overused (or just used), they […]

    Read More

  • 6-12-2025

    Tutorial: Async TDD with pytest-asyncio

    Code Quality, Testing and Automation

    In this tutorial, we’ll walk through how to apply Test-Driven Development (TDD) to an asynchronous service to fetch customers from a database using Python’s pytest and pytest-asyncio. Along the way, you’ll use: This is ideal if you’re: Intro Test-Driven Development (TDD) TDD is a development approach where you write tests before writing the actual implementation. […]

    Read More

  • 5-30-2025

    AI in Companies: Why People and Culture Still Lead the Way

    IA, My Stories

    There’s a persistent fear around AI—one that’s not entirely irrational but often misdirected. It’s the fear that AI will replace humans: that soon, tools will take over jobs, decisions, and responsibilities, leaving people irrelevant in the workplace. But this fear usually stems from a fundamental misunderstanding of what AI is — and what it is […]

    Read More

  • 5-15-2025

    Conserva la agencia: Priorizando nuestra existencia en tiempos de la IA

    Blog, IA, My Stories

    La conciencia humana y el pensamiento racional han sido los impulsores del progreso de la humanidad. Es esa chispa de curiosidad, esa incomodidad con el statu quo, que nos empuja hacia adelante. Con el tiempo, la tecnología ha evolucionado hasta llegar al punto de poder imitar (e incluso superar) una de nuestras herramientas naturales más […]

    Read More

  • 5-15-2025

    Keep the Agency: Prioritizing Your Existence in an AI World

    Blog, My Stories

    Human consciousness has always been the driving force behind humanity’s progress. It’s that spark of curiosity, that discomfort with the status quo, that pushes us forward. Over time, technology has evolved rapidly — eventually reaching a point where it can mimic, and even outperform, one of our most valuable natural tools: rationality. Today, AI development […]

    Read More

  • 5-12-2025

    5 pitfalls to avoid when diving into async Python

    Code Quality, System Design

    So you’ve decided to “go async.” Maybe you were promised better performance. Maybe someone told you it would help with scale. Or maybe—just maybe—you were just tired of watching your app freeze while waiting for an API call. Either way, welcome to the async club. We meet weekly. We cry occasionally. We post passive-aggressive tweets […]

    Read More

  • 5-12-2025

    How I Accidentally Saved a Startup with a Bit of Async: A Tale of Latency, Lunch Breaks, and Database Tantrums

    Blog, Code Quality, My Stories, System Design

    Let me tell you the tragicomic tale of how a side project almost killed our startup—and how async Python saved it, without anyone noticing. Which is exactly the point. Act I: The Sync-pocalypse It started innocently. We were building a simple analytics dashboard—you know, one of those “just pull from a couple APIs and display […]

    Read More

  • 10-30-2024

    You don’t want to have five years of experience in any framework

    Code Quality, My Stories, System Design

    Frameworks as an Entry Point When many of us start our development careers—especially in web development—frameworks feel like what we have to go for. We often begin by choosing a programming language (the “easier” of course) and then pick a popular framework. For instance, I began with Python and naturally moved on to Django, following […]

    Read More

  • 9-25-2024

    What Should Stay and What Should Go: A Practical Guide for Refactoring Code

    Code Quality

    Let’s be honest: as developers, we’ve all written bad code at some point. Whether it’s due to deadlines, unclear requirements, or just oversight, code quality often suffers. Eventually, we’ll face the inevitable—going back to refactor or remove that bad code, which is especially true in startups where speed is preferred. (Deep breath—it’s normal.) This article […]

    Read More

  • 9-3-2024

    What does this ‘x’ mean?

    Code Quality, My Stories

    In my early days as an Electronic engineering student, I started to create small algorithms in C++ to solve these little things, such as calculate the area of a triangle. Here’s a very simple piece of code: At that very moment, as someone who is always worried about communication, I thought, what about this version? […]

    Read More

Lost your password?

Let’s find a great post!