How we teach LLMs to write BadgerQL
LLMs don't understand BadgerQL out of the box. Here's how we used our existing integration tests to teach them BQL—and measure whether the resulting queries actually worked.
LLMs don't understand BadgerQL out of the box. Here's how we used our existing integration tests to teach them BQL—and measure whether the resulting queries actually worked.
Logging is an import part of debugging an app. Without a good method of catching errors or logs in general, you would end up with uncaught issues and could also lose valuable customers in the process. Read this article to learn how to effectively handle logs on Fly.io.
This cycle: OAuth on the hosted MCP server, EU support for self-hosting it, natural-language error search, anomaly alerts, and Oban-py support.
Markdown makes it easy to add syntax to your plain text documents for readability and machine parsing. Read to learn how to work with markdown in Python using the Python markdown package.
FastAPI is built on Starlette, but most developers never look at what's underneath. Learn what FastAPI actually adds on top of Starlette and Pydantic, what comes straight from Starlette, and when dropping down to raw Starlette makes more sense than pulling in the full stack.
A status page is an essential tool for keeping users updated, but how can you make sure yours is the best possible? In this article you'll see how to make your status page perfect, and how Honeybadger can help you do that.
Next.js gives developers a structured way to handle errors at every level of an application — from form validation to root-level crashes. Learn how to manage expected errors with return values, catch uncaught exceptions with error boundaries, and set up automatic error reporting in production.
Next.js and React are often compared, but they solve different problems. React focuses on building user interfaces, while Next.js adds structure, rendering strategies, and back-end capabilities. Read this article to see how we break down their differences.
SIEM alerts help you detect suspicious behavior before it becomes a breach. But security monitoring can quickly turn into noisy dashboards and missed threats without the right approach. Read this article to learn how to design effective SIEM alerts and implement real-time security monitoring.
When you inherit a legacy app with no tests, your first step should be to add them. But that can be a huge task! How do you even start? In this article, José will introduce us to a testing workflow called test-commit-revert (TCR) that is particularly useful for adding tests to legacy systems. Read to see practical examples and how to set up your tooling for minimal friction.