Great discussion. Also wanted to follow up with a few things.


I believe the term "usable" is not well defined leading to confusion... I agree with Viktor that "usable" in the context of level 2 should just mean: I can enable the feature and it does something... not more, not less. It might crash; it might compute the wrong result for some cases, it might have terrible performance, etc... but: I can kick the tires.


About the proposed "checklist" from Viktor: I think we should not have anything about testing in it -- that test are required goes w/o saying and is already covered in the KIP document itself. To me, it's the KIP author's / community's responsivity to decide on a case-by-case basis when a feature is considered ready for the next level, and what testing is sufficient for each level.


Similar for docs, even if I agree that docs should be more or less complete at level 3. Otherwise, users will have a hard time to really try the feature and thus kinda defeats the purpose of level 3.


Last: @Colin, yes we eventually need to pick names for the levels. But I believe it's actually the right way to agree on the "what" first, and just say "level X" for now, and only after we agree on the levels, we enter the ring for the fun part: picking names. This should be the very last step :popcorn:



-Matthias




On 8/30/24 8:57 AM, Colin McCabe wrote:
On Mon, Aug 26, 2024, at 10:51, Josep Prat wrote:
Hi Colin,

Names are in the KIP. Level 1 to 4 are never meant to be used outside of
this discussion. It's my, apparently successful, attempt to focus on what
the levels mean instead of their names:

Names

     "In Development"
     "Early Access"
     "Preview"
     "Production Ready"

Hi Josep,

Thanks for the clarification. I think we should remove references to level 1, 
2, 3, 4, etc. if that is not the terminology that we want to use. One of the 
big purposes of a KIP is to standardize on terminology. That's not achieved if 
different parts of the KIP use different names for the same things.


Alternatively, if we want to be a bit more playful we could go with a theme
borrowed from the book industry (as an homage to Franz Kafka):

     "In Development"
     "Manuscript"
     "Pre-print"
     "Published"



The need to standardize terminology also means that, sorry, you have to choose. :) This is actually 
a feedback I often give on KIPs. People like to add sections that say "maybe we'll do X, maybe 
we'll do Y." But to make progress on the KIP, you have to choose either X or Y and put the 
other one in the "rejected alternatives" section.

I think our purpose in choosing names should be clarity for users and developers. That's why I suggested "not 
implemented", "alpha", "beta", "production ready". I am curious what your thoughts 
are about these.

best,
Colin

Reply via email to