Systems | Development | Analytics | API | Testing

Monitoring Django Query Performance with AppSignal

Slow database queries are really a pain. It’s easy to blame Django for taking ages to process a request, but the real issue may lie in an SQL query not doing what it should be. These performance degrading queries are often hiding in plain sight. By the time you notice them, they are already affecting your end users. AppSignal is an application performance monitoring (APM) tool with support for Python and Django out of the box.

Signal Forms in Angular: The Missing Link in Modern Reactivity

For years, Angular lived with a subtle contradiction. The framework steadily modernized its reactivity model with signals, fine-grained change detection, and a clearer mental model for component state. Yet forms - arguably one of the most important parts of most applications - continued operating under an older, push-based system built around events and subscriptions. Developers felt this split immediately.

Tracking Celery Task Failures in Python

Whenever you place an order on Amazon (or any other e-commerce site for that matter), you get that “order placed successfully” notification almost instantly. But did you know that there’s much more to the whole experience than meets the eye? In Python applications, Celery is the major driver behind the whole thing. The tasks that take time are queued and sent to brokers.

Monitoring Express Route Performance with AppSignal

Slow Express routes rarely look broken in logs. They just feel sluggish to users. With AppSignal, though, you can quickly identify which endpoints are the slowest, gain insight into each request, and find out if the latency is related to any errors or slow queries. In this guide, you'll set up a mock Express application, create a load, and use AppSignal to analyze a route's performance as if you were working through a live incident.

Debugging Slow Ecto Queries with AppSignal

A sports car can only be driven as fast as the road it's driven on. If you're stuck behind a tractor on a single-lane road, you're not going anywhere fast. The same idea applies to web performance: your application's throughput is only as fast as it's slowest bottleneck. For Phoenix applications, that bottleneck is almost always the database.

Domains and Resources in Ash for Elixir

If you’ve been on the fence about trying the Ash Framework, this post is for you. We’re going to explore why Ash is a game changer for Elixir developers by building something complex, real, but surprisingly elegant. We’ll create AshTherapy, an AI-powered therapeutic chat service that handles conversations, messages, and user interactions — all powered by Ash. Before we go further, let’s first answer the question: what exactly is Ash?

An Introduction to Ruby Parsing with Prism

You might have heard about Prism, the new Ruby parser. Perhaps you've heard it's faster, more reliable, and more powerful than what we had before. Or maybe you never took a compilers class and aren't sure about what this actually means. I'm here to tell you all about it, and how it's changing our lives as Ruby developers. Today, I want to take you from square one to writing your first transpiler.

Create a Markdown Editor in Ruby on Rails

In recent years, Markdown has become the lingua franca of plain-text files on the web. If you're a developer, you have read — and maybe even written — hundreds of Markdown documents over the course of your career. GitHub repositories use README files written in Markdown. Stack Overflow and Reddit use it to format posts. Technical documentation, blog posts, and entire books are written in Markdown. And it's not just for humans either!

Improve Query Performance Using Python Django QuerySets

When developing web applications with Django, your interaction with the database impacts overall application performance. Django's Object-Relational Mapper (ORM) is a powerful ally that offers an intuitive way to work with your data through abstractions called QuerySets. These are your primary tools for fetching, filtering, creating, and managing data. In this article, we'll explore fundamental — yet highly effective — techniques to optimize your Django QuerySets.