<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Davey Shafik &#187; open source</title>
	<atom:link href="http://daveyshafik.com/archives/tag/open-source/feed" rel="self" type="application/rss+xml" />
	<link>http://daveyshafik.com</link>
	<description>As close to my brain as you can safely get...</description>
	<lastBuildDate>Tue, 02 Feb 2010 05:48:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Karma-Based Mailing Lists (or: how to automate a meritocracy)</title>
		<link>http://daveyshafik.com/archives/686-karma-based-mailing-lists-or-how-to-automate-a-meritocracy.html</link>
		<comments>http://daveyshafik.com/archives/686-karma-based-mailing-lists-or-how-to-automate-a-meritocracy.html#comments</comments>
		<pubDate>Sun, 28 Jun 2009 21:08:58 +0000</pubDate>
		<dc:creator>Davey Shafik</dc:creator>
				<category><![CDATA[tagged]]></category>
		<category><![CDATA[karma]]></category>
		<category><![CDATA[mailing lists]]></category>
		<category><![CDATA[meritocracy]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://daveyshafik.com/?p=686</guid>
		<description><![CDATA[<h3>Defining the Problem</h3>
<p>The problem with mailing lists is that they are a free for all, it doesn&#8217;t matter who posts, everybody at every level gets to see the post.</p>
<p>In the real world, communications pass through a hierarchy of people, escalating as necessary, passing from person to person up the chain.</p>
<p>This means that, given enough time, any mailing list starts to have a large noise:signal ratio, at least for any given person&#8217;s take on the list;<br />
they…</p>]]></description>
			<content:encoded><![CDATA[<h3>Defining the Problem</h3>
<p>The problem with mailing lists is that they are a free for all, it doesn&#8217;t matter who posts, everybody at every level gets to see the post.</p>
<p>In the real world, communications pass through a hierarchy of people, escalating as necessary, passing from person to person up the chain.</p>
<p>This means that, given enough time, any mailing list starts to have a large noise:signal ratio, at least for any given person&#8217;s take on the list;<br />
they want to read what they want to read, and don&#8217;t need to be distracted ignoring the stuff they don&#8217;t want to read.</p>
<h3>Solving the Problem</h3>
<p>There is an unspoken — some what hap-hazard — hierarchy among the community, which with some thought, I believe, could be defined, refined<br />
and utilized to our advantage. As an example:</p>
<pre>
  - Active internals contributors with access to internals CVS (contributions of code and useful discussions)
  \
   - Active internals contributors without access to internals CVS (patch submitters, useful discussions)
   - Inactive internals contributors with access to internals CVS (previous contributions of code and useful discussions)
     \
      - Active non-internals, PHP contributions (docs, phpweb, PEAR)
      - Active community leaders
      - Active project leaders
      - Active linux distro maintainers
       \
        - General Users with a high understanding
          \
           - Genernal users with little understanding (newbies)
</pre>
<p>If we take each of these, and assign them a number:</p>
<pre>
L1  - Active internals contributors with access to internals CVS (contributions of code and useful discussions)
    \
L2   - Active internals contributiors without access to internals CVS (patch submitters, useful discussions)
L2   - Inactive internals contributors with access to internals CVS (previous contributions of code and useful discussions)
       \
L3      - Active non-internals, PHP contributions (docs, phpweb, PEAR)
L3      - Active community leaders
L3      - Active project leaders
L3      - Active linux distro maintainers
         \
L4        - General Users with a high understand
            \
L5           - Genernal users with little understanding (newbies)
</pre>
<p>Now, what if, at any level, you could only see (by default) 1 level below you (and all levels above you). For example: L1 can see L2, L2 can see L3 etc.</p>
<p>This immediately means that you only see stuff that might be relevant to you; however, as a community, we then lose the ability for newcomers to contribute good ideas; because they would start out with zero karma. To help solve this issue, we adjust karma based on responses:</p>
<h4>Scenario</h4>
<ul>
<li>A L3 user posts something of interest</li>
<li>A L2 user see&#8217;s the post and replies, the reply is L2
<ul>
<li>This bumps the original post up to L2 as well</li>
</ul>
</li>
<li>
        A L1 see&#8217;s the post now, and can then participate in the discussion if they choose
    </li>
</ul>
<p>In this case, <strong>only</strong> the thread in question is bumped up, however given enough L2/L1 (weighted) direct responses over different threads, a L3 user can gain karma and eventually become a L2 user (and obviously this applies to anyone moving up the chain)</p>
<p>In this way, threads (and by this mechanism, users also) can organically make their way up the tree as they gain traction, are discussed at each level and moved up.</p>
<p>I believe it would be possible to have a &#8221;&#8217;single&#8221;&#8217; mailing list that could span everything from internals right down to php-general, but this is probably not desired! It would however allow the users of any list to, regardless of their experience in the tree, contribute without weighing down the list.</p>
<h4>Features</h4>
<ul>
<li>Karma tree seeded by current &#8220;social&#8221; climate
<ul>
<li>based on CVS access level, activity in a sliding timescale, community contributions etc</li>
<li>Some manual work will be needed on this</li>
</ul>
</li>
<li>Weighted responses, a L2 responding to a L3, will move it to L2, but 3 L2&#8217;s or 1 L2 and 1 L1 responding would move it to L1, for example.</li>
<li>Adjustable threshold. Perhaps some magnanimous internals contributor likes to help out newbies, he can choose to see the whole tree, or perhaps just 3 levels down</li>
<li>Championing — it should be possible for a user to champion someone to quickly move them up the ladder, for example a L2 can bring a L5 up to L3, so their peers can see stuff, this is bringing the <strong>user</strong> up, not the <strong>thread</strong></li>
<li>Continued tweaking of karma based on CVS access and contributions</li>
<li>Personal filters, you can add users (of any level) from whom you would like to see threads, helping the movement of stuff up the tree, skipping levels</li>
</ul>
<p>In this way, we can, in some ways, automate the karma, and in someways advance it through our own choices; creating a hierarchy based on merit and trust.</p>
<h3>Final Thoughts</h3>
<ul>
<li>Some smart filtering, so that &#8220;You&#8217;re an idiot&#8221; responses don&#8217;t elevate a thread would be good
<ul>
<li>That, or just handle it biologically — Don&#8217;t respond to people in negative ways</li>
</ul>
</li>
<li>Implementing this as a ML (in terms of interaction) is likely the only way to get some of the higher internals folks using it, a web interface [for the messages] just won&#8217;t fly</li>
<li>Personal filters would be handled at master.php.net or maybe a new web interface for this</li>
</ul>
<p>Now, obviously, this is a huge undertaking; certainly not one any single person could complete on their own&#8230; but it&#8217;s food for thought.</p>
<p>- Davey</p>
]]></content:encoded>
			<wfw:commentRss>http://daveyshafik.com/archives/686-karma-based-mailing-lists-or-how-to-automate-a-meritocracy.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
