# Product Development

{% hint style="info" %}
This section contains background information, mostly aimed at engineers developing MariaDB features.
{% endhint %}

{% columns %}
{% column %}
{% content-ref url="/pages/KUmaaXyjZhAjveMje3Zp" %}
[MariaDB Quality Development Rules](/docs/server/reference/product-development/mariadb-quality-development-rules.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Outlines strict quality standards for new features, including requirements for design specifications, testability, and mandatory Worklog quality checklists.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/5ohV210q1ASv0tj4C1fO" %}
[Uploading Package to PPA](/docs/server/reference/product-development/uploading-package-to-ppa.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Provides instructions for developers to upload MariaDB source packages to a Personal Package Archive (PPA) using tools like dput for Ubuntu-based distributions.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/rJj48B7nlT3uR0IlSWws" %}
[Debugging & Troubleshooting](/docs/server/reference/product-development/mariadb-fault-finding.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Offers deep-dive technical guides for diagnosing server issues, including trace file generation, debugger usage, and analyzing core dumps or memory usage.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/5SU0ZuKkzWu1UCpVSlju" %}
[Plugin Development](/docs/server/reference/product-development/plugin-development.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Details the APIs and processes for extending MariaDB functionality through custom plugins, such as authentication, logging, or specialized server enhancements.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/LK3BA6sqTWgMtIgrFwcx" %}
[Server Development](/docs/server/reference/product-development/server-development.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Covers foundational engineering topics, including the server roadmap, GitHub collaboration workflows, and quality assurance protocols for core contributions.
{% endcolumn %}
{% endcolumns %}

{% columns %}
{% column %}
{% content-ref url="/pages/ndHOL0fS39ilofNuojyf" %}
[MariaDB Internals](/docs/server/reference/product-development/mariadb-internals.md)
{% endcontent-ref %}
{% endcolumn %}

{% column %}
Explores the low-level architecture of MariaDB, documenting source code internals, merging procedures, and how to use internal APIs in external programs.
{% endcolumn %}
{% endcolumns %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://mariadb.com/docs/server/reference/product-development.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
