1 |
On 10/23/2013 05:51 PM, Steven J. Long wrote: |
2 |
> Daniel Campbell wrote: |
3 |
>> Do you know the design consequences of opt-in versus opt-out? I'll keep |
4 |
>> this short: When evolving a codebase, new behavior for core parts of the |
5 |
>> system should not be pushed or forced on users. If you must, keep the |
6 |
>> old behavior around as a default and allow users to try the new thing by |
7 |
>> explicitly opting in. The new naming in whichever udev started the mess |
8 |
>> did it the exact opposite (and wrong) way. |
9 |
> |
10 |
> Good luck with that argument; you have to bear in mind Gentoo devs are |
11 |
> mostly fresh out of Uni (or still in it.) They're not very experienced iow, |
12 |
> as a rule, apart from in Gentoo ebuilds and making the tree work together, |
13 |
> which is all we ask of them. Oh and usually Java from Uni; they typically |
14 |
> have a snobbery about shell as well (and doesn't it show) which is quite |
15 |
> amusing when one considers their implementation language. |
16 |
> |
17 |
> (No this is not to the topic per se: it's a wider point that I had to |
18 |
> repeat to someone recently, who apparently found the insight very useful. |
19 |
> So I put it out there for other users, or those to come. |
20 |
> |
21 |
> I have zero interest in arguing the toss with anyone: you're welcome to |
22 |
> your opinion, that's mine. You ain't gonna change it, so don't bother |
23 |
> trying. Feel free to rant amongst yourselves. ;) |
24 |
I know you said you won't argue about it, and that's fine. I'm not sure |
25 |
how fair it is to broadly denigrate the Gentoo devs, though. There are |
26 |
so many, with varying levels of experience, specialty, and education, |
27 |
that it would be difficult to put them into a neat label box. Among all |
28 |
the distributions out there that run Linux as the kernel, I think Gentoo |
29 |
is probably the most compatible in terms of choices. They do a good job |
30 |
of making sure OpenRC, sysv, systemd, runit, and others are possible on |
31 |
Gentoo. Perhaps you know more about some of the devs than I, though. I'm |
32 |
just a user who aspires to become an official developer to learn more |
33 |
about it. |
34 |
|
35 |
> |
36 |
> The point is that this is actually why Gentoo is a very good place for a |
37 |
> "developer" to cut hir teeth: they learn from the other users when they |
38 |
> install, and usually come up through the forums, where if you've ever |
39 |
> been to OTW, the difference between a personal attack and criticism of |
40 |
> someone's work is blatantly obvious. Further they have to run any major |
41 |
> design ideas past that same experienced user-base, who had the rough |
42 |
> edges knocked off ages ago, and simply want it to work for everyone. |
43 |
> |
44 |
> They don't always see it like that, ofc, but I for one remember thinking |
45 |
> much dumber things. [1] |
46 |
Well, the udev behavior I was discussing isn't really the fault of |
47 |
Gentoo devs. It was just the default for udev, as shipped by upstream. |
48 |
My guess is the devs decided to opt for the default so those who planned |
49 |
on using the new behavior (and/or GNOME 3.8) wouldn't have to do |
50 |
additional configuration... at the expense of everyone else having to if |
51 |
they wanted to retain the net.ifnames behavior. They were screwed no |
52 |
matter what, really. Had the systemd/udev guys not created the new |
53 |
behavior, Gentoo's devs wouldn't have had to make a decision that they |
54 |
knew wouldn't please everyone. |
55 |
|
56 |
> |
57 |
>> The way the new behavior was introduced may have led users of single-NIC |
58 |
>> systems to believe that the old way was broken, when as demonstrated |
59 |
>> through past use, works *just fine* for single-NIC machines. It was |
60 |
>> *multi-NIC* use that wasn't as predictive and needed the fix, not |
61 |
>> *single*. It's basically using poor design/defaults decisions to smear |
62 |
>> existing technology dishonestly. Technical propaganda, so to speak. |
63 |
> |
64 |
> Even more amusing when you consider that the original race that was so |
65 |
> terrible it justified breaking the machines of those it was supposedly |
66 |
> in aid of, as well as those of people who had zero use for it, yet were |
67 |
> apparently the target market, was in fact implemented by the same set |
68 |
> of "early userspace experts" who put themselves forward as such 5 years |
69 |
> previously. |
70 |
> |
71 |
> I personally have no words to describe such a situation beyond "idiocy". |
72 |
Pretty much agreed. Self-proclaiming as an expert has such an air of |
73 |
egotism it's hard to take it seriously. |
74 |
|
75 |
> |
76 |
>> Getting back to the original topic, cgroups sound like a pretty neat |
77 |
>> idea that other init systems could benefit from. If the systemd guys are |
78 |
>> willing to work on that subsystem for themselves, are they also |
79 |
>> interested in seeing what other init systems would want from cgroups? |
80 |
> |
81 |
> This is actually what I posted about: I know qnikst already implemented |
82 |
> a large chunk of functionality in openrc and was concerned about the |
83 |
> "proposed changes" mainly because as usual it was a grand statement of |
84 |
> intent, with little in the way of coherent content. But we're spitting in |
85 |
> the wind: you can't expect amateurs who've backed themselves into a |
86 |
> corner, full of ego-attachment to their "work", to ever admit it's crap, |
87 |
> or that they fscked-up. Certainly not based on the record of this team. |
88 |
Agreed. To this day, "PulseAudio" is still synonymous with "my sound |
89 |
doesn't work" for some people, even though Mr. Poettering no longer |
90 |
works on it (to my knowledge). |
91 |
|
92 |
I actually think some of the ideas in both PA and systemd have merit, |
93 |
but the implementations are so far off base or so ambitious that it |
94 |
becomes an all-or-nothing decision instead of the usual "micromanaging" |
95 |
or "piecemeal" package choosing that most of us (I assume) are |
96 |
accustomed to. So instead of making one decision at a time, choosing a |
97 |
package of Poettering's means you're committing to more than one |
98 |
decision. His aren't the only packages like it; one could run the same |
99 |
argument for other projects that try to do a bit too much for one package. |
100 |
> |
101 |
>> Certainly there's more room for development and/or standardization on an |
102 |
>> API instead of a single project having all the influence. I think their |
103 |
>> presence and activity with cgroups could be beneficial if policed by |
104 |
>> another init system project that's not trying to infect every Linux |
105 |
>> distro. |
106 |
> |
107 |
> Yes one would think before embarking on such a venture they'd at least |
108 |
> take a look at other things that also run on Linux in the same domain, such |
109 |
> as s6, runit or openrc. But no, systemd is allowed to take them over, but |
110 |
> no consideration can be given to those use-cases, because "this is only |
111 |
> about cgroups." It's orthogonal, maan. |
112 |
> |
113 |
> You're not alone; careful though as you just get labelled a "hater" even |
114 |
> when you've tried your damndest to collaborate with the "other side" (who |
115 |
> are the only ones even interested in "sides") only to come up against |
116 |
> groupthink, double-speak, and monkeys flinging poo. |
117 |
> |
118 |
> "You're not with us so you *must* be against us!" |
119 |
> |
120 |
> "No. We just do not care." |
121 |
> |
122 |
> "Ah you is haterz." |
123 |
> |
124 |
> "Bye then; enjoy the kool-aid." |
125 |
> |
126 |
> [1] http://www.iusedtobelieve.com/ |
127 |
> |
128 |
To be fair, I lack the experience and knowledge in the problem domain to |
129 |
collaborate with whoever plans on hacking cgroups. I'm just concerned |
130 |
that other init systems may become locked out of cgroup functionality |
131 |
until/unless they use an API that requires them to adopt a software |
132 |
architecture/design similar to systemd's. It's dangerous, to me, to let |
133 |
ambitious people work on core parts of a large project. They can't be |
134 |
trusted to remain neutral to all userland software that may depend on it. |
135 |
|
136 |
Nice link, btw. :) |