Glossary
A few words about the technologies and terms used in my projects, with links to learn more.
API
A set of rules that lets software applications exchange data and request services from one another.
Official resources:MDN: APIDocker
A platform for building and running applications in containers.
Official resources:Docker documentationDocker Compose
A tool for defining and running multi-container applications from a YAML file.
Official resources:Docker Compose documentationFastAPI
A Python framework for building web APIs, with data validation and automatically generated documentation.
Official resources:FastAPIFastify
A Node.js framework for building web servers and APIs, with plugins and data validation.
Official resources:FastifyGateway
In software, a component that manages communication with an external system, hiding the technical details of the integration from the rest of the application.
Official resources:Martin Fowler: GatewayInform
A programming language and development system for interactive fiction: stories explored through text commands.
Official resources:InformJaeger
A tool for tracing a request across multiple services, helping locate delays and errors.
Official resources:JaegerJavaScript
A programming language used to add interactive behavior to web pages and to build applications that also run outside the browser, for example with Node.js.
Official resources:MDN JavaScript GuidejOOQ
A library for writing SQL queries in Java or Kotlin, using generated code to check table and column types.
Official resources:jOOQKafka
A distributed platform for publishing, storing and reading streams of events. Applications communicate with its servers through the Kafka protocol.
Official resources:Apache KafkaKotlin
A programming language that works with Java, used for backend services, Android apps and multiplatform applications.
Official resources:KotlinNode.js
An environment for running JavaScript outside the browser, for example to build servers and command-line tools.
Official resources:Node.jsOllama
A tool for running language models locally and making them available to applications through an API.
Official resources:OllamaOpenSearch
A search and analytics engine for indexing data and querying it, including full-text searches.
Official resources:OpenSearchOpenTelemetry
A set of standards and tools for collecting traces, metrics and logs that describe how an application behaves.
Official resources:OpenTelemetryPostgreSQL
A relational database that stores structured data and supports SQL queries and transactions.
Official resources:PostgreSQLPyMuPDF
A Python library for reading and processing PDF documents, including extracting text and images.
Official resources:PyMuPDFPython
A general-purpose programming language, widely used for automation, backend services and data processing.
Official resources:PythonQuarkus
A Java framework, also usable with Kotlin, for building backend applications with integrations for databases and messaging.
Official resources:QuarkusReact
A JavaScript library for building user interfaces from reusable components.
Official resources:ReactRedpanda
A platform for storing and exchanging streams of events, developed independently of Apache Kafka. It implements the Kafka protocol, allowing applications to use Kafka clients, with some differences in supported features.
Official resources:Redpanda: Kafka compatibilityREST
An architectural style for web APIs that use HTTP to access and manipulate resources.
Official resources:MDN: RESTSynchronous and asynchronous
In synchronous communication, the sender waits for a response before proceeding. In asynchronous communication, processing can continue independently and the result may arrive later.
Official resources:Microsoft Learn: Data integration patternsTemporal
A platform for coordinating workflows and resuming them after failures, without losing their progress.
Official resources:TemporalTesseract
An optical character recognition (OCR) engine that converts images of printed text into machine-readable text.
Official resources:TesseractTypeScript
A language that adds static type checking to JavaScript, helping catch errors before running the program.
Official resources:TypeScriptWebhook
A mechanism that automatically sends an HTTP request from one system to another when an event occurs.
Official resources:Red Hat: What is a webhook?