Hi,

>  Unless something is functionality that you would (virtually) always need, 
> it’s a separate bead.

So for CCS we have border, does everyone need borders? Why do we only a sub set 
of the font attributes included? Some people are not going to use all of them 
or in fact any of them and some other may need other properties so why are they 
not seperate?  Not that I think these should be removed into seperate parts. 
The issue is just about every feature you can name is going to optional to 
someone. So I think we near a clearer definition of what PAYG is.

Another example why for instance was flexGrow and flexShrink added in to the 
CSS code? Shouldn't they be implemented in line with the PAYG principal in 
another class? And there are numerous other examples of this. I feel that PAYG 
is not being applied consistently and seems selective on who is making the 
contribution.

> PAYG is already well understood

IMO it has not been clearly defined. Alex has described in various ways as it 
size / runtime cost only to move to goal posts. I for one would like a clearer 
definition of it.

> All functionality should be implemented as beads when practical. Beads should 
> be as modular as possible with the smallest possible functional set.

What about the cost of violating DRY or the single responsibility principal 
which two beads do similar things? Is it really OK to add technical debt / 
penalise users of a new feature when it would be less cost modifying/improving 
an existing bead at a much smaller cost? How do you discourage copy paste 
coding?

Thanks,
Justin

Reply via email to