<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"><html><head><meta name="qrichtext" content="1" /><style type="text/css">p, li { white-space: pre-wrap; }</style></head><body style=" font-family:'Consolas'; font-size:11pt; font-weight:400; font-style:normal;">On Monday 19 January 2009, Johannes Sixt wrote:<br>
&gt; Ian Monroe schrieb:<br>
&gt; &gt; On Sat, Jan 17, 2009 at 5:17 PM, Thiago Macieira &lt;thiago@kde.org&gt; wrote:<br>
&gt; &gt;&gt;  * should we use a patch-submission-and-review system? (probably not)<br>
&gt; &gt;<br>
&gt; &gt; no.<br>
&gt;<br>
&gt; Don't throw patch submission and review into the same bucket. I can<br>
&gt; understand that you want to dispense with patch submission. But if KDE had<br>
&gt; a good culture of *review* from the beginning, there wouldn't be so many<br>
&gt; crap commits in the SVN.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Not every KDE project has gobs and gobs of developers with which to do review. =D<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>&gt; A network of trust with a hierarchy of maintainers would foster the review<br>
&gt; culture.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Well a hierarchy type architecture appeals very much to the Naval Officer in me.  However having lived in a hierarchical scheme I can also tell you that it breaks down if a higher-up in the chain is not available (what we do in the Navy is have approximately eightly hojillion different methods of reaching higher ups, we have standing orders, etc. etc.  Good luck duplicating that in KDE ;).<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Do you bypass the guy who reviews your patches and instead submit it to the next higher guy? (Hint: NO, unless you've already cleared such behavior)<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>What happens if someone in the chain becomes unavailable due to other more important committments (after all, the propotion of paid KDE devs is much lower than for the Linux kernel)?<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Who is responsible for what?  And how do we decide?  (i.e. is there a qualification process for moving up the hierarchy, or is it based on a vote, or what?)<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Note that svn doesn't prevent us from enforcing more access control on the different repositories, but instead we choose not to.<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>So what prevents (or minimizes) people committing all willy-nilly?  The social expectation that it is poor form to just drop commits in the middle of someone's code (at least without a CCMAIL).  And after-the-fact code review of various changes.  In addition the various KDE mailing lists are used to review patches before they are committed (i.e. for stuff like kdelibs or 'this fixes foo in kbar but I can't reach the maintainer, should I commit?')<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>So while a hierarchical chain may work well for projects like Amarok I don't think it would work in general for KDE (and I think it trades us a different set of problems to solve ones which I at least consider minor).<br>
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; -qt-user-state:0;"><br></p>Regards,<br>
 - Michael Pyne</p></body></html>