<?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>The Keplar LLP blog &#187; Building digital products</title>
	<atom:link href="http://www.keplarllp.com/blog/category/building-digital-products/feed" rel="self" type="application/rss+xml" />
	<link>http://www.keplarllp.com/blog</link>
	<description>Blogging from the team at Keplar LLP</description>
	<lastBuildDate>Wed, 01 Feb 2012 12:54:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Approaches to accuracy for Mechanical Turk</title>
		<link>http://www.keplarllp.com/blog/2011/09/approaches-to-accuracy-for-mechanical-turk</link>
		<comments>http://www.keplarllp.com/blog/2011/09/approaches-to-accuracy-for-mechanical-turk#comments</comments>
		<pubDate>Fri, 30 Sep 2011 09:07:01 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Analytics]]></category>
		<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Scaling business processes]]></category>
		<category><![CDATA[accuracy]]></category>
		<category><![CDATA[automation]]></category>
		<category><![CDATA[Mechanical Turk]]></category>
		<category><![CDATA[quality]]></category>
		<category><![CDATA[scaleability]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=1334</guid>
		<description><![CDATA[This is the third blog post in our series on using Amazon&#8217;s Mechanical Turk to build scalable business processes. Please see also our introductory post and our second post, getting started with Mechanical Turk. Amazon&#8217;s Mechanical Turk provides a very convenient platform for getting large numbers of workers to perform manual steps as part of [...]]]></description>
			<content:encoded><![CDATA[<p><em>This is the third blog post in our series on using Amazon&#8217;s Mechanical Turk to build scalable business processes. Please see also our <a href="/blog/2011/09/amazons-mighty-mechanical-turk">introductory post</a> and our second post, <a href="/blog/2011/09/getting-started-with-mechanical-turk">getting started with Mechanical Turk</a>.</em></p>
<p>Amazon&#8217;s Mechanical Turk provides a very convenient platform for getting large numbers of workers to perform manual steps as part of large scale business processes, such as cleaning data sets for use in machine-learning algorithms, or moderating content.</p>
<p>However, it is not enough for Mechanical Turk to provide results fast. The results themselves need to be reliable and hence it is critical that companies using Mechanical Turk invest in a suitable strategy for accuracy.</p>
<div class="wp-caption aligncenter" style="width: 402px"><img title="Hubble Space Telescope mirror" src="/blog/wp-content/uploads/2011/09/engineers-inspect-hubble-space-telescope-mirror.jpg" alt="" width="392" height="396" /><p class="wp-caption-text">The mirror in the Hubble Space Telescope, the most precise ever made, was initially 10 nanometers off the correct curvature. The inaccuracy was catastrophic and cost several million dollars to fix</p></div>
<p>Amazon provides two primary tools for helping users validate the accuracy of results. We&#8217;ll look at these both briefly, before outlining a third technique which, used in combination with the first two, can be used to deliver a very rigorous approach to accuracy. These three strategies for accuracy are as follows:</p>
<p><span id="more-1334"></span><br />
<strong>1. Use multiple workers to perform each task independently and compare the results</strong></p>
<p>Mechanical Turk is designed to allow the same task to be given to multiple different workers, and makes it easy to compare their different responses.  It is possible, then, to accept all results where there is consensus amongst the different workers, and to manually check (or even just disregard) results when there is a discrepancy.</p>
<p>The trouble with this approach is that even when all workers give the same answer, it is still possible that they all wrong. In the latter half of this post, we will show how you can begin to quantify that probability, and hence start to accurately measure the confidence levels of your results.</p>
<p><strong>2. Make workers perform a set of qualifying tasks</strong></p>
<p>Amazon makes it very easy to define your own qualifications, assign them to some of your workers (based, presumably on that worker&#8217;s accuracy on previous tasks) and then allow only &#8220;qualified&#8221; workers to complete future tasks.</p>
<p>This functionality makes it straightforward for companies to set pre-task &#8220;tests&#8221; where the correct answers are known, and workers&#8217; answers can then be compared against the known answers. Workers who answer accurately can be accorded the qualification, enabling them to go on to perform tasks where the answers are not known.</p>
<p>This provides a rigorous method of assessing accuracy. However, it runs the risk that once workers have qualified, the quality of their work declines (because they know they have &#8220;won&#8221; the qualification already) and hence their accuracy declines, at just the point they start performing tasks where there is no objective yardstick to measure the output against.</p>
<p>An alternative variation is to qualify workers whose answers commonly agree with those of other workers. The danger here, however, is that workers become qualified based on how frequently they give the &#8220;average&#8221; answer, rather than necessarily the &#8220;right&#8221; answer. If most of the workers are giving an incorrect answers, future workers will be judged on whether they agree with those inaccurate workers, leading to an accuracy &#8220;death-spiral&#8221;.</p>
<p><strong>3. Mix a set of tasks with known answers in with the unknown answers</strong></p>
<p>Another technique (to be used instead of or alongside pre-task qualifications) is to mix a set of known tasks into a batch of mostly unknown tasks. An example here would be to make 5-10% of the tasks be questions where the correct answer is already known. This circumvents the problems identified above, because:</p>
<ol>
<li>The accuracy of workers completing the tasks is measured against the &#8220;right&#8221; answers, not against the &#8220;average&#8221; answers from the pool of workers, preventing the accuracy &#8220;death-spiral&#8221;, and:</li>
<li>The workers cannot distinguish between those tasks which we use for qualifying and those that we do not, incentivizing them to continue completing all of the tasks accurately</li>
</ol>
<div>Given the above advantages, this third approach is Keplar&#8217;s recommended approach to answer accuracy when using Mechanical Turk.</div>
<p><strong>Measuring accuracy</strong></p>
<p>Let us return to the example that we&#8217;ve been working on at Keplar: namely checking a dataset of short content items to ensure that each item is in the language that we believe it to be in, so we can use the dataset to train a language detection bot. As you might remember from <a title="Getting started with Mechanical Turk" href="http://www.keplarllp.com/blog/2011/09/getting-started-with-mechanical-turk" target="_blank">our previous post</a>, each Mechanical Turk HIT should be &#8220;as small as possible&#8221;, and we should ask workers to answer closed rather than open questions. So rather than ask &#8220;what language is this content in?&#8221;, we ask e.g. &#8220;is this content in French?&#8221;  The purpose is to end up with a data set of thousands of content items that we are very sure are French.</p>
<p>For each HIT on Mechanical Turk, then, there are four possibilities:</p>
<ol>
<li>Content is in French, and worker confirms it is in French &#8211; let this possibility be &#8220;FY&#8221;</li>
<li>Content is in French, and worker identifies it as not French &#8211; let this possibility be &#8220;FN&#8221;</li>
<li>Content is not in French, and worker identifies it as in French &#8211; let this possibility be &#8220;GY&#8221;</li>
<li>Content is not in French, and worker identifies it as not in French &#8211; let this possibility be &#8220;GN&#8221;)</li>
</ol>
<p>The 4 possibilities can be mapped on a tree diagram:</p>
<div><img class="aligncenter" title="probability-tree" src="/blog/wp-content/uploads/2011/10/probability%20tree.png" alt="A probability tree of the different possibilities for each HIT" width="581" height="292" /></div>
<p>We created a batch of tasks that asked workers to confirm whether or not a content item was in French. We specified that five workers should examine each item.</p>
<p>In our example, our primary concern was that an item <strong>not</strong> in French is incorrectly classified as being in French, because the workers fail to notice that it is actually in, say, German. Hence, the possibility that worries us is labelled &#8220;GY&#8221; on the diagram. We were much less concerned if a content item that is really in French is incorrectly classified as &#8220;not in French&#8221; (&#8220;FN&#8221; on the diagram), because disregarding that result simply reduces the size of our output dataset, but not the quality or reliability of it. So our worst-case scenario was that the 5 workers who answer the HIT &#8220;is this content item is in French&#8221; all got it wrong and said &#8220;yes&#8221; (&#8220;GY&#8221;) when the answer was really &#8220;no&#8221; (&#8220;GN&#8221;).</p>
<p>Because we were interested in false positives (&#8220;GY&#8221;s), we measured the likelihood of a worker incorrectly identifying a non-French content item as French. Hence, the 10% of known tasks included in our batch were all content items that were <strong>not</strong> in French (i.e. known &#8220;G&#8221;s).</p>
<p>For each worker &#8220;n&#8221;, we calculated the % of known, non-French content items that they correctly identified as not French (&#8220;p&#8221;) and the % of known, non-French content items that they incorrectly identified as being in French (&#8220;q&#8221;). To restate:</p>
<p style="margin-left: 40px; margin-right: 40px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_984.5_7328865947dd0841ac4f4efdb359ac9d.png" style="vertical-align:-15.5px; display: inline-block ;" alt="P({N_n}{vert}{G})=p_n" title="P({N_n}{vert}{G})=p_n"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_984.5_e01794b862a699869733c6042db07ec1.png" style="vertical-align:-15.5px; display: inline-block ;" alt="P({Y_n}{vert}{G})=q_n" title="P({Y_n}{vert}{G})=q_n"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_985.5_8d3bcad7a1f90ed8dbf2243331da485a.png" style="vertical-align:-14.5px; display: inline-block ;" alt="p_n+q_n=1" title="p_n+q_n=1"/></p>
<p style="margin-left: 100px; margin-right: 20px;">where <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_985.5_17a803684908614bcc15c5ee237cfcba.png" style="vertical-align:-14.5px; display: inline-block ;" alt="N_n" title="N_n"/> is the outcome where worker n answers &#8220;No &#8211; this content item is not in French&#8221;,<br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_985.5_45ec3bb7ec6e7253069da2edb16a87d7.png" style="vertical-align:-14.5px; display: inline-block ;" alt="p_n" title="p_n"/> and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_985.5_3ca6e518557de1e2416f94d7985ba2c5.png" style="vertical-align:-14.5px; display: inline-block ;" alt="q_n" title="q_n"/> are the measured probabilities for worker n based on their responses to the known &#8220;G&#8221;s.</p>
<p>Results from workers who scored very low for accuracy (e.g. p&lt;95%, q&gt;5%) were rejected, and these tasks were listed again on Mechanical Turk, to be completed by new workers, whose accuracy was again measured. Eventually, each HIT had been answered five times, in each case by a worker who accurately identified at least 95% of the known bads in the data set as &#8220;not French&#8221;.</p>
<p>Across the entire data set, we calculated the % of known, non-French content items that were correctly identified as not French (&#8220;P&#8221;) and the % of known, non-French content items that they correctly identified as being in French (&#8220;Q&#8221;). Because we have rejected all workers where p&lt;95% and q&gt;5%, we know that P&gt;95% and Q&lt;5%. To restate this mathematically:</p>
<p style="margin-left: 40px; margin-right: 40px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_991.5_ecadb6b0efd1368c1f88910b24a96a84.png" style="vertical-align:-8.5px; display: inline-block ;" alt="P(N{vert}G)=P" title="P(N{vert}G)=P"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_991.5_a17adcf5d42ca1d0d3884c4de9b1b82c.png" style="vertical-align:-8.5px; display: inline-block ;" alt="P(Y{vert}G)=Q" title="P(Y{vert}G)=Q"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_400112d311aa84cbaf4a460aca8983a8.png" style="vertical-align:-7px; display: inline-block ;" alt="P+Q=1" title="P+Q=1"/></p>
<p style="margin-left: 100px; margin-right: 40px;">where <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993.5_e92c142c0618e235635c86ae0d73ab56.png" style="vertical-align:-6.5px; display: inline-block ;" alt="P" title="P"/> and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_6819bd348276e929479111f47c4d263f.png" style="vertical-align:-7px; display: inline-block ;" alt="Q" title="Q"/> are the measured probabilities across all workers, based on their collective responses to the known &#8220;G&#8221;s.</p>
<p>Based on this figure, we can work out the probability that if a content item is not in French, all 5 workers would incorrectly classify it as French:</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_981_64a35a9b9fde569980ab3e8511fe8ff7.png" style="vertical-align:-19px; display: inline-block ;" alt="P((Y_1{inter}Y_2{inter}Y_3{inter}Y_4{inter}Y_5){vert}G)" title="P((Y_1{inter}Y_2{inter}Y_3{inter}Y_4{inter}Y_5){vert}G)"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_991.5_5a898a07c78afad1d3071b8eb4a0ed5b.png" style="vertical-align:-8.5px; display: inline-block ;" alt="{=}{P(Y{vert}G)^5}" title="{=}{P(Y{vert}G)^5}"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_33c10f4cbfacf1f7d71cb150aed62aad.png" style="vertical-align:-7px; display: inline-block ;" alt="{=}Q^5" title="{=}Q^5"/></p>
<p>Then, assuming Q = 5% (in actual fact, it must be equal or less):</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_981_64a35a9b9fde569980ab3e8511fe8ff7.png" style="vertical-align:-19px; display: inline-block ;" alt="P((Y_1{inter}Y_2{inter}Y_3{inter}Y_4{inter}Y_5){vert}G)" title="P((Y_1{inter}Y_2{inter}Y_3{inter}Y_4{inter}Y_5){vert}G)"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_33c10f4cbfacf1f7d71cb150aed62aad.png" style="vertical-align:-7px; display: inline-block ;" alt="{=}Q^5" title="{=}Q^5"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993.5_907c0bd2b3086fe3c4fd6e870d3bf474.png" style="vertical-align:-6.5px; display: inline-block ;" alt="{=}0.05^5" title="{=}0.05^5"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993.5_787d92252f4a72c4f4728518926b4b82.png" style="vertical-align:-6.5px; display: inline-block ;" alt="{=}0.0000003125" title="{=}0.0000003125"/></p>
<p>That means that there is a less than 0.0001% chance that if a content item is not in French, all 5 workers confirm (erroneously) that it is in French.</p>
<p>More generally, if the probability (as measured on a set of known tasks) of inaccuracy on a task = Q, and n workers are asked to confirm the result, and all of them agree, the probability that all the workers are wrong is given by:</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_984.5_1aa8afac2aa5b433bbafeb0c9baff10f.png" style="vertical-align:-15.5px; display: inline-block ;" alt="P({Y_{1 to n}}{vert}G)=Q^n" title="P({Y_{1 to n}}{vert}G)=Q^n"/></p>
<p>Returning to our practical problem: we want to know how certain we can be, given that &#8220;n&#8221; workers have each independently confirmed that a particular content item is in French, that the content item is in French (i.e. that they are not all wrong). So we want to know the probability that the given update is in French, given that &#8220;n&#8221; workers have independently verified that it is &#8211; in other words:</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_983_c40268139e3677da0fe0e5a73545965c.png" style="vertical-align:-17px; display: inline-block ;" alt="P(F{vert}Y_{1 to n})" title="P(F{vert}Y_{1 to n})"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_964_cbab1b628c797c6d8d23e8e95566916a.png" style="vertical-align:-36px; display: inline-block ;" alt="{=}{P(F{inter}Y_{1 to n})}/{P(Y_{1 to n})}" title="{=}{P(F{inter}Y_{1 to n})}/{P(Y_{1 to n})}"/><br />
<img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_964_d4b495ebfd8d2b39115d3f0ffcaa96e0.png" style="vertical-align:-36px; display: inline-block ;" alt="{=}{P(F)P({Y_{1 to n}}{vert}F)}/{P(F)P({Y_{1 to n}}{vert}F)+P(G)P({Y_{1 to n}}{vert}G)}" title="{=}{P(F)P({Y_{1 to n}}{vert}F)}/{P(F)P({Y_{1 to n}}{vert}F)+P(G)P({Y_{1 to n}}{vert}G)}"/></p>
<p>Note that the above two equalities follow from <a href="http://en.wikipedia.org/wiki/Conditional_probability" title="Conditional Probability" target="_blank">conditional probability</a>. The resulting function is of the form:</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_983_77f58961c664ca4096a622f176b738ae.png" style="vertical-align:-17px; display: inline-block ;" alt="P(F{vert}Y_{1 to n})=x/{x+delta}" title="P(F{vert}Y_{1 to n})=x/{x+delta}"/></p>
<p style="margin-left: 100px; margin-right: 20px;">where <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_992_9a42b99929a9f20f1593fe911751de91.png" style="vertical-align:-8px; display: inline-block ;" alt="delta=P(G)*Q^n" title="delta=P(G)*Q^n"/><br />
and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_983_0f6def9b9b92de9a1d58b01ed25b1ce1.png" style="vertical-align:-17px; display: inline-block ;" alt="x={P(F)P({Y_{1 to n}}{vert}F)}" title="x={P(F)P({Y_{1 to n}}{vert}F)}"/></p>
<p><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_a09fc94e602d55268079ff11d9e850b2.png" style="vertical-align:-7px; display: inline-block ;" alt="delta" title="delta"/> is incredibly small: it is the product of the probability that a content item is not in French (which should be less than 0.5) and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_74da59be3294aaa714254a20c56ec791.png" style="vertical-align:-7px; display: inline-block ;" alt="Q^n" title="Q^n"/>. As a result, whatever the value of <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993.5_137b8dad9acade63b507e67878d3b94b.png" style="vertical-align:-6.5px; display: inline-block ;" alt="x" title="x"/>, the probability of a content item being in French when all the workers indicate that it is, is going to be very close to 1. For example, if:</p>
<p style="margin-left: 40px; margin-right: 20px;"><img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993_bc70de78c94697e363e69bb5ab80f341.png" style="vertical-align:-7px; display: inline-block ;" alt="Q^n=0.05^5" title="Q^n=0.05^5"/><br />
and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_991.5_983affad0a1b68a18b38a47cb9923eb0.png" style="vertical-align:-8.5px; display: inline-block ;" alt="P(G)=0.5" title="P(G)=0.5"/> (which would be surprisingly high)<br />
and <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_993.5_41ecdbcaaa7b9f38626e7df7a03509f2.png" style="vertical-align:-6.5px; display: inline-block ;" alt="x=0.5" title="x=0.5"/> (which would be surprisingly low),<br />
then <img src="http://www.keplarllp.com/blog/wp-content/plugins/wpmathpub/phpmathpublisher/img/math_983_8ca10500cb5f9e7e11aedb37afd9e120.png" style="vertical-align:-17px; display: inline-block ;" alt="P(F{vert}Y_{1 to n})= 0.999999688" title="P(F{vert}Y_{1 to n})= 0.999999688"/></p>
<p><strong>In summary</strong></p>
<p>By mixing a set of questions with known answers into a batch of Mechanical Turk questions with unknown answers, companies can track the accuracy of workers and take a statistical approach to measuring their confidence level in the results produced by those workers on Mechanical Turk. This makes Mechanical Turk an extremely powerful tool for having sometimes-unreliable humans input into highly scalable &#8211; and reliable &#8211; business processes.</p>
<p>In the next post in this series, we will look at how to use Python scripting to start to integrate Mechanical Turk into your business processes in an automated, scalable way.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2011/09/approaches-to-accuracy-for-mechanical-turk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Facebook&#8217;s Timeline: a masterclass in product vision</title>
		<link>http://www.keplarllp.com/blog/2011/09/facebooks-timeline-a-masterclass-in-product-vision</link>
		<comments>http://www.keplarllp.com/blog/2011/09/facebooks-timeline-a-masterclass-in-product-vision#comments</comments>
		<pubDate>Fri, 23 Sep 2011 14:18:42 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[F8]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[product vision]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[Timeline]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=1230</guid>
		<description><![CDATA[The web is full of chatter as the world digests Facebook&#8217;s announcements at yesterday&#8217;s F8 developer conference of Timeline and OpenGraph. The purpose of this post is not to summarise the developments or hypothesise on the implications: there are plenty of pundits doing that already. In this post we explore the importance of product vision [...]]]></description>
			<content:encoded><![CDATA[<p>The web is full of chatter as the world digests Facebook&#8217;s announcements at yesterday&#8217;s F8 developer conference of Timeline and OpenGraph.</p>
<div class="wp-caption aligncenter" style="width: 412px"><img title="Chris Coxs presentation at F8 is essential viewing for anyone in product management" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/chris-cox-president-product-facebook-presents-timeline-f8.png" alt="Chris Coxs presentation at F8 is essential viewing for anyone in product management" width="402" height="267" /><p class="wp-caption-text">Chris Cox&#39;s presentation at F8 is essential viewing for anyone in product management</p></div>
<p>The purpose of this post is not to summarise the developments or hypothesise on the implications: there are plenty of pundits doing that already. In this post we explore the importance of product vision to successful product development, and use Facebook&#8217;s Timeline as an exemplar of best practice.<br />
<span id="more-1230"></span></p>
<p><strong>What is product vision?</strong></p>
<p>Every digital product should have a purpose: this answers the question &#8220;why would someone use the product&#8221;. Whereas the product purpose is the reason someone would use the product today, the product vision determines why someone would use the product at some period in the future. (Typically in digital up to five years in the future: few people are brave enough to make predictions about how the digital world will look more than five years from now.) The product vision is a long-term aspiration which guides product development decisions in the short-term.</p>
<p>Product vision isn&#8217;t talked about much in digital product development. That&#8217;s mostly because developing a suitable vision is particularly hard in such a fast-moving environment. Indeed, commitment to a vision can be a hindrance, preventing companies from adjusting rapidly to markets because of commitment to an unsuitable roadmap and vision. Much of our work at Keplar involves helping clients to adopt an iterative approach to product development that emphasizes learning from consumers and, as far as possible, co-creating digital products with consumers, so that the products develop around the actual needs and behaviours of real users.  This more &#8220;bottom up&#8221; approach can sit uncomfortably with the more &#8220;top down&#8221;, vision-led approach.</p>
<p>The two approaches are not incompatible, however. The vision needs to be high-level enough that it gives product managers space to make short-term design and development decisions around user behaviours, but still move the product (and the userbase) in the direction of the vision.  Also the vision need not be static: it can evolve as you learn more about your userbase. At its core should be an aspiration that is recognisable to users, just as it needs to be recognisable to everyone involved in developing the product on both the design and development sides.</p>
<p><strong>Characteristics of a good product vision</strong></p>
<ol>
<li>It is an aspiration: the vision needs to be a stretch &#8211; if it describes a product that already exists today, then it won&#8217;t prove any help in driving the product to new heights</li>
<li>It is inspiring: if people are going to overcome the myriad challenges associated with delivering a stretch target, then they have to really believe in the vision. The world should be a better place when the vision is realised</li>
<li>It is about the consumer, not the product or the company developing the product: it is easy to state the purpose of a product in terms of commercial benefit (it is nearly always more profit.) However that&#8217;s not something that users are going to buy into, and it&#8217;s a terrible guide to making short-term product development decisions because it is often hard to link these to long-term commercial gain. It is much harder to build a digital product around a commercial vision than build a business model around a product vision. That is why the product vision needs to be about the consumer, and not the company developing the product</li>
</ol>
<p><strong>The case for Facebook introducing Timeline: a complete overhaul of the profile page</strong></p>
<p>Timeline is a significant evolution of the Facebook profile page, a core part of the Facebook experience since its inception.</p>
<p>Before we look at timeline in any kind of detail, however, it&#8217;s worth stepping back and examining the case for Facebook to significantly overhaul its profile page. The business case for doing so is very, very weak:</p>
<ol>
<li>Facebook is the world&#8217;s largest social network, with a userbase of over 800M users. It is still growing rapidly, and it is hard to imagine that changing the profile page will drive significant incremental growth beyond its current growth rate</li>
<li>Facebook is only just starting to exploit the monetization opportunities around its existing services. It has developed into one of the biggest forces in display advertising (because of the large number of impressions and high eCPMs generated by banners on its site). At the same time it is developing an enormous database of its users and their relationship to a whole range of products and services, through the Like button; the possibilities to monetise this data are significant. So, there are plenty of short-term commercial opportunities that Facebook could concentrate on exploiting: it is not clear that overhauling the profile page would help it do so any faster</li>
<li>Overhauling the profile page is fraught with risk. Because it is a core part of the Facebook experience, any changes to it which jar with users are likely to lead to a massive outcry across the 800M userbase. Any change is going to take time for users to get used to, and in the interim their engagement levels may well decline. Fear of upsetting existing users is one reason why eBay&#8217;s user interface looks almost the same today as it did 5 years ago</li>
</ol>
<p>Given the lack of commercial necessity and high risk associated with overhauling the profile page, few companies in Facebook&#8217;s position would take this step. But Facebook is no ordinary company.</p>
<p><strong>The vision for Timeline</strong></p>
<p>The vision for Timeline can be summarised:</p>
<p><a href="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/facebook-timeline-product-vision.png"><img class="aligncenter" title="Product vision diagram for Facebooks new Timeline" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/facebook-timeline-product-vision.png" alt="" width="600" /></a></p>
<p>The vision for Timeline meets all of the criteria for a great product vision. It is a huge stretch: whilst the current Facebook profile is probably one of the nicest profile pages on the web today, it is far from the &#8220;best place to define who I am&#8221;. The level of ambition drives each of the subgoals for the vision: the Timeline should encompass a user&#8217;s <strong>entire life</strong>, whilst also looking beautiful, being easy to populate and giving users the control they require. The vision is inspiring and if executed well will prove enormously exciting to Facebook users.</p>
<p><strong>The impact of that vision</strong></p>
<p>The resulting product is pretty spectacular:</p>
<p style="text-align: center;"><iframe width="560" height="315" src="http://www.youtube.com/embed/hzPEPfJHfKU" frameborder="0" allowfullscreen></iframe></p>
<p>And the competitive landscape has been transformed. Google Plus, which so recently looked like it was making significant headway in catching up with Facebook, now looks antiquated by comparison. Product vision may be all about the consumer, but the commercial impact of getting it right cannot be underestimated.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2011/09/facebooks-timeline-a-masterclass-in-product-vision/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting started with Mechanical Turk</title>
		<link>http://www.keplarllp.com/blog/2011/09/getting-started-with-mechanical-turk</link>
		<comments>http://www.keplarllp.com/blog/2011/09/getting-started-with-mechanical-turk#comments</comments>
		<pubDate>Tue, 20 Sep 2011 12:04:10 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Scaling business processes]]></category>
		<category><![CDATA[business process automation]]></category>
		<category><![CDATA[Mechanical Turk]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=1161</guid>
		<description><![CDATA[Amazon has done an excellent job of making Mechanical Turk very easy to use. It also provides great documentation to help users get started. The purpose of this post then is to provide a high level overview of how to: Conceptually to think about using Mechanical Turk Use the web UI Amazon provide to do [...]]]></description>
			<content:encoded><![CDATA[<p>Amazon has done an excellent job of making Mechanical Turk very easy to use. It also provides great documentation to help users get started. The purpose of this post then is to provide a high level overview of how to:</p>
<ol>
<li>Conceptually to think about using Mechanical Turk</li>
<li>Use the web UI Amazon provide to do the actual implementation</li>
</ol>
<p><strong>Define your HIT(s)</strong></p>
<p>At the heart of every Mechanical Turk engagement is what Amazon calls a &#8220;Human Intelligence Task&#8221; or &#8220;HIT&#8221;. Each HIT is an independent unit of work.</p>
<p>As we mentioned in our last blog post, we have been using Mechanical Turk to check the language of a short content item. We already have an inkling what language each content item is, however we are only 70-80% sure that we are correct &#8211; so we use Mechanical Turk to get real people to check if each guess is correct.</p>
<p>In our case, then, each &#8220;HIT&#8221; consists simply of a worker checking the content and either confirming that the content is in the language we thought it was, or not. Notice this HIT has several important characteristics:</p>
<ol>
<li>It is a very simple to instruct. &#8220;Look at the below sentence. Is it in French? If so, click &#8216;yes&#8217;. Otherwise, click &#8216;no&#8217;.&#8221;</li>
<li>It is independent. We have millions of sentences to check. However, the checking of each individual sentence is a completely independent task: there is no requirement that the person checking sentence A needs also to check sentence B. Hence it is possible that many hundreds or thousands of workers can work on the tasks in parallel, to ensure they are done quickly.</li>
<li>It is repeatable. We can ask a number of different workers to perform the same task, and they <em>should</em> all give the same answer.  (This becomes important for ensuring the accuracy of results, because it means that we can verify the accuracy of individual tasks and individual workers.)</li>
</ol>
<p><span id="more-1161"></span><br />
<strong>Best practices for defining HITs</strong></p>
<p><strong><em>1. Make your HIT &#8220;as small as possible&#8221;</em></strong></p>
<p>Because you pay workers on a &#8220;per hit&#8221; basis, it is tempting to get workers to work harder to complete each HIT, for example by asking them to provide more information to complete each HIT. (For example, asking them not just whether or not a webpage contains pornographic content, but also whether it also contains expletives.)  Avoid this temptation! It makes the instructions more difficult to follow (which increases the probability of inaccurate results), makes it harder to assess accuracy (because you have to assess the accuracy of two answers per HIT rather than one) and does <strong>not</strong> save money (because workers expect more money for HITs that take longer).</p>
<p>Instead, ask just one question per HIT. If there are two questions you have of a specific content item / web page / anything else, create 2 HITs. This keeps each HIT simple and allows you to adopt different strategies to ensure the accuracy of answers for each question.</p>
<p><strong><em>2. Ask closed questions rather than open questions</em></strong></p>
<p>Instead of asking &#8220;what language this sentence is&#8221;, ask &#8220;is this sentence in French?&#8221;.  Closed questions are preferable for a number of reasons:</p>
<ul>
<li>The results are easier to analyse. HITs are performed by humans, but the output should be machine-processable if you plan to use Mechanical Turk as part of a set of scalable business processes.  That will be much easier if only one of a finite number of results are possible for each HIT</li>
<li>It is easier to assess the accuracy of the results</li>
<li>Closed questions are (normally) easier for the workers to answer. This makes it more likely that they will give accurate answers</li>
</ul>
<p><strong>Publishing HITs on Mechanical Turk</strong></p>
<p>Amazon provides 3 ways to create HITs, publish them and collect the results: a web UI, a command-line interface and an API. When getting started, the web UI is the simplest interface to use.</p>
<p><strong><em>1. Set the basic parameters of the HIT</em></strong></p>
<p>Before creating a new HIT template, Amazon makes users fill in a long webform. Some guidance on the individual sections:</p>
<p><em>Describe your HIT</em></p>
<p><em> </em>HIT &#8220;Title&#8221;, &#8220;Description&#8221; and &#8220;Keywords&#8221; should all be filled in to make it as easy as possible for workers to find your HIT (by searching for appropriate keywords e.g. &#8220;French, language&#8221;) and define the task to do as clearly and unambiguously as possible.</p>
<p><em>Working on your HIT</em></p>
<p>Overestimate the amount of time allotted to each HIT. Workers are typically good at looking at a couple of sample HITs and making a guess as to how long each will take &#8211; they will use this figure (rather than the figure you give) to calculate the effective hourly wage you&#8217;re paying. So the only real impact of filling in this field is to cut workers short when they&#8217;re doing a task: for that reason it&#8217;s always best to give a much high number than is realistic.</p>
<p>Amazon also offers a set of options for ensuring that only workers with a specific history of accuracy are allowed to fill in your results. There are a number of different strategies to ensuring accuracy, we will discuss these in a later blog post. To start, we suggest not limiting HITs to &#8220;Masters&#8221;. There are other, more reliable means, of ensuring accuracy.</p>
<p><em>Paying workers</em></p>
<p>There are no hard and fast rules on what you should pay workers. The more you pay, the more likely workers will be to prioritise your HITs and the faster they will be completed. We generally look to pay workers at least $5 per hour, and have been impressed by the speed with which work has been completed at that rate.</p>
<p><strong><em>2. Create the HIT template</em></strong></p>
<p>The second step is to design the &#8220;HIT template&#8221;: the webform with the question each worker will answer. Assuming each HIT involves asking a closed question, Amazon provides a visual designer to make creating the form straightforward:</p>
<p style="text-align: center; margin-top:20px;margin-bottom:20px"><a href="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/design-mechanical-turk-form-visual.png"><img class="aligncenter" title="Mechanical Turk HIT form visual designer" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/design-mechanical-turk-form-visual.png" alt="" width="600" /></a></p>
<p>The corresponding HTML for the form is super simple, and shown below:</p>
<pre class="brush: xml; title: ; notranslate">
&lt;h3&gt;&lt;span style=&quot;font-family: Arial; &quot;&gt;Is this Twitter update in French?&lt;/span&gt;&lt;/h3&gt;
&lt;pre&gt;&lt;span style=&quot;font-family: Verdana; &quot;&gt;${Message}&lt;/span&gt;&lt;/pre&gt;
&lt;table cellspacing=&quot;4&quot; cellpadding=&quot;0&quot; border=&quot;0&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td valign=&quot;center&quot;&gt;&lt;span style=&quot;font-family: Arial; &quot;&gt;&lt;input type=&quot;radio&quot; name=&quot;is_language&quot; id=&quot;is_language_yes&quot; value=&quot;yes&quot; /&gt;&lt;span class=&quot;answertext&quot;&gt;Yes this update is in French&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td valign=&quot;center&quot;&gt;&lt;span style=&quot;font-family: Arial; &quot;&gt;&lt;input type=&quot;radio&quot; name=&quot;is_language&quot; id=&quot;is_language_no&quot; value=&quot;no&quot; /&gt;&lt;span class=&quot;answertext&quot;&gt;No this update is not in French&lt;/span&gt;&lt;/span&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</pre>
<p>Note the ${Message} placeholder. Before we run the HIT, we will upload a CSV file into Mechanical Turk. Each line in the CSV will represent one HIT, and each line will therefore need to contain a cell with the actual message who&#8217;s language we want to confirm. The title of that column will be &#8220;Message&#8221;, and Amazon will automatically insert that content into the webform where the ${Message} placeholder is found.</p>
<p><strong><em>3. Upload the relevant data to Amazon and publishing the HIT</em></strong></p>
<p>Once the template has been created, you need to upload the data to serve into each webform.</p>
<p>At the very least, the CSV you upload should have one column for every placeholder in the webform &#8211; in our example above, there is only one, ${message}.  It is also possible to introduce additional columns of data: for example, if the data comes from more than once source, you may want to indicate which source in a &#8220;source&#8221; column in the CSV. The source column will not impact the HITs. However, when the data comes back from Amazon (with the HIT results), the source fields will be included, and this will make it easy e.g. to analyse the accuracy of different sources.</p>
<p><em>Note:</em> Amazon is very fussy that the uploaded file is UTF-8 encoded. For that reason, we recommend <strong>not</strong> using MS Excel to generate or edit CSV files used with Mechanical Turk, because Excel has a tendency to mess up the character encoding.</p>
<p>Once the data is uploaded, you can preview the HIT, as below:</p>
<p style="text-align: center; margin-top:20px;margin-bottom:20px"><a href="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/mechanical-turk-preview-hit.png"><img class="aligncenter" title="Previewing a HIT in Mechanical Turk" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/mechanical-turk-preview-hit.png" alt="" width="600" /></a></p>
<p>Assuming you are satisfied with the HIT as previewed, you are in a position to go live!</p>
<p><strong><em>4. Downloading the results</em></strong></p>
<p>Once workers have completed all your HITs, you will want to download the results. Again, Amazon makes this straightforward via their Web UI:</p>
<p style="text-align: center; margin-top:20px;margin-bottom:20px"><a href="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/mechanical-turk-results-download.png"><img class="aligncenter" title="Downloading results from Mechanical Turk" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/mechanical-turk-results-download.png" alt="" width="600" /></a></p>
<p><strong><em>5. Next steps</em></strong></p>
<p><em>Using the results: approaches to accuracy</em></p>
<p>Clearly there&#8217;s no point in going to the effort (and expense) of using Mechanical Turk unless you use the results to do something useful. Quite what that is depends on your use case &#8211; but in most use cases, you&#8217;ll want some way to ensure that the results are accurate. This is a big topic: we&#8217;ll discuss one particular approach to accuracy in a forthcoming blog post.</p>
<p><em>Completing the Mechanical Turk workflow: approving HITs and paying workers</em></p>
<p>Before workers are paid, you have to approve the work that they&#8217;ve done. That approval process should be part of your general approach to accuracy &#8211; again, we&#8217;ll be covering this in a subsequent blog post.</p>
<p>Assuming, though, that you have verified the accuracy of the work, you will need to approve each HIT. In the downloaded CSV, Amazon will have included an &#8220;approved&#8221; column. The simplest way to approve HITs is by marking an &#8220;x&#8221; in this column for each approved HIT, and then uploading it back into Mechanical Turk. Amazon will then deduct the funds from your account, and pay the workers accordingly.</p>
<p><strong>Stay tuned&#8230;</strong></p>
<p>Hopefully this blog post has given you the encouragement to start experimenting with Mechanical Turk to automate some of your own business processes using HITs. Feel free to share your experiences getting started with Mechanical Turk in the comments below, and in the next post in this series we will be looking at strategies for improving the quality of your results.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2011/09/getting-started-with-mechanical-turk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducing Amazon&#8217;s mighty Mechanical Turk</title>
		<link>http://www.keplarllp.com/blog/2011/09/amazons-mighty-mechanical-turk</link>
		<comments>http://www.keplarllp.com/blog/2011/09/amazons-mighty-mechanical-turk#comments</comments>
		<pubDate>Tue, 20 Sep 2011 11:04:33 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Scaling business processes]]></category>
		<category><![CDATA[Mechanical Turk]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=1144</guid>
		<description><![CDATA[Many companies, both inside and outside the tech industry, invest significant resources in using tech to automate business processes. Some processes, however, are much better done by people than machines. This makes automating them and then scaling them difficult. For some of these business processes, however, Amazon&#8217;s Mechanical Turk provides a way to effectively &#8220;automate&#8221; [...]]]></description>
			<content:encoded><![CDATA[<p>Many companies, both inside and outside the tech industry, invest significant resources in using tech to automate business processes. Some processes, however, are much better done by people than machines. This makes automating them and then scaling them difficult. For some of these business processes, however, Amazon&#8217;s <a href="https://www.mturk.com" target="_blank">Mechanical Turk</a> provides a way to effectively &#8220;automate&#8221; the manual step, providing an incredibly powerful tool to build scalable systems and processes that rely on human input.</p>
<p><img class="aligncenter" title="Ants carrying leaves together" src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/ants-carrying-leaves-together.jpg" alt="" width="460" height="276" /></p>
<p>Amazon&#8217;s Mechanical Turk has been around for some time (it was first launched in 2005). However, we&#8217;re surprised by the number of businesses we encounter who are still not aware of Mechanical Turk and the potential ways using it could save them time and money, whilst opening up new product development opportunities.  In this blog post series, we look at what Mechanical Turk is, how it works, where it works best, how to start using it and how to build scalable systems around it that effectively yield accurate results.</p>
<p><span id="more-1144"></span><br />
<strong>So what is Mechanical Turk?</strong></p>
<p>Mechanical Turk is two things:</p>
<ol>
<li>A huge market of remote workers eager to do well-defined tasks</li>
<li>A set of tools for engaging with that worker community, making it easy to (i) set them tasks, (ii) collect the results, (iii) assess the accuracy of those results, (iv) pay them for their time</li>
</ol>
<p>Mechanical Turk is perfect for situations where a company has a big job that needs doing and:</p>
<ol>
<li>The big job can be broken down into a large number of independent steps</li>
<li>Those independent steps are better performed by a human than a computer.  Typically this means applying a value-based judgement for instance: &#8220;is this suitable for work?&#8221; (content moderation), &#8220;is this in Italian?&#8221; (language detection), &#8220;is this current affairs?&#8221; (categorisation)</li>
<li>Those steps are all of a particular type (or a set number of types).  In other words, a single set of instructions is suitable for a large volume of tasks / work</li>
</ol>
<p>Amazon gives several examples of potential tasks, including categorising items and or moderating content. Categorising items is a famously difficult thing for machines to do (often requiring sophisticated semantic analysis), but it is something that people do very naturally. (As Wittgenstein noted in the case of working out what does and does not constitute e.g. a &#8220;<a href="http://en.wikipedia.org/wiki/Philosophical_Investigations#Language-games" target="_blank">game</a>&#8220;.)</p>
<p>At Keplar, we have been using Mechanical Turk to check the language of specific items of content in a large data set, which itself is being used to train a semantic engine.  Whilst it is possible to use computer programmes to ascertain the language of each content item (<a href="http://code.google.com/apis/language/translate/overview.html" target="_blank">Google Translate</a>, for example), these systems are not accurate enough for our purposes:  only humans can provide the accuracy we require, and Mechanical Turk is one of the few places we can easily get the volume of people, with the requisite language skills, to quickly and efficiently check the large number of data points necessary to build a clean data set.</p>
<p>In the remaining three blog posts in this series, we will explore:</p>
<ol>
<li><a href="/blog/2011/09/getting-started-with-mechanical-turk">How to get started with Mechanical Turk</a></li>
<li><a href="http://www.keplarllp.com/blog/2011/09/approaches-to-accuracy-for-mechanical-turk" title="Approaches to accuracy for Mechanical Turk" target="_blank">Approaches to ensuring accuracy</a></li>
<li>Best practices, tools and technologies to build scalable systems that leverage Mechanical Turk</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2011/09/amazons-mighty-mechanical-turk/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Understanding your minimum viable product (MVP)</title>
		<link>http://www.keplarllp.com/blog/2011/09/understanding-your-minimum-viable-product-mvp</link>
		<comments>http://www.keplarllp.com/blog/2011/09/understanding-your-minimum-viable-product-mvp#comments</comments>
		<pubDate>Wed, 14 Sep 2011 17:20:14 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[lean]]></category>
		<category><![CDATA[lean startup]]></category>
		<category><![CDATA[minimum viable product]]></category>
		<category><![CDATA[mvp]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=1066</guid>
		<description><![CDATA[If you are involved in developing digital products or businesses (be you an agile developer, big-company product manager or bootstrapping startup founder), you have probably heard of the minimum viable product (MVP) approach to product development and iteration. Eric Ries popularised the term as part of his &#8220;Lean Startup&#8221; movement, defining it thus: The minimum [...]]]></description>
			<content:encoded><![CDATA[<p>If you are involved in developing digital products or businesses (be you an agile developer, big-company product manager or bootstrapping startup founder), you have probably heard of the minimum viable product (MVP) approach to product development and iteration. Eric Ries popularised the term as part of his &#8220;<a title="The Lean Startup" href="http://theleanstartup.com/" target="_blank">Lean Startup</a>&#8221; movement, <a title="MVP definition" href="http://www.startuplessonslearned.com/2009/08/minimum-viable-product-guide.html" target="_blank">defining it thus</a>:</p>
<blockquote><p>The minimum viable product is that version of a new product which allows a team to collect the maximum amount of validated learning about customers with the least effort</p></blockquote>
<p><center><img src="http://www.keplarllp.com/blog/wp-content/uploads/2011/09/chair-with-three-legs.jpg" alt="Chair with three legs" /></center></p>
<p>Lean startup and MVP theory started as a response to the &#8220;big bang&#8221;, capital-intensive approach taken by many businesses (especially VC-backed startups and public companies) to developing new digital products. The observation underpinning MVP is that pre-guessing what customers will want and building a big bang product to meet all of those expectations is risky – because only by interacting with those customers can you really understand their needs and thus what your product should do. As the Prussian field marshal <a title="von Moltke's Theory of War" href="http://en.wikipedia.org/wiki/Helmuth_von_Moltke_the_Elder#Moltke.27s_Theory_of_War" target="_blank">von Moltke</a> put it first:</p>
<blockquote><p>No plan survives contact with the enemy</p></blockquote>
<p>The danger of the big bang approach, then, is that you discover your customers&#8217; needs far too late: instead of steadily iterating a live minimum viable product towards optimal product-market fit, you are left needing to drastically re-build your product – often at great cost – to finally start meeting those customer needs that you just discovered.</p>
<p><span id="more-1066"></span>At Keplar we are strong proponents of the data-driven, iterative approach designed around an initial minimum viable product. It&#8217;s certainly a methodology with strong opinions – and not always comfortable ones for clients grown used to the big bang approach promoted by full-service agencies and IT consultancies. But the fact is that those big bang projects often fail, and as a methodology which seeks to reduce capital expenditure and maximise the product&#8217;s customer appeal, the iterative MVP-based approach is an increasingly compelling one.</p>
<p>Where, however, we see a lot of room for confusion is in what actually constitutes &#8220;minimally viable&#8221;. Part of the problem here is that much of the thinking about MVP has come from lean startup practitioners who have a few traits in common:</p>
<ol>
<li>They are often launching products into &#8220;<a title="Blue Ocean Strategy" href="http://en.wikipedia.org/wiki/Blue_Ocean_Strategy" target="_blank">blue ocean</a>&#8220; market spaces where no real competitors or proxies exist</li>
<li>They often have no prior expertise in the relevant sector (e.g. fashion, education) or function (e.g. analytics, online retailing)</li>
<li>As technologists they rarely have backgrounds in customer-facing roles</li>
<li>They are often planning to grow using fixed-cost marketing channels (word-of-mouth, viral features, SEO) rather than cost-per-user channels (SEM, display advertising, affiliates)</li>
</ol>
<p>Taking all of these factors together, you can see why the minimum viable product for many startups is quite, well, minimal: there&#8217;s typically very little that the founders know (or can know) about the customer needs – and thus the product – before they launch. Furthermore, with a &#8220;blue ocean&#8221; product launch a startup isn&#8217;t too worried about disappointing customers with too little functionality – because some functionality is better than none. And finally, even if the initial launch product does prove a turn-off for some customers, the use of &#8220;lean&#8221; fixed-cost marketing channels means that there is no direct financial loss incurred from failed customer conversions or user churn.</p>
<p>For established, experienced businesses not launching into blue ocean markets, we believe that the minimum viable product is actually much closer to 70-80% of the hypothetical end product than it is to a lean startup&#8217;s 30-60% mark. This is because businesses such as these tend to diverge from lean startups on all four of the traits listed above:</p>
<ol>
<li><strong>Established businesses are rarely undertaking all-new, blue ocean product launches</strong> – instead, brand and product extensions, &#8221;<a title="Fast Follower Examples" href="http://www.businessinsider.com/youre-better-off-being-a-fast-follower-than-an-originator-2010-10" target="_blank">fast follower</a>&#8221; copycat launches and new business models for existing products are the order of the day. In all of these scenarios, the company is competing with other players (and sometimes even with themselves) &#8211; so the launch product has got to pass the customer&#8217;s crucial &#8220;smell test&#8221;: is this product a credible alternative to the others on the market that I could use?  And if it doesn&#8217;t pass that test, then the company can&#8217;t start collecting the behavioural data from customers that it needs to iterate the product further</li>
<li><strong>Established businesses typically have significant sectoral and/or functional expertise</strong> – and they can leverage this domain knowledge about their sector or function to significantly reduce the number of unknowns that require testing with the MVP. To take the example of an accounting software provider looking to launch a new hosted SaaS product: they already know exactly how the core product should work, so where they will need to iterate post-launch will be largely around pricing and the potential new SaaS-only functionalities (e.g. hosted backup, online collaboration)</li>
<li><strong>Established businesses already have a good understanding of their customers&#8217; needs</strong> – of course an established business has far less to discover about their customers&#8217; met and unmet needs than a new market entrant; moreover their existing customer relationships often enable them to test customer attitudes to a potential new product prior even to designing the MVP</li>
<li><strong>Established businesses will often put significant marketing spend behind the new product</strong> – to establish the new product in the market and acquire users, companies will often commit to a significant marketing spend on SEM, display advertising, affiliate marketing and similar. However if the MVP is too minimal and doesn&#8217;t pass the customer&#8217;s &#8220;smell test&#8221;, then that marketing spend is effectively wasted &#8211; and in fact might even translate into <em>negative</em> word-of-mouth for the company&#8217;s brand</li>
</ol>
<p>Putting all of these reasons together, it is clear why for many companies the minimum viable product will actually be a semi-complete product requiring a considerable development effort. This MVP should not however be confused with the big bang approach, because there is <em>always</em> a gap in customer understanding which requires data-driven investigation and product iteration post-launch. And in fact the increased capital investment in bringing a 70-80% functional MVP to market makes the post-launch approach to iteration and optimisation even more important.</p>
<p>To summarise, at Keplar we believe that for many businesses operating in (or moving into) established markets, it makes more sense to design, build and launch a &#8220;Minimum Sticky Product&#8221;. We would define this &#8220;MSP&#8221; as follows:</p>
<blockquote><p>The minimum sticky product is that version of a new product which allows a team to gain traction in a &#8220;red ocean&#8221; market and close the gap in customer understanding with the least effort</p></blockquote>
<p>A minimum sticky product, then, is one which is <em>just</em> good enough that customers stick with it in the face of competent competitors &#8211; in other words a product that starts to get traction in the market, which collects that crucial behavioural data from customers and which can justify per-user acquisition marketing thanks to low initial churn. If you&#8217;re already building a minimum sticky product like this, let us know in the comments below!</p>
<p><strong>If you are developing a new digital business or product and would like to talk further about designing, building and launching your &#8220;Minimum Sticky Product&#8221;, don&#8217;t hesitate to <a title="Keplar LLP Contact Us" href="http://www.keplarllp.com/contact" target="_blank">get in touch</a>.</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2011/09/understanding-your-minimum-viable-product-mvp/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understanding product management: on the value of visual mock-ups</title>
		<link>http://www.keplarllp.com/blog/2010/07/understanding-product-management-on-the-value-of-visual-mock-ups</link>
		<comments>http://www.keplarllp.com/blog/2010/07/understanding-product-management-on-the-value-of-visual-mock-ups#comments</comments>
		<pubDate>Tue, 06 Jul 2010 16:23:06 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[digital]]></category>
		<category><![CDATA[mock-up]]></category>
		<category><![CDATA[npd]]></category>
		<category><![CDATA[product development]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[ux]]></category>
		<category><![CDATA[wireframing]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=938</guid>
		<description><![CDATA[In the first of our blog posts in the understanding product management series, we outlined the key role that product managers face turning commercial and customer needs into a compelling product.  In this blog post, we’ll look at one of the most important &#8211; and underrated &#8211; tools in a product manager’s arsenal:  the visual [...]]]></description>
			<content:encoded><![CDATA[<p>In the <a href="http://www.keplarllp.com/blog/2010/06/understanding-product-management-on-the-role-and-value-of-product-managers" target="_blank">first</a> of our blog posts in the <a href="http://www.keplarllp.com/blog/category/product-management" target="_blank">understanding product management series</a>, we outlined the key role that product managers face turning commercial and customer needs into a compelling product.  In this blog post, we’ll look at one of the most important &#8211; and underrated &#8211; tools in a product manager’s arsenal:  the visual mock-up, and examine how this can be used most effectively to meet many of the typical challenges which product managers face.</p>
<p><strong>What is a mock-up?</strong></p>
<p>A mock-up, simply put, is a sketch of how individual screens on the digital product (be it an desktop application, mobile application, web app etc.) might look.  It is a rough sketch:  the point is not to indicate how the site will look graphically, but how it will work functionally.  It should contain all the buttons, menus, inputs and other functionality that each screen will have.</p>
<p>Here is an example mockup, one of a series created for a B2B client of ours:</p>
<p style="text-align: center;"><strong><img class="aligncenter" title="Example mock-up" src="http://www.keplarllp.com/blog/wp-content/uploads/2010/07/sample_visual_mockup.png" alt="" width="513" /></strong></p>
<p>A single mock-up is not especially useful, but a collection of the different screens that make up an application are enormously valuable.  That’s because collectively, they can be used to see how a user would step through the different workflows that make up an application.  (Indeed some mock-up tools let users connect individual mock-up screens to create interactive prototypes of finished products.)<br />
<span id="more-938"></span><br />
<strong>The value of mock-ups</strong></p>
<p><strong><em>1. Turning customer and commercial requirements into a digital product: fast</em></strong></p>
<p style="padding-left: 30px;">There’s a creative leap that product managers need to make to turn a set of commercial and customer requirements into an actual digital product.</p>
<p style="padding-left: 30px;">Mock-ups are an excellent tool for making that leap.  Because different screens can be quickly sketched out, they make it easy for the product manager to start to visualise how the product might work.  Better, because they are so quick to produce, the product manager should be able to put together multiple different versions and explore the pros and cons of each.</p>
<p><strong><em>2. Building consensus around a digital product design from different stakeholders</em></strong></p>
<p style="padding-left: 30px;">The most powerful feature of mock-ups is that they are easy to understand.  That means that the product manager doesn’t have to make the creative leap by herself: she can share it with other stakeholders including the management team, marketing and business development teams, engineering team and customers, get their feedback, and even have them contribute their own mock-ups to the process.  This increases the scope for creativity, and ensures that the finalised design meets all the different stakeholder requirements.</p>
<p><strong><em>3. Getting users / customers to input into product development as early as possible</em></strong></p>
<p style="padding-left: 30px;">As well as enabling product managers to include internal stakeholders in early product development design decisions, mock-ups (and especially prototypes) enable product managers to start testing designs with customers themselves.  This take a huge amount of risk out of the development process that the product, on delivery, will effectively meet customer needs, whilst giving customers a chance to contribute creatively to the product design process and influence fundamental design decisions.</p>
<p><strong><em>4. Starting the product iteration process before the development process</em></strong></p>
<p style="padding-left: 30px;">We discussed in the <a href="/blog/2010/06/understanding-product-management-pitfalls-to-avoid-when-working-with-a-digital-agency" target="_self">last blog post</a> how the best digital products are constantly iterated, on the bacl of web analytics and customer feedback.  Because customers can be involved earlier using mock-ups, initial iterations can be made based on customer feedback.</p>
<p style="padding-left: 30px;">Because this happens before the development process has, this gives the product manager the maximum flexibility to take customer feedback on board before committing any development budget.</p>
<p><strong><em>5. Building a technical architecture that meets workflow needs and is flexible enough to adapt</em></strong></p>
<p style="padding-left: 30px;">Mock-ups allow the product to progress through several iterations before the technical team must settle on a technical architecture; this means that the technical team will be better placed to select an architecture that, rather than just reflecting current needs, is flexible enough to evolve in the likely directions the product will develop.</p>
<p><strong>When in the product development cycle digital products should be used?</strong></p>
<p>As early as possible!  Generally, product managers should start to mock-up potential designs as early in the development process as possible – potentially even before budget has been committed to a product, to help give stakeholders an idea of whether an idea is worth investing in.  Mock-ups are best used alongside user stories, so that different stakeholders understand the motivations for different people using the product, and how the workflow in the product meets those user needs.</p>
<p><strong>How should mock-ups be produced?</strong></p>
<p>There is a wide range of applications that let people quickly put together mock-ups, and indeed, some people use good old fashioned paper and pencil.  At Keplar, we use <a href="http://www.balsamiq.com/products/mockups" target="_blank">Balsamiq Mockups</a>, because it is super quick, super light, and super simple.</p>
<p><strong>Need help turning your commercial and customer requirements into digital products?</strong></p>
<p>At Keplar, we help clients develop and execute digital strategies, including designing digital products (using mock-ups).  For more information, <a href="mailto:yali.sassoon@keplarllp.com" target="_blank">drop us an email</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2010/07/understanding-product-management-on-the-value-of-visual-mock-ups/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Understanding product management: pitfalls to avoid when working with a digital agency</title>
		<link>http://www.keplarllp.com/blog/2010/06/understanding-product-management-pitfalls-to-avoid-when-working-with-a-digital-agency</link>
		<comments>http://www.keplarllp.com/blog/2010/06/understanding-product-management-pitfalls-to-avoid-when-working-with-a-digital-agency#comments</comments>
		<pubDate>Thu, 17 Jun 2010 10:55:55 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Product management]]></category>
		<category><![CDATA[apps]]></category>
		<category><![CDATA[digital]]></category>
		<category><![CDATA[npd]]></category>
		<category><![CDATA[product]]></category>
		<category><![CDATA[product development]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=888</guid>
		<description><![CDATA[In the previous post on product management, we took a high level look at the role that product managers play and the value that they provide. In this post, we go into a bit more detail, but from the point of view of companies that outsource the building of digital products (including websites, iPhone apps [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter" src="http://www.keplarllp.com/blog/wp-content/uploads/2010/06/house-of-cards.jpg" alt="House of Cards" width="360" height="305" /></p>
<p>In the previous post on product management, we took a high level look at the role that product managers play and the value that they provide.  In this post, we go into a bit more detail, but from the point of view of companies that outsource the building of digital products (including websites, iPhone apps etc.) to digital agencies.  In many (although not all) of these cases, there is no designated product manager (at either the client or the agency) and as a result, the effectiveness, popularity and commercial success of the digital product will suffer.  By looking into the kind these issues in more detail, we hope to explain in more detail what it is that makes product management so critical, and also to provide an approach for companies engaging with digital agencies to avoid these pitfalls.</p>
<p><strong>A typical scenario</strong></p>
<p>A company that makes the vast majority of its money offline wants to do something online.  Maybe they&#8217;re a retailer looking to start selling online, or a magazine publisher wanting to make their content available online.  The client, unfamiliar with online, approaches a digital agency to help them.  Because the client is unfamiliar with online technology, they look for a digital agency that has done similar websites for similar clients.  The digital agency sits down with the client and run a series of requirements gathering workshops to understand what the client wants.  They put together long requirements specification and work with the client on a graphic treatment for the site.  On the basis of the images of these visuals, and the requirements specification, the agency builds the client its website.<br />
<span id="more-888"></span><br />
It&#8217;s worth stressing that no one at the client is a designated &#8220;<strong>product </strong>manager&#8221;.  Someone will be designated as <strong>project</strong> manager, who has to work with the agency to ensure that the site is delivered to specification and on time.  But that person will not have the responsibilities associated with a product manager that we listed in our <a href="http://www.keplarllp.com/blog/2010/06/understanding-product-management-on-the-role-and-value-of-product-managers" target="_blank">last post in the series</a>:</p>
<ol>
<li>Providing a high level vision for the product</li>
<li>Working with user interface experts to &#8220;fill in&#8221; the product vision</li>
<li>Providing a roadmap for the product&#8217;s development</li>
<li>Monitoring and adapting the product roadmap based on new insight</li>
<li>Provide a &#8220;customer-minded resource&#8221; for the rest of the company, especially the developers building the product, to draw on</li>
</ol>
<p>Similarly, no one at the agency will be a designated product manager.  With no access to a product&#8217;s potential users or the community managers who have user relationships, or a client&#8217;s web analytics, no one in the agency is in a position to represent &#8220;users&#8221;.  Similarly, they are not best placed to represent the interests of the different stakeholders at the client  (management, marketing, BD, sales etc).</p>
<p>What are the pitfalls of proceeding in this way, without a product manager?</p>
<p><strong>Pitfall 1:  the digital product doesn&#8217;t work as well as it could</strong></p>
<p>To ensure a digital product works well, a product manager works closely both with people in the business to understand the commercial objectives for the digital product, and prospective users for the product to see how it works for them.  This knowledge is key to the product design.  Further, this is an ongoing process:  upfront work is required before the product is specified, but prototypes and early product builds should be tested with real users to inform design decisions.</p>
<p>On the client side, no one is assigned responsibility for this, and no one is trained to do it, so no one does it.  Clients typically are not great at specifying digital products because this may be the first digital product they&#8217;ve built.  They know they want an online shop and they expect it to work like other online shops they&#8217;ve used.  (So have a shopping basket, catalogue, checkout process etc.)  But no one at the client is likely to have stepped back and thought:  what is it that makes the buying process special for our customers in our sector? What are the key criteria customers use to make buying decisions in our sector, and what can we do to encourage them to buy from our site?  Are these people who know what they want and need to find it and purchase it as quickly as possible?  Or do we need more of a browsing / window shopping experience?  How often do customers make repeat purchases, and what is the relationship between one purchase and the next?  How long is the buying cycle, and what are the key points in the buying cycle we need to facilitate that will help our users and drive our bottom line?  What kind of relationships do our customers have with us, and how should the workflows be designed to reinforce those positive aspects of our relationship with them?</p>
<p>On the agency side, the team will be preoccupied with delivering the project on time and on budget.  The closer the digital product looks and works to &#8220;similar&#8221; projects that they&#8217;ve done before, the easier the project will be.  The agency also know that the client will inevitably compare their site to those similar pieces of work that drew them to the agency initially.  So why would an agency force a client to take a step back and challenge the client&#8217;s assumptions around commercial dynamics and user behaviours before embarking on the build?  And if it looks like the client is happy with what the agency is building, why would an agency encourage them to test it with users and potentially find out that it won&#8217;t be effective?  Better to let them find out later (once the project has been signed off and they&#8217;ve been paid), and win follow-on work off the back of that insight.</p>
<p>Typically, the agency will be judged by the look of the completed project.  For that reason, they will be strongly incentivized to put a lot of work into the graphic design of individual pages.  (And digital agencies, in the UK certainly, are dominated by graphic designers.)  But the agency is not incentivised to do all of the underlying ground work on which a good graphic design depends:</p>
<div class="wp-caption aligncenter" style="width: 416px"><img src="http://dev.keplarllp.com/blog/wp-content/uploads/2010/06/product-iceberg.png" alt="The importance of what lies beneath" width="406" height="305" /><p class="wp-caption-text">Taken from &quot;Lean Product Management&quot; by Dan Olsen.  Dan took the framework from Jesse James Garrett’s “Elements of User Experience” chart, free at www.jjg.net</p></div>
<p>Because no one is being judged on conceptual design, information architecture or interaction design, no one makes sure that these are done right.  The product produced would inevitably be much better designed, and hence more commercially successful, if someone did.</p>
<p><strong>Pitfall 2: scope creep, project delay and budget overrun</strong></p>
<p>Part of good product management is about product design.  But part of it is also about process:  managing the process and stakeholders around the development of digital products to ensure that the needs of the business and customers are met, and any conflicts / trade-offs between different stakeholders are managed.</p>
<p>It is highly likely that when the digital product is developed, people in the business will review it and want changes to be made.  The agency will point at the specification and show the client that this requirement was never specified, hence it can be delivered, but that will cost extra and will require extra time.  The client will be upset, because they&#8217;ll feel their request is reasonable, and it wasn&#8217;t obvious to them when they read the requirement spec that that was how the requirement would be met in practice.  So both the client and the agency suffer.  With no one single person who has a holistic view of the value to the business of an individual feature, and the engineering cost associated with implementing it, no one is in a good position to manage that trade off.  (The best product managers at digital companies manage the tension between commercial folk and engineering staff, and use that tension creatively to drive exceptional product design.)</p>
<p>Avoiding delivery delays and budget creep is typically the responsibility of the project manager, and often there will be one at both the client and at the agency who&#8217;ll be in trouble.  But in this case it&#8217;s not their fault:  it&#8217;s the lack of a product manager that&#8217;s to blame.  A good product manager will have flushed client requirements out as early as possible, and be commercially and technically literate enough to handle the client-digital agency tension that arises when previously unknown requirements do inevitably come to light.</p>
<p><strong>Pitfall 3: product stagnation</strong></p>
<p>Finally the digital product is delivered:  it&#8217;s not as good as it should be, it cost more than it ought to, and it took longer to deliver than it should.  Now what?</p>
<p>Launching the product is a huge opportunity to test the assumptions that went into its design, understand what works and doesn&#8217;t work and start to map out a longer term development process to drive more business value out of it.  Instead, it will typically stagnate.  No one is responsible for managing the product&#8217;s development at the client.  Maybe no one is trained in using tools like web analytics and customer feedback surveys to understand where it does and doesn&#8217;t work, and how to turn that insight into future product design features.  By this point the agency has washed their hands of the project.  They&#8217;ll be back &#8211; but normally when they have a shiny new competitor website to showoff, rather than a new insight about the client&#8217;s own business and how online is supporting their commercial strategy.</p>
<p>At the very moment where the client could be really learning about their customer&#8217;s behaviour, and using that knowledge to drive growth in their digital venture, the process stops.  The budget is spent, the digital agency are gone and everyone wants to move on.</p>
<p><strong>Avoiding the pitfalls</strong></p>
<p>Fortunately, all the above pitfalls can be avoided, to the benefit of both the business and the digital agency.</p>
<p>The best step a company building a digital product can take is to hire an internal product manager.  An internal person is in the best possible position to do a good job of the product management because:</p>
<ol>
<li>They understand the business</li>
<li>They have ongoing relationships with the different internal stakeholders / departments</li>
<li>They understand the customer base</li>
</ol>
<p>Sometimes that won&#8217;t be possible.  This is especially true for companies that are dipping their toes in the digital space, but who are not fully committed, or have insufficient financial resources for a full-time product manager.  In this case, it is possible to outsource the product manager role to a company like Keplar.  To do this successfully:</p>
<ol>
<li><strong>Do not</strong> <strong>outsource the role to someone at the digital agency</strong>.  The product manager role critically involves managing the tension between commercial requirements, customer / user behaviours (what the people who use the digital product actually do when they use it) and the development team.  Most digital agencies do not have the commercial or analytics expertise to represent either user behaviours or commercial requirements.  (A good agency is instead expert at rapidly building extendable digital systems, leveraging the right technology platforms and using the right processes to ensure that everything built is built quickly and is thoroughly crash tested.)  In the odd occasion where they do have the capabilities internally, the very fact that they work for the development agency means they will inevitably manage those tensions in the interests of the digital agency, rather than the client.</li>
<li><strong>Ensure that there are designated internal staff who after the product has been built, have the necessary skills and resources to assess how well it is working, and spot where there are opportunities to improve it</strong>.  The outsourced product manager should train internal staff to use web analytics and customer feedback on an ongoing basis.  That means that even if there is no internal resource that can use that understanding to adapt the product roadmap, the company is still in a position to engage with the outsourced product manager, and the digital agency, again at a later stage to incorporate that insight.</li>
<li><strong>Minimise budget on an initial product build, with a view to iterating it</strong>.  This is counter to the approach of many digital agencies, who will work with the client to build the most impressive v1 possible.  Unfortunately an impressive v1 tends to be expensive, and leaves the client with little appetite to adapt and iterate the product, even in the face of all the new insights (e.g. around customer behaviour) which the v1 yields</li>
<li><strong>Utilise visual prototyping tools, with internal staff and real users (where possible) to drive requirements gathering and product design before building the v1</strong>.  Visual prototyping is an incredibly powerful technique for flushing out internal requirements and beginning to get a handle on how real customers behave, before any development budget is spent.  We will cover visual prototyping tools in more detail in our next post in this series.</li>
</ol>
<p><strong><em>If you are looking at building a digital product for the first time, or developing one you already have </em></strong><a href="mailto:yali.sassoon@keplarllp.com?Subject=Product%20management%20enquiry"><strong><em>drop us an email</em></strong></a><strong><em> to explore further how putting product-management at the heart of your new product development could drive your bottom line.</em></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2010/06/understanding-product-management-pitfalls-to-avoid-when-working-with-a-digital-agency/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Monetising your community site through value chain mapping</title>
		<link>http://www.keplarllp.com/blog/2010/02/monetising-your-community-site-through-value-chain-mapping</link>
		<comments>http://www.keplarllp.com/blog/2010/02/monetising-your-community-site-through-value-chain-mapping#comments</comments>
		<pubDate>Tue, 02 Feb 2010 10:33:27 +0000</pubDate>
		<dc:creator>Alex</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[monetisation]]></category>
		<category><![CDATA[monetization]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[social network]]></category>
		<category><![CDATA[value chain]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=280</guid>
		<description><![CDATA[Here at Keplar some of our recent advisory work has been for online community sites, helping them to improve their customer proposition while also growing their revenues. In the course of these projects we have started to develop a new technique for guiding the development of these sites which we call &#8220;value chain mapping&#8221; &#8211; [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="Community" src="http://www.keplarllp.com/blog/wp-content/uploads/2010/02/community-sign.jpg" title="Community sign" class="aligncenter" width="425" height="282" /></p>
<p>Here at Keplar some of our recent advisory work has been for online community sites, helping them to improve their customer proposition while also growing their revenues. In the course of these projects we have started to develop a new technique for guiding the development of these sites which we call &#8220;value chain mapping&#8221; &#8211; a technique that works to improve the way community sites serve their community whilst simultaneously growing their revenue. This blog post aims to explain this technique &#8211; articulating the theory but also providing practical advice for owners of social networks. (None of the companies mentioned in this post are current or past clients of Keplar.)</p>
<p><strong>Vertical social networks: a primer</strong></p>
<p>For this post we focus on &#8220;vertical&#8221; social networks &#8211; these are simply community-oriented websites which focus on one content area, interest group or demographic. We use the word vertical to distinguish these community sites from general-purpose social networks such as Facebook and Bebo. For this post we use <a href="http://www.mumsnet.com/" target="_blank">Mumsnet</a>, the UK website &#8220;by parents for parents&#8221;, as our main example.</p>
<p>So, what does a vertical social network look like? Typically these sites provide their user community with a set of &#8220;soft tools&#8221; such as forums, profiles and articles, all designed to support the site&#8217;s users in socialising, sharing knowledge and fulfilling specific needs. On Mumsnet, those user needs would include childminding, keeping their child healthy, and finding a kindergarten.</p>
<p>On the monetisation side, vertical social networks generate most of their revenues through advertising &#8211; showing users targeted or general banner ads but also directing users towards relevant businesses for a fee (see for example the <a href="http://www.mumsnet.com/Pub?call=ShoppingPage" target="_blank">Mumsnet Mall</a>). It&#8217;s a delicate balancing act for the site owners as communities respond badly to advertising which they deem excessive, irrelevant or dishonest.</p>
<p>So, what&#8217;s wrong with this model?</p>
<p><span id="more-280"></span></p>
<p><strong>The current model is far too narrow</strong></p>
<p>The fundamental weakness of this approach to a vertical social network is that it&#8217;s far too narrow. To continue with the Mumsnet example: parents are an important part of the parenting ecosystem, but they are only one part of it. There are many other people and organisations who have a direct or indirect role to play &#8211; from the children themselves through to care providers (e.g. childminders, paediatricians), merchants (e.g. toy shops, pharmacists), manufacturers (e.g. buggy makers) and educationalists.</p>
<p>In short, parenting is a huge, complex ecosystem of which parents are the most important part &#8211; but they are only one part. And a site which only gives a voice to one player in an ecosystem is an echo chamber &#8211; think of the House of Commons without the Opposition, or eBay without the sellers. These sites are facilitating peer-to-peer communication between their narrowly defined interest group, but they don&#8217;t truly fulfil that group&#8217;s needs, because they don&#8217;t allow them to build real relationships with the wider ecosystem.</p>
<p>Our approach for vertical social networks, then, is built around the idea that these sites need to expand to accommodate &#8211; and serve &#8211; as much of their respective ecosystems as possible. It is only by this expansion that the user needs of their core interest group (e.g. parents) can be properly met.</p>
<p><strong>Mapping value chains</strong></p>
<p>If this is the theory, then how does a site such as Mumsnet go about incorporating its wider ecosystem &#8211; isn&#8217;t this a Herculean task? Fortunately, each ecosystem breaks down into a set of smaller, discreet value chains. By a value chain we mean a set of people or organisations which pass value in one direction to fulfil a user need, for example the value chain for childminding looks something like this:</p>
<p><img alt="Childcare value chain" src="http://www.keplarllp.com/blog/wp-content/uploads/2010/02/childcare-valuechain.png" title="Childcare value chain" class="aligncenter" /></p>
<p>Our approach is to incorporate these individual value chains into a vertical social network to better serve these user needs. We do this by &#8220;mapping&#8221; these value chains into the network &#8211; in the case of childminding this would be a three step process:</p>
<ol>
<li>Extend the network to allow agencies and childcarers to have individual profiles on the site</li>
<li> Provide discovery tools to allow parents to find and evaluate these childcarer profiles on the site</li>
<li> Provide market tools to allow parents to buy childcare from providers through the site</li>
</ol>
<p>With this value chain mapped into the social network, parents are now able to discover and buy childcare without leaving the site. We are leveraging all the powerful attributes of social networks &#8211; discovery, reputation, communication &#8211; and applying them to solving a specific user need. Incorporating more of the ecosystem is then simply a case of &#8220;breaking off&#8221; more value chains, mapping them onto entities within the social network and providing the necessary tools to connect them to users.</p>
<p>If this is the approach, what is the impact on the site&#8217;s bottom line? The impact can be considerable, because whenever a service is fulfilling key user needs there are significant revenue-generating opportunities. To go back to childcare: in the UK alone this is a £4.1 billion market (<a href="http://www.daycaretrust.org.uk/data/files/Policy/childcare_and_the_recession__summary.pdf" target="_blank">source</a>). If a social network can model a value chain like childcare then there are various ways of capturing a slice of that value &#8211; perhaps a small slice, but certainly much higher than any revenues from current advertisers from that value chain. <a href="http://www.wahanda.com/" target="_blank">Wahanda</a>, the health and wellbeing network, is a great example of a site which has mapped its key value chains and is capturing value as a result.</p>
<p><strong>Conclusion</strong></p>
<p>In summary, then, value chain mapping is a way for vertical social networks to break out of their current narrow focuses and start comprehensively fulfilling their user&#8217;s specific needs. In doing so they can directly capture value from their respective ecosystems, in addition to the indirect revenues they currently make from advertising.</p>
<p>A social network can start small with this approach &#8211; we recommend that network owners reading this start with just one user need: take that user need, understand the value chain that fulfils it and make sure that the relevant organisations and people have a space within your network. And let us know how it goes! We&#8217;d love to get a discussion going around this post with a view to building on this approach and helping social networks to deliver more.</p>
<p><strong><i>Interested in monetising your community site better? <a href="mailto:alexander.dean@keplarllp.com">Send us an email</a> to find out how Keplar can help.</i></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2010/02/monetising-your-community-site-through-value-chain-mapping/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>An open letter to Spotify: you have an amazing opportunity, don’t blow it!</title>
		<link>http://www.keplarllp.com/blog/2009/12/an-open-letter-to-spotify-you-have-an-amazing-opportunity-don%e2%80%99t-blow-it</link>
		<comments>http://www.keplarllp.com/blog/2009/12/an-open-letter-to-spotify-you-have-an-amazing-opportunity-don%e2%80%99t-blow-it#comments</comments>
		<pubDate>Wed, 09 Dec 2009 18:01:51 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>
		<category><![CDATA[monetizing content]]></category>
		<category><![CDATA[online publishing]]></category>
		<category><![CDATA[social media]]></category>
		<category><![CDATA[Spotify]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=169</guid>
		<description><![CDATA[Dear Spotify, We know that you are one of the most exciting companies of the moment.  Everyone, from the Guardian, to Techcrunch and e-consultancy is singing your praises.  In spite of all the hype, we actually believe that Spotify remains under-hyped. It’s about more than your business model Mainstream media interest in Spotify has focussed [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-172" title="spotifylogo" src="http://www.keplarllp.com/blog/wp-content/uploads/2009/12/spotifylogo.png" alt="spotifylogo" width="108" height="116" /></p>
<p>Dear Spotify,</p>
<p>We know that you are one of the most exciting companies of the moment.  Everyone, from the <a href="http://www.guardian.co.uk/music/2009/jan/16/downloading-music-spotify" target="_blank">Guardian</a>, to <a href="http://uk.techcrunch.com/2009/09/18/daniel-ek-spotify-will-kill-file-sharing-be-a-european-home-run/" target="_blank">Techcrunch</a> and <a href="http://econsultancy.com/blog/4508-spotify-may-soon-surpass-abba-as-sweden-s-most-profitable-music-export" target="_blank">e-consultancy</a> is singing your praises.  In spite of all the hype, we actually believe that Spotify remains under-hyped.</p>
<p><strong>It’s about more than your business model</strong></p>
<p>Mainstream media interest in Spotify has focussed on your business model.  The music industry has of course been badly hit by the growth of the internet, the rise in piracy and the <a href="http://www.guardian.co.uk/news/datablog/2009/jun/09/games-dvd-music-downloads-piracy">shift in consumer spend to video games</a>.  As a result, almost all of the coverage has narrowly focused on this question of whether you can make the music industry profitable, and whether you can be profitable yourself.  People have, shockingly, compared Spotify to <a href="http://www.we7.com" target="_blank">We7</a>, shocking because We7’s sole purpose is to deliver ad supported music to consumers for free, and the Spotify proposition offers a whole lot more.</p>
<p><strong>It’s about a whole new way of consuming music</strong></p>
<p>It is tempting, given Spotify’s iTunes-like interface, to think of it as just another music delivery mechanism, one that’s preferable to downloads because it is easier to protect against piracy.  But that misses the point.  Streaming music allows you to potentially offer your users two new types of listening experiences, without parallel in competitor services.  One of these has already been launched, and I hope that we don’t have to wait long for the second:</p>
<p><strong>1.  Transform my mobile phone into the ultimate MP3 player</strong></p>
<p>Spotify’s premium service for iPhone, Android and Symbian is incredible.  I have access to (almost) any song, at any time, immediately.  It doesn’t matter that my iPhone has only 8Gb.  I have instant access to an enormous music catalogue, unparalleled by even the biggest private collections.</p>
<p><strong>2. Social consumption of music</strong></p>
<p>Spotify has barely scratched the surface of the social features they could build around their product.  Sharing playlists is just the beginning.  I want to be able to discuss tracks with other music enthusiasts as I listen to them (and we listen to them together, in real-time), lookup forthcoming gigs, browse other people’s libraries for new music, send tracks to friends, even potentially talk to the artist while we’re both online.</p>
<p><strong>How does Spotify seize these opportunities?</strong></p>
<p>Given the potential, it’s a little disappointing how quickly you are progressing with your music revolution. Some recommendations:</p>
<p><strong>1. Start properly marketing / advertising the services you already offer</strong></p>
<p>Your mobile phone app is nothing short of incredible.  It has serious mainstream appeal.  You should be all over mainstream media telling people: “we can turn your phone into the ultimate MP3 player”  Don’t get stuck, as Skype did, trying to monetise your cost conscious, tech-savvy early adopters, but rather start advertising directly to the thousands of people who would kill to have a limitless library of music in their pockets.</p>
<p><strong>2. Develop social features &#8211; quick!</strong></p>
<p>A flippant thing remark, perhaps, but it needs saying.  Those social features aren’t “nice to haves” – they’re key in differentiating the Spotify proposition from everything that’s gone before it.  And that’s important because music piracy means by and large people are much less willing to pay for just the vanilla experience of listening to individual tracks.  However they may well, for example, be willing to browse and listen to their favourite artist’s music collection – be that Rev Run or Paul McCartney.  Especially if they can do so with their friends, compare notes, and rate it.  And imagine if they could do it with the artist him/herself?</p>
<p>There are several challenges to developing the social features quickly.  One option you might want to consider is opening up your platform.  Your core audio streaming system is brilliant – why not follow the path of Facebook or Twitter and nurture an imaginative developer community to build a wealth of different apps to take advantage of that core technology?</p>
<p>And if it all sounds like a bit much?  Hire Keplar LLP <img src='http://www.keplarllp.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2009/12/an-open-letter-to-spotify-you-have-an-amazing-opportunity-don%e2%80%99t-blow-it/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>When guests cook their own food: understanding open source</title>
		<link>http://www.keplarllp.com/blog/2009/12/when-guests-cook-their-own-food-understanding-open-source</link>
		<comments>http://www.keplarllp.com/blog/2009/12/when-guests-cook-their-own-food-understanding-open-source#comments</comments>
		<pubDate>Tue, 01 Dec 2009 14:37:37 +0000</pubDate>
		<dc:creator>Yali</dc:creator>
				<category><![CDATA[Building digital products]]></category>

		<guid isPermaLink="false">http://www.keplarllp.com/blog/?p=125</guid>
		<description><![CDATA[Open source is not a business model Inspired by the ongoing battle between the European Union and Oracle over the future of MySQL, yesterday’s New York Times notes that “open source as a model for business is elusive”.  Sadly (and uncharacteristically), the New York Times is wrong.  Open source is not a model for business [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-130" title="jamie oliver eating" src="http://www.keplarllp.com/blog/wp-content/uploads/2009/12/jamie-oliver-eating.jpg" alt="jamie oliver eating" width="300" height="300" /></p>
<p><strong>Open source is not a business model</strong></p>
<p>Inspired by the ongoing battle between the European Union and Oracle over the future of MySQL, yesterday’s New York Times notes that <a href="http://www.nytimes.com/2009/11/30/technology/business-computing/30open.html" target="_blank">“open source as a model for business is elusive”</a>.  Sadly (and uncharacteristically), the New York Times is wrong.  Open source is not a model for business at all.</p>
<p>To start with what open source is: it is an approach to development that prioritises development speed and flexibility over intellectual property rights.  By giving developers around the world the ability to contribute and extend open source products, open source projects can cater to many more users and scenarios than might be possible.</p>
<p>Part of what makes a project open source involves giving the product away for free:  this encourages developers to take and extend products, safe in the knowledge that they do so legally.  That doesn’t make open source a business model, although it means that being open source has implications for your business model.</p>
<p>If you have to give the software away for free, then how do you make money from it? This is a question that many open source projects have not managed to answer satisfactorily.  The classic answer has generally been around providing value-added services, but sadly, service businesses don’t scale as well as typical (closed source) software businesses.  As a result, some of the most successful open source projects have found alternative revenue streams altogether:  Mozilla’s Firefox has benefited from funding by Google (by driving search engine revenue using the box in the top right half of the browser).  OpenX generates revenue by offering the publishers who use its free ad servers value added services such as a real-time ad exchange.</p>
<p>A more interesting question than whether or not open source is a viable business model is where does open source work best?</p>
<p><strong> Open source-code is rarely the most interesting thing about an open source project</strong><br />
<span id="more-125"></span></p>
<p>The most successful  open source projects are the ones that attract the largest, most talented developer communities to work on them.  And the projects that tend to attract the most developers are those that develop things that  developers want to use.</p>
<p>WordPress is a great example:  not only do many bloggers have some development skills which they can lend to the project, but equally the WordPress team have worked hard to build a product that can be easily extended by people with very limited development expertise. Firefox is another superb example – a huge number of developers have contributed plugins to make their lives (and the lives of other, non-technical users) easier.</p>
<p>In cases like WordPress and Firefox plugins, developers get to build tools for themselves and others.  All good application development should involve plenty of user feedback / product design iteration.  When the developer can use a tool, and then extend it herself, that feedback loop becomes quick to close, and iteration comes easily.  At that point, open source product development has a real advantage over its closed source cousin.</p>
<p>Where open source tends not work so well is when it is built for users other than developers.  Probably the best example is GIMP – an open source graphics package, popular with web developers, but barely touched by the graphic designer community, who prefer more user friendly applications like Photoshop.  It is not that people who are good at development are necessarily poor at UI (although they often are). It is that a developer on the GIMP would have to guess how a designer might like to use it – and that is if they even cared what designers wanted. Either way, that iterative feedback – product design loop becomes much more difficult to close.</p>
<p><strong>So what now for open source?</strong></p>
<p>Open source is here to stay.  That’s not because open source is a viable business model, but because making a product open source is a useful tool to drive adoption and application development, especially for companies that don’t have to rely on sales of that product for revenue.  (Google’s Android and Wave are two salient examples.)</p>
<p>Open source has also made a significant difference to the technology eco<del datetime="2009-12-01T11:32" cite="mailto:Alex">-</del>system.  Companies with little or no open source DNA have seen the way that open source enables fast development and richer products, and they have emulated this with their own – proprietary – platforms. A great early example of this was how Salesforce.com opened up their proprietary hosted CRM solution to third-party developers. Now everybody from  Facebook and Apple to Google are following suit. We will be writing another post on how platforms have superceded the open source “business model” (although of course not open source itself) soon.</p>
<p>And if you’re running an open source project yourself? If your project is attracting useful contributors and fulfilling a user need that you either have yourself or you genuinely care about, then you have nothing to worry about. If on the other hand you are focused on a non-technical userbase and you have to pay developers to work your project, we would suggest you take another look at things. Are you really running an open source project – or is it a commercial software business that just happens to have a pricepoint of free and freely viewable source code? Whatever the answer, if you have a significant gap between your development costs and your service-based revenues, then you better keep being nice to your corporate sponsor or VC&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.keplarllp.com/blog/2009/12/when-guests-cook-their-own-food-understanding-open-source/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

