VictoriaMetrics/docs/goals.md
Aliaksandr Valialkin a632abf965
docs/goals.md: add VictoriaMetrics goals and non-goals page
Everybody who works on VictoriaMetrics must be aware of these goals and non-goals
2024-06-25 18:00:09 +02:00

2.3 KiB

sort weight title menu
500 500 VictoriaMetrics goals
docs
parent weight
victoriametrics 500

Goals

VictoriaMetrics project is aimed towards the following goals:

  1. The main goal - to help customers and users resolving issues with VictoriaMetrics components, so they could use these components in the most efficient way.
  2. Fixing bugs in the essential functionality of VictoriaMetrics components. Small usability bugs are usually the most annoying, so they must be fixed first.
  3. Improving docs for VictoriaMetrics components, so users could find answers to their questions via Google or Perplexity without the need to ask these questions at our support channels.
  4. Simplifying usage of VictoriaMetrics components without breaking backwards compatibility, so users could regularly upgrade to the latest available release and remain happy.
  5. Improving the essential functionality of VictoriaMetrics components.
  6. Improving the readability and maintainability of the code base by removing unnecessary abstractions and simplifying the code whenever possible.
  7. Improving development velocity by optimizing CI/CD tasks, so they take less time.

Non-goals

  1. Adding non-trivial features, which require significant changes in the code and the architecture. Such features may break the essential functionality of VictoriaMetrics components, so a big share of the existing users may become unhappy after the upgrade.
  2. Adding unnecessary abstractions, since they may worsen project maintainability in the future.
  3. Implementing all the features users ask. These features should fit the goals of VictoriaMetrics. Other features must be closed as won't implement.
  4. Merging all the pull requests users submit. These pull requests should fit the goals of VictoriaMetrics. Other pull requests must be closed as won't merge.
  5. Slowing down CI/CD pipelines with non-essential tasks, since this results in development velocity slowdown.
  6. Slowing down development velocity with non-essential requirements.