<?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>mitcho.com &#187; herd</title>
	<atom:link href="http://mitcho.com/blog/tag/herd/feed/" rel="self" type="application/rss+xml" />
	<link>http://mitcho.com</link>
	<description></description>
	<lastBuildDate>Thu, 29 Jul 2010 19:14:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Ubiquity Commands by The Numbers</title>
		<link>http://mitcho.com/blog/projects/ubiquity-commands-by-the-numbers/</link>
		<comments>http://mitcho.com/blog/projects/ubiquity-commands-by-the-numbers/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 03:11:55 +0000</pubDate>
		<dc:creator>mitcho</dc:creator>
				<category><![CDATA[projects]]></category>
		<category><![CDATA[arguments]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[data]]></category>
		<category><![CDATA[herd]]></category>
		<category><![CDATA[localization]]></category>
		<category><![CDATA[Mozilla Planet]]></category>
		<category><![CDATA[nountypes]]></category>
		<category><![CDATA[parser]]></category>
		<category><![CDATA[ubiquity]]></category>
		<category><![CDATA[verbs]]></category>

		<guid isPermaLink="false">http://mitcho.com/blog/?p=1718</guid>
		<description><![CDATA[Recent work in the Ubiquity internationalization realm has focused on the upcoming Ubiquity parser which will bring some great new features to Ubiquity, including support for overlord verbs and semi-automatic localization of commands via semantic roles. It&#8217;s possible, though, that these new features will break backwards compatibility of the current command specification and noun types. [...]


Related posts:<ol><li><a href='http://mitcho.com/blog/projects/writing-commands-with-semantic-roles/' rel='bookmark' title='Permanent Link: Writing commands with semantic roles'>Writing commands with semantic roles</a></li>
<li><a href='http://mitcho.com/blog/projects/ubiquity-parser-the-next-generation-demo/' rel='bookmark' title='Permanent Link: Ubiquity Parser: The Next Generation Demo'>Ubiquity Parser: The Next Generation Demo</a></li>
<li><a href='http://mitcho.com/blog/projects/rolling-out-the-roles/' rel='bookmark' title='Permanent Link: Rolling out the Roles'>Rolling out the Roles</a></li>
</ol>

Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.]]></description>
			<content:encoded><![CDATA[<p>Recent work in the Ubiquity internationalization realm has focused on the upcoming Ubiquity parser which will bring some great new features to Ubiquity, including support for <a href="http://jonoscript.wordpress.com/2009/01/24/overlord-verbs-a-proposal/">overlord verbs</a> and <a href="http://mitcho.com/blog/projects/writing-commands-with-semantic-roles/">semi-automatic localization of commands via semantic roles</a>. It&#8217;s possible, though, that these new features will break backwards compatibility of the current command specification and noun types. <a href="http://en.wikipedia.org/wiki/Creative destruction">Creative destruction</a> for the win.</p>

<p>As we look to <a href="http://groups.google.com/group/ubiquity-i18n/browse_thread/thread/22fa223f43ef6262">move forward</a> with incorporating <a href="http://mitcho.com/code/ubiquity/parser-demo/">the next generation parser</a> into Ubiquity proper, it thus becomes important to take a look at the current command ecosystem to see how possibly disruptive this move will be. To this end last night I wrote a quick perl script to scrape the commands cached on <a href="http://ubiquity.mozilla.com/herd/">the herd</a> and get some quantitative answers to my questions.</p>

<p><span id="more-1718"></span></p>

<p>(1577 different verbs were analyzed. None of these computations below are weighted by feed popularity.)</p>

<h3>Q: Are there a lot of commands which use more than one argument?</h3>

<p>A: The vast majority (>85%) of commands take one or no arguments, requiring no modifiers. Only those remaining 15% will require a switch to refer to different arguments by <a href="http://mitcho.com/blog/projects/writing-commands-with-semantic-roles/">semantic role</a>.</p>

<p><center><img src="http://mitcho.com/blog/wp-content/uploads/2009/03/herdcommands.png" alt="herdcommands.png" border="0" width="500" height="355" /></center></p>

<h3>Q: Do many commands introduce custom noun types?</h3>

<p>A: 147 different noun types (lumping anonymous inline objects as one type) were detected. The vast majority of all <code>takes</code> (direct object) arguments were of type <code>noun_arb_text</code>, although many <code>modifiers</code> arguments used custom noun types. The other standard (built-in) noun types are well represented as well, with <code>noun_type_language</code> coming in at second place. Here&#8217;s a chart with all the noun types which had more than one use.</p>

<div style='overflow-y: auto; max-height: 300px;'><center><img src="http://mitcho.com/blog/wp-content/uploads/2009/03/herdnountypes1.png" alt="herdnountypes.png" border="0" width="550" height="846" /></center></div>

<h3>Q: Are commands with <code>modifiers</code> using natural-language delimiters?</h3>

<p>A: Most of the modifiers detected were English prepositions such as &#8220;from&#8221;, &#8220;to&#8221;, &#8220;as&#8221;, &#8220;with&#8221;, but other words were also seen such as &#8220;title&#8221;, &#8220;type&#8221;, &#8220;username&#8221;, and &#8220;message&#8221; and even a handful of commands with symbols such as &#8220;@&#8221;, &#8220;>&#8221;, or &#8220;#&#8221;.</p>


<p>Related posts:<ol><li><a href='http://mitcho.com/blog/projects/writing-commands-with-semantic-roles/' rel='bookmark' title='Permanent Link: Writing commands with semantic roles'>Writing commands with semantic roles</a></li>
<li><a href='http://mitcho.com/blog/projects/ubiquity-parser-the-next-generation-demo/' rel='bookmark' title='Permanent Link: Ubiquity Parser: The Next Generation Demo'>Ubiquity Parser: The Next Generation Demo</a></li>
<li><a href='http://mitcho.com/blog/projects/rolling-out-the-roles/' rel='bookmark' title='Permanent Link: Rolling out the Roles'>Rolling out the Roles</a></li>
</ol></p>
<p>Related posts brought to you by <a href='http://mitcho.com/code/yarpp/'>Yet Another Related Posts Plugin</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://mitcho.com/blog/projects/ubiquity-commands-by-the-numbers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
