public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* maturity and status and attributes, oh my!
@ 2007-08-31 21:38 Robert P. J. Day
  2007-08-31 22:02 ` Jeff Garzik
                   ` (2 more replies)
  0 siblings, 3 replies; 30+ messages in thread
From: Robert P. J. Day @ 2007-08-31 21:38 UTC (permalink / raw)
  To: Linux Kernel Mailing List


  at the risk of driving everyone here totally bonkers, i'm going to
take one last shot at explaining what i was thinking of when i first
proposed this whole "maturity level" thing.  and, just so you know,
the major reason i'm so cranked up about this is that i'm feeling just
a little territorial -- i was the one who first started nagging people
to consider this idea, so i'm a little edgy when i see folks finally
giving it some serious thought but appearing to get ready to implement
it entirely incorrectly in a way that's going to ruin it irreparably
and make it utterly useless.

  this isn't just about defining a single feature called "maturity".
it's about defining a general mechanism so that you can add entirely
new (what i call) "attributes" to kernel features.  one attribute
could be "maturity", which could take one of a number of possible
values.  another could be "status", with the same restrictions.
heck, you could define the attribute "colour", and decide that various
kernel features could be labelled as (at most) one of "red", "green"
and "chartreuse."  that's what i mean by an "attribute", and
attributes would have two critical and non-negotiable properties:

1) they would be entirely orthogonal to one another, and
2) they can be assigned at most one of a pre-defined set of values


  that's it.  it's really that simple and simon's earlier patch i
think fits that almost perfectly.  now, back to the disagreement.

  it may be that some people had a different understanding of what was
meant by "maturity" than i did.  what *i* meant by that attribute is
a feature's current position in the normal software life cycle, and
that would be one of:

  experimental -> normal (stable) -> deprecated -> obsolete

  it's a natural progression and, at any point, a feature cannot
possibly have more than one maturity value.  it would be as absurd as
saying that someone was a teenager *and* was a twenty-something at the
same time.  not possible.  and restricting an attribute to a single
value makes definitions and processing *way* easier down the road.
(and note that a feature's maturity says *nothing* about its current
level of quality.  that's next.)

  another attribute can then be what i was calling "status" but could
also be called "quality".   *that* is where you could categorize a
feature as one of FLAKY, BROKEN and so on.  that's an entirely
independent categorization from maturity, which means you could have
features that were both experimental and flaky, or deprecated and
broken, or what have you.  and those settings would be done with
separate Kconfig directives:

config WHATEVER
	maturity DEPRECATED
	status BROKEN

  from a quick perusal, simon's patch looked pretty much dead-on
(except for that teeth-grinding maturity level of BROKEN :-).  but
other than that, it looked good, although i'll have to go back later
and look more closely.

  but i hope i've flogged this thoroughly to the point where people
can see what i'm driving at.  once you see (as in simon's patch) how
to add the first attribute, it's trivial to simply duplicate that code
to add as many more as you want.

rday

-- 
========================================================================
Robert P. J. Day
Linux Consulting, Training and Annoying Kernel Pedantry
Waterloo, Ontario, CANADA

http://crashcourse.ca
========================================================================

^ permalink raw reply	[flat|nested] 30+ messages in thread
* Re: maturity and status and attributes, oh my!
@ 2007-08-31 23:29 Mitchell Erblich
  2007-09-01  1:33 ` Robert P. J. Day
  0 siblings, 1 reply; 30+ messages in thread
From: Mitchell Erblich @ 2007-08-31 23:29 UTC (permalink / raw)
  To: "Robert P. J. Day"; +Cc: Linux Kernel Mailing List

"Robert P. J. Day" wrote:
> 
>   at the risk of driving everyone here totally bonkers, i'm going to
> take one last shot at explaining what i was thinking of when i first
> proposed this whole "maturity level" thing.  and, just so you know,
> the major reason i'm so cranked up about this is that i'm feeling just
> a little territorial -- i was the one who first started nagging people
> to consider this idea, so i'm a little edgy when i see folks finally
> giving it some serious thought but appearing to get ready to implement
> it entirely incorrectly in a way that's going to ruin it irreparably
> and make it utterly useless.
> 
>   this isn't just about defining a single feature called "maturity".
> it's about defining a general mechanism so that you can add entirely
> new (what i call) "attributes" to kernel features.  one attribute
> could be "maturity", which could take one of a number of possible
> values.  another could be "status", with the same restrictions.
> heck, you could define the attribute "colour", and decide that various
> kernel features could be labelled as (at most) one of "red", "green"
> and "chartreuse."  that's what i mean by an "attribute", and
> attributes would have two critical and non-negotiable properties:
<<< snip>>>>
> 
>   but i hope i've flogged this thoroughly to the point where people
> can see what i'm driving at.  once you see (as in simon's patch) how
> to add the first attribute, it's trivial to simply duplicate that code
> to add as many more as you want.
> 
> rday
> 
> --
> ========================================================================
> Robert P. J. Day
> Linux Consulting, Training and Annoying Kernel Pedantry
> Waterloo, Ontario, CANADA
> 
> http://crashcourse.ca
> ========================================================================
Robert Day,

        If I can interpret what you are asking about and changing it abit.

        Don't you think that Maturity can be defined ALSO, as the 
       number of known bugs and their priority / serverity against a 
       architecture dependent or independent item?

       Would this suffice and wouldn't it be easier to maintain?

       Mitchell Erblich

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2007-09-01 18:24 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-31 21:38 maturity and status and attributes, oh my! Robert P. J. Day
2007-08-31 22:02 ` Jeff Garzik
2007-09-01  6:35   ` Jan Engelhardt
2007-09-01  9:06     ` Robert P. J. Day
2007-08-31 22:36 ` Stefan Richter
2007-09-01  1:23   ` Robert P. J. Day
2007-09-01  9:14     ` Stefan Richter
2007-09-01  9:21       ` Robert P. J. Day
2007-09-01  9:47         ` Stefan Richter
2007-09-01  9:54           ` Robert P. J. Day
2007-09-01 13:14           ` Jan Engelhardt
2007-09-01 13:53             ` Jeff Garzik
2007-09-01 10:43       ` Jeff Garzik
2007-09-01 10:52         ` Robert P. J. Day
2007-09-01 11:06           ` Jeff Garzik
2007-09-01 13:44             ` Bartlomiej Zolnierkiewicz
2007-09-01 13:52               ` Jeff Garzik
2007-09-01 14:27               ` Stefan Richter
     [not found]   ` <Pine.LNX.4.64.0709010435070.26137@localhost.localdomain>
2007-09-01  9:27     ` Stefan Richter
2007-09-01  9:41       ` Robert P. J. Day
2007-09-01 17:22         ` Dave Jones
2007-09-01 17:58           ` Robert P. J. Day
2007-09-01 18:06             ` Robert P. J. Day
2007-09-01 18:24               ` Dave Jones
2007-08-31 23:02 ` Dave Jones
2007-09-01  8:34   ` Robert P. J. Day
  -- strict thread matches above, loose matches on Subject: below --
2007-08-31 23:29 Mitchell Erblich
2007-09-01  1:33 ` Robert P. J. Day
2007-09-01  6:39   ` Jan Engelhardt
2007-09-01  7:02     ` Robert P. J. Day

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox