1 |
On Fri, Apr 28, 2006 at 08:05:06PM -0500, Daniel Goller wrote: |
2 |
> -----BEGIN PGP SIGNED MESSAGE----- |
3 |
> Hash: SHA1 |
4 |
> |
5 |
> Simon Stelling wrote: |
6 |
> > Hi Ryan, |
7 |
> > |
8 |
> > Ryan Phillips wrote: |
9 |
> >> I believe the way Gentoo is doing things is broken. There I have said |
10 |
> >> it. The |
11 |
> >> entire project has reached a level of being too political and trying |
12 |
> >> to solve |
13 |
> >> certain problems in the wrong way. |
14 |
> > |
15 |
> > I think it actually works quite well. Yes, there is space for |
16 |
> > improvement, like always, but the situation is at least not bad. |
17 |
> |
18 |
> how do you call it then if the entities in place make a decision, after |
19 |
> some long winded strange tribunal, and when they made a decision, people |
20 |
> ask "hey where is my vote?", i am not after devrel, what i am saying is, |
21 |
> noone appreciates their work it seems, so why couldn't they leave the |
22 |
> decision making to a developer vote, with the saved time, they could go |
23 |
> on and do something they enjoy/have fun with (those of you in devrel who |
24 |
> enjoy your devrel work (wrt to conflict resolution) i am glad you do, i |
25 |
> just don't think many at devrel enjoy hearing they are wrong no matter |
26 |
> how they decide) |
27 |
> the people affected by the vote could accept a developer vote much |
28 |
> easier than a devrel decision |
29 |
> |
30 |
> > |
31 |
> >> __Problem: Developer Growth__ |
32 |
> >> |
33 |
> >> I find that developer growth as being a problem. Adding a developer |
34 |
> >> to gentoo |
35 |
> >> should be as easy as 1. has the user contributed numerous (~5+) |
36 |
> >> patches that |
37 |
> >> helps the project move forward. If yes, then commit access should be |
38 |
> >> given. |
39 |
> >> Adding a developer is usually quite a chore. There are numerous |
40 |
> >> reasons why |
41 |
> >> this is a problem: having a live tree, taking a test, and not defining |
42 |
> >> within |
43 |
> >> policy when a person could possibly get commit access. |
44 |
> > |
45 |
> > I can only speak for me here, but the quiz wasn't a barrier at all to |
46 |
> > me. Instead, it was an interesting way to make sure that I get familiar |
47 |
> > with all the stuff I have to. I found it a much better way to answer |
48 |
> > questions about a topic where you have to find the answers than just |
49 |
> > reading through tons of docs, not knowing whether something is important |
50 |
> > to you or completely unrelated. |
51 |
> > |
52 |
> and we also have lost developers that projects were eager to get on the |
53 |
> team, from what i recall over the developer questioning why an official |
54 |
> quiz must be answered by finding things in unofficial docs in dev spaces |
55 |
> no, that is not hard, but the question was valid, and with the whole |
56 |
> process allowing all of gentoo to make this possible or not, a developer |
57 |
> should be put in place by the leads of that project, at the project |
58 |
> leads discretion, they know the people they plan on hiring much better |
59 |
> than we know most people in our AT program, ATs have been turned into |
60 |
> devs after a very short time, the quiz is a silly hurdle if it gages |
61 |
> your ability to google, not your ability to write ebuilds |
62 |
You're probably able to answer the quiz questions correctly by googling |
63 |
(that's on of the goals as we don't want every new developer reading |
64 |
through all the portage code..) but you're not going to become a |
65 |
developer that way. After having the quiz answers approved by your |
66 |
mentor you'll have to talk to your recruiter who'll gauge whether or not |
67 |
to add you as a new developer. As part of that we're asking additional |
68 |
questions (usually both technical and organisational questions). I |
69 |
sometimes think of this as a very condensed form of "super mentoring" as |
70 |
it also very much helps prepare new developers getting their commit |
71 |
access. |
72 |
|
73 |
I often ask new people that I recruit if they think I'm being too hard |
74 |
on them (after approving them as new devs). So far they've all said it |
75 |
was very good and that they learned some important things that way. This |
76 |
is of course a very informal survey but I think it shows that new |
77 |
developers (in general) don't think the process is too hard. |
78 |
> |
79 |
> > Besides that, I think the tree is far too worthy to give it away after 5 |
80 |
> > patches. Just because I fixed a bunch of compiling errors, that doesn't |
81 |
> > mean I know how to fix ebuilds. Just because I wrote a few ebuilds, that |
82 |
> > doesn't mean I understand how eclasses work, which ones to use where and |
83 |
> > what profile.bashrc is good for. |
84 |
> |
85 |
> we are too possessive, if you give out access to a non-live tree, and |
86 |
> you see the commits were not fit for merging, and the person in question |
87 |
> does not learn from advise given, the person does not have to keep |
88 |
> commit access, but it would be nice to be more inviting than to keep our |
89 |
> high and mighty attitude, we are not so different from our users, many |
90 |
> of which are far better than we are, we just passed some strange test |
91 |
> you can pass by cut& paste or paraphrasing from the right docs, you can |
92 |
> do that w/o even knowing what you talk about |
93 |
> |
94 |
You're wrong, see above :) |
95 |
> > |
96 |
> > I've seen ebuilds from people who have written quite a bunch of ebuilds |
97 |
> > and were really interested in understanding how they work, but the work |
98 |
> > they produced just was awful and hurt my eyes. I don't mean that the |
99 |
> > mean way, I don't expect anything else, and I was just the same. |
100 |
> > However, the mentoring process and the quiz have helped me a lot to |
101 |
> > understand not-so-obvious problems. |
102 |
> > |
103 |
> |
104 |
> who stops you from fixing something here and there before you merge it, |
105 |
> you seem to think having a non live tree would unbind us from our |
106 |
> responsibility to help them become better |
107 |
> |
108 |
> what a non live tree with commits by new people would allow is that |
109 |
> teams could check what there is to merge and say "great wrk, i merge |
110 |
> that" instead of just that one developer who works with that user, he |
111 |
> will be easier part of the family, a team member could approach him and |
112 |
> tell him, i merged it after quoting all your paths, please do so next |
113 |
> time, and peope still learn |
114 |
> |
115 |
> if you think passing a test makes you a good driver, then think again, |
116 |
> it is constant learning and evolvement that makes you a good driver, and |
117 |
> we give out licenses quite easy, then if you are not suited, bye bye license |
118 |
> |
119 |
> >> All these reasons leave the project stagnant and lacking developers. |
120 |
> > |
121 |
> > I wouldn't say so. Just about two weeks or so ago, the recruiters had to |
122 |
> > defer new requests, because they couldn't deal with them in a timely |
123 |
> > fashion. You can now tell me that this makes it even worse, but I just |
124 |
> > see that as the proove of the fact that people are interested in helping |
125 |
> > us and ready to take the quiz and all the "hassle" involved with |
126 |
> > becoming a dev. |
127 |
> > |
128 |
> > Another good reason to keep the current process is the fact that a lot |
129 |
> > of people become dev and vanish a week after their mentoring period |
130 |
> > expired. These people would better contribute to the project in a more |
131 |
> > distant way IMHO, because it takes up a fair amount of time to clean up |
132 |
> > these accounts afterwards. If you don't beleave me, ask kloeri. ;) |
133 |
> > |
134 |
> |
135 |
> read what you wrote closely, you describe how well things work |
136 |
> currently...i think not, they are overworked due to how involved their |
137 |
> part of the process is, not because they have 300 new devs to process. |
138 |
> the hassle is not big, it just delays things, and prooves nothing |
139 |
> i can mentor someone and later on end up asking him for advise, because |
140 |
> i saw his abilities and know he is good...better than me when it comes |
141 |
> to technical issues, him passing the quiz did not tell me that, and |
142 |
> neither does it tell you anything, seeing his work tells me and you |
143 |
> something, so let their people's work speak for them, not the passing of |
144 |
> quizes |
145 |
> |
146 |
> >> Perhaps its because of a live tree... |
147 |
> > |
148 |
> > That's surely a big factor. |
149 |
> |
150 |
> indeed it is, glad people do agree :) |
151 |
> > |
152 |
> >> __Problem: Live Tree__ |
153 |
> >> |
154 |
> >> Having a live tree requires people to be perfect. People are not |
155 |
> >> perfect and |
156 |
> >> requiring it is ridiculous. I love having commits in my local tree |
157 |
> >> within the |
158 |
> >> hour, but having a stable and unstable branch makes a lot of sense. |
159 |
> > |
160 |
> > It doesn't require people to be perfect. It requires people to think |
161 |
> > before commiting. If it really required us to be perfect, we wouldn't |
162 |
> > exist in the first place, would we? |
163 |
> > |
164 |
> i don't know how perfection threatens our existence...so yeah it |
165 |
> requires many dedicated perfect gentoo users (that's what we are, gentoo |
166 |
> users with @gentoo.org email addresses and commit access to a live tree) |
167 |
> to make things go smooth, and it could go smoother if we had more |
168 |
> people, in more timezones, in more countries, in more states, you can |
169 |
> never have to many people, not many have full 56 hours/wk for gentoo, so |
170 |
> every 1hr per day can make a difference |
171 |
> |
172 |
I'm going to contradict myself slightly here.. Yes, we need more |
173 |
developers to keep up with all the bugs, package bumping etc. At the |
174 |
same time I think more developers is the last thing we need. |
175 |
|
176 |
Why? Simply because more developers means we need to spend a lot more |
177 |
time communicating with each other, discussing directions of this and |
178 |
that project etc. If we *really* want to improve we need fewer, more |
179 |
active developers. |
180 |
|
181 |
That's one of the goals of my little project cleaning up the developer |
182 |
base. I'm not going to retire anybody putting "only" 1hr/wk into gentoo |
183 |
but retiring inactive devs is one small part of raising overall |
184 |
"quality" of gentoo developers imo. |
185 |
> > Having a stable and unstable branch doesn't have many advantages over |
186 |
> > stable and unstable keywords IMHO, but requires a HUUUGE effort to keep |
187 |
> > them in sync. It would make things more complicated than necessary. You |
188 |
> > say we're lacking developers. Do you really want to spend [insert random |
189 |
> > big number here] of these much-needed developer hours to merging an old |
190 |
> > with a new tree? |
191 |
> > |
192 |
> |
193 |
> you don't have to merge the whole tree at once, each project has |
194 |
> developers who work on packages of the herds they maintain, the |
195 |
> Changelog will tell you why there is a change, if it matters to you, you |
196 |
> verify and commit, but the nitty gritty of fixing it is long done |
197 |
> |
198 |
> >> __Problem: CVS__ |
199 |
> > |
200 |
> > I would like to see us using svn instead of CVS too, but I think that's |
201 |
> > just a technical detail, not really fitting here. |
202 |
> > |
203 |
> well, if cvs keeps us from going to a non-live tree, then it does |
204 |
> pertain to the discussion at hand, just if it should be svn or |
205 |
> [insertfavoritescmhere] is another point (that could quickly be solved |
206 |
> with a better voting structure, give the power back to the people, |
207 |
> simplify things, and then get this issue resolved with a vote) |
208 |
> |
209 |
> >> __Problem: QA Policies__ |
210 |
> > |
211 |
> >> Everyone here is on the same team. There will be some breakages in |
212 |
> >> the tree |
213 |
> >> and those can be dealt with. Like Seemant [1] said, herds are just |
214 |
> >> groups of |
215 |
> >> like *packages*. The QA Policy is wrong when it says cross-team |
216 |
> >> assistance; we |
217 |
> >> are all on the *same* team. The tree should naturally work. If it |
218 |
> >> doesn't |
219 |
> >> then that is a bug for all of us. |
220 |
> > |
221 |
> > This sounds romantic. However, Gentoo to me isn't 300 people who are all |
222 |
> > my friends, all working on a common goal. Gentoo, to me, is a bunch of |
223 |
> > very nice people that share a goal with me, some big mailing lists with |
224 |
> > flames every now and then and a big mass of people whose work I use and |
225 |
> > appreciate but who I don't have a f*cking clue about. I don't know what |
226 |
> > they are like, they work on other things than I do. But that's not a |
227 |
> > problem at all. |
228 |
> > |
229 |
> rather than having a QA policy that deals with punishment of devs, we |
230 |
> should focus on a system where an accidental commit has less impact, if |
231 |
> someone makes a commit in another branch, another set of eyes will have |
232 |
> a chance to catch it instead of things being in everyone's --sync in ~2 |
233 |
> hours, a QA team could still scan the tree for things, but since they |
234 |
> find problems in the branches rather than the live tree will not have to |
235 |
> worry about what they do until the issue with the unruly dev is |
236 |
> resolved, and if the issues are indeed of magnitude, they can go and ask |
237 |
> for a developer removal vote, if someone seconds that proposal, all |
238 |
> developers can vote, and if the devs who vote think the problem is big |
239 |
> and sizable enough, they can vote +1 for his removal, 0 to abstain or -1 |
240 |
> if they disagree with the measure asked for by QA |
241 |
> |
242 |
> >> Conflict resolution should not be a subproject. It should *not* exist |
243 |
> >> at all. |
244 |
> > |
245 |
> > You mean conflicts or conflict solution shouldn't exist at all? |
246 |
> > If the former, that's unrealistic. If the latter, why not? |
247 |
> > |
248 |
> |
249 |
> we shouldn't have an underappreciated overworked entity (not intending |
250 |
> to upset the members of said entity, i know there are people behind the |
251 |
> alias) that makes the decisions we ask them to make to hear that they |
252 |
> did it wrong again (i am sure it gets tiring to hear us say that over |
253 |
> and over), instead the developers bring up the issue, if someone seconds |
254 |
> that, people vote and the issue gets resolved, one way or another |
255 |
> now if the technical issue is brought up by a project lead and does not |
256 |
> affect gentoo as a whole, then that project should vote, not all of us |
257 |
> who are not affected, if we like it or not |
258 |
I strongly disagree with voting, be it by all developers or just the |
259 |
affected project(s). In the first case the only thing we'll gain is |
260 |
(relatively) quick, random decisions with no strong base in the |
261 |
complaint(s). In the second case, we'll have quick decisions made by |
262 |
obviously biased people - in effect a popularity contest set up to be |
263 |
unfair in advance. |
264 |
|
265 |
Now, as developer relations lead I'm obviously biased but I were of the |
266 |
same opinion even before joining devrel. After devrel have handled a |
267 |
few conflicts I think the current conflict resolution policy leaves a |
268 |
lot to be desired. But moving conflict resolution from devrel to more |
269 |
general voting is the wrong direction. |
270 |
|
271 |
<snip rest of mail> |
272 |
|
273 |
Regards, |
274 |
Bryan Østergaard |
275 |
-- |
276 |
gentoo-dev@g.o mailing list |