Scientific way of generating color cycles

Since the introduction of ‘viridis’ as a default colormap and a marvelous talk about its development, discussions with any collaborators have been greatly streamlined: use this colormap instead of your ugly choice because it’s better on these objective metrics (uniformity, bwprinting, colorblindness support etc.).

This is a godsend - never again I will have to spend an hour in a meeting trying to reach a consensus about a colormap.

There is one problem however, viridis does not work as a color cycle (we just want a good blue and a good orange as first two, then a green and so on - just like in the matplotlib default). The problem here is that (even though this is obviously the best scheme around) I have no dicussion-ending arguments here (they are simply taken from ‘category10’ from vega).

Is there a better way to generate a list of 10 colors? If these are really the best then in what metric they win?

Having searched multiple github repos the current default is a) not attributed to anyone, b) pasted as a long hexstring in multiple repos without any comment at all.

[1] Changes to the default style — Matplotlib 3.8.0 documentation
[2] Color Schemes | Vega
[4] Color blind-friendly default color cycle · Issue #9460 · matplotlib/matplotlib · GitHub
[5] matplotlib - Scientific way of generating color cycles - Stack Overflow