# Basic concept of governance

## Fully on-chain

Governance in Dev Protocol is driven fully on-chain for all decisions.

{% hint style="info" %}
Currently, only pre-defined variables are updated on-chain. See the "Upgrading code modules" page for core modules upgrades.
{% endhint %}

## Governance scopes are not limit

Governance in Dev Protocol allows all source code updates, from predefined variables to core modules.

## Everything is code

All proposals should be guaranteed by code.

## Derive the optimal solution

Governance in Dev Protocol eliminates the shortcomings of majority voting by accepting multiple weighted votes.

Quoted from the [Upgrading predefined variables page](https://docs.devprotocol.xyz/dev-protocol/protocol/governance/upgrading-predefined-variables):

> When there are multiple options simultaneously, a simple majority vote does not choose all stakeholders' best options.
>
> For example, given that the difference in the number of votes for each option is small, the option most people choose for second place may be better than the one for first place, which is slightly higher than the others. Quadratic voting reflects individual weights in your votes to help you choose the best option.

