Hi there, I'm Joana. I am mainly interested in topics related to mathematics, machine learning, artificial intelligence, and computer science. I am quite passionate about the application of mathematics to various fields. I love experimenting with new technologies and learning new things. I am currently exploring Large Language Models and their applications, and working as a Generative AI Developer.
Welcome to JoJo's Blog
About
My Projects
- LLMs Journey Collection of various experiments with Large Language Models
- PaliGemma Image Segmentation An API service for performing image segmentation based on text prompts using Google's PaliGemma 2 mix model, built with FastAPI, JAX/Flax, and Transformers.
Recent Articles
All articles →Visual Calculus
Imagine riding a bicycle through a shallow puddle and leaving two curved tire tracks behind you. Can we find the area between those tracks without knowing an equation for either one? Under the usual idealization that the wheels roll without slipping sideways, the bicycle itself gives us the...
"QUERY: The HTTP Method We Have Been Faking with POST"
In June 2026 the IETF published RFC 10008, which defines a brand new HTTP method: QUERY. It is the first new general-purpose method since PATCH (RFC 5789, 2010), and it closes a gap that has existed for as long as HTTP itself: performing a safe, idempotent request that carries a request body. In...
Agno + MLX + Agent Lighting: Automatic Prompt Optimization for a Job-Search Agent
In the previous post, we built a dev.bg job-search agent with Agno and MLX that supports Human-in-the-Loop (HITL) control flow, meaning the agent pauses when it needs missing fields, asks for structured user input, and resumes from exactly where it left off. But there’s a recurring question in...
Agno + MLX: Human-in-the-Loop User Control Flow for a Job-Search Agent
In my earlier posts, we first built a dev.bg job-search assistant by serving a local MLX model via mlx_lm.server, then using the OpenAI Python client to do tool calling. The client code owned the whole “tool loop”: call model → execute tool → append tool result → call model again, etc: A Job...
Edge Functions vs. Serverless Functions
This post covers the technical and theoretical differences between Edge Functions and traditional Serverless Functions (like AWS Lambda). We are going to explore how they differ in runtime architecture, performance characteristics, and show 2 simple use cases.
Recent Tech Notes
All tech notes →"Manifest Digest: A Container Image's Immutable Fingerprint"
A manifest digest is a content-based identifier for a container image manifest. The manifest is the JSON document that points to an image's configuration and filesystem layers;...
Tester Note
A manifest digest is a content-based identifier for a container image manifest. The manifest is the JSON document that points to an image's configuration and filesystem layers;...