<?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>AlwinHoogerdijk.com &#187; Development</title>
	<atom:link href="http://www.alwinhoogerdijk.com/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.alwinhoogerdijk.com</link>
	<description>Software Marketing, Adwords, SEO, Email Marketing, A/B Split testing</description>
	<lastBuildDate>Mon, 12 Jul 2010 16:04:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Dealing with feature requests</title>
		<link>http://www.alwinhoogerdijk.com/2009/11/02/dealing-with-feature-requests/</link>
		<comments>http://www.alwinhoogerdijk.com/2009/11/02/dealing-with-feature-requests/#comments</comments>
		<pubDate>Mon, 02 Nov 2009 16:29:00 +0000</pubDate>
		<dc:creator>Alwin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[feature requests]]></category>

		<guid isPermaLink="false">http://www.alwinhoogerdijk.com/?p=1019</guid>
		<description><![CDATA[I have already touched on this subject in the Art of Ignoring, explaining that you should be careful implementing features based on only a small number of requests.
But there&#8217;s more to it. Here&#8217;s my full story on handling feature requests. 
When dealing with many users suggesting all kinds of different features, big ones and small [...]]]></description>
			<content:encoded><![CDATA[<p>I have already touched on this subject in the <a href="http://www.alwinhoogerdijk.com/2009/08/09/the-art-of-ignoring-video/">Art of Ignoring</a>, explaining that you should be careful implementing features based on only a small number of requests.<br />
But there&#8217;s more to it. Here&#8217;s my full story on handling feature requests. <span id="more-1019"></span></p>
<p>When dealing with many users suggesting all kinds of different features, big ones and small ones, there&#8217;s two things you need to decide on:</p>
<ul>
<li>Which ones to implement</li>
<li>How to implement them</li>
</ul>
<h2>Which ones to implement?</h2>
<p><strong>Sales</strong><br />
For each feature, you should always consider: Will adding this feature actually result in more sales? Either by attracting more new customers, by convincing more of your existing customers to upgrade to your new version or, more indirectly, by making users happier and thus more likely to tell their friends about your software.<br />
If none of the above applies, then you may be better off not implementing a particular feature. Less is more.</p>
<p><strong>Statistics</strong><br />
Features that are requested more frequently are important to more of your users, so should receive a higher priority. That is, if they make sense, which is for you to decide. Only implement stuff that fits the direction in which you want to take your software.</p>
<p>Of course, you need a sufficient number of requests to decide. Don&#8217;t just pick one feature with 3 requests over one that got &#8220;only&#8221; 2 requests. Not getting enough feedback to make your decision purely on the number of requests? Then I&#8217;m afraid that you will have to guess. Pick the features that you think will be appreciated by the largest number of users.</p>
<p><strong>Beware of the &#8220;vocal minority&#8221;</strong><br />
All users are not created equal. If all requests for a particular feature are coming from a small, but vocal sub-group of your users, then beware. These users may not be representative for the rest of your audience, so implementing that feature may not be as important as it seems to be.<br />
At Collectorz.com, the features that are requested on our forum are completely different from the ones we are getting by email. We have found that the typical forum user, often advanced and tech-savvy, is different from the average Collectorz.com user. So we have to take that into account when &#8220;counting&#8221; the number of times a feature is requested. However, I must say that the forum has also been the best source for wild, out-of-the-box feature ideas&#8230; </p>
<p><strong>Beware of helpful users</strong><br />
When users suggest a particular feature, always make sure they actually want or need that feature themselves. In an attempt to help you, some users tend to make up features they think other users will like. Or they suggest functionality just because one of your competitors has it. Which by itself is never a good reason to implement a feature.<br />
This is a common effect when you explicitly ask users for feedback. My experience is that the best feature requests are unsolicited, resulting from a user&#8217;s personal experience with your software.</p>
<p><strong>Hidden feature requests</strong><br />
The best feature requests are not only unsolicited, but may not even be stated as a feature request. They may be disguised as a frequently asked question, or a common complaint. Read between the lines of your customer support emails. There will be loads of hidden &#8220;feature requests&#8221;, e.g. questions about how to accomplish a tricky task or complaints about some actions being too cumbersome, users being frustrated trying to understand your user interface.<br />
Frustration is a major conversion killer, so implementing functionality to take away this frustration may be more important than programming your number one feature request.</p>
<p><strong>Which features can you think of yourself?</strong><br />
Finally, don&#8217;t just rely on your users to think of new features to add. Often you can think of more important features yourself.<br />
Users only tend to think in terms of small changes or additions to existing functionality. Whereas you can (and should) take a step back, think out-of-the-box and come up with completely new functionality. Stuff that your users may never have considered even possible. </p>
<h2>How to implement them?</h2>
<p><strong>Solve the actual problem</strong><br />
Don&#8217;t just implement the feature that was requested. For every feature request, try to get to the story behind it. Try to find out what the actual problem is, then solve that problem. You may be able to come up with a better solution than the one the user was suggesting. </p>
<p><strong>Don&#8217;t let users design your UI</strong><br />
Don&#8217;t just implement the feature exactly as it was requested. Your users are not user interface designers. Build the functionality they requested, but design your own interface for it, a user interface that makes sense, is understandable and consistent with the rest of your program.</p>
<p><strong>Go broad</strong><br />
Feature requests are often very specific, solving a special problem that particular user is having. But with your implementation, you may be able to go broader, create a more generic solution that solves many similar problems. And thus make more people happy.<br />
An example from the cataloging world: if a user requests being able to sort collection lists on the Title field, in both ascending in descending order, why not go all the way and immediately allow this for <strong>any</strong> field?</p>
<p><strong>Go deep</strong><br />
The implementation of one requested feature is likely to trigger the next one. Can you predict what your users will request next, after you release your long awaited new version? Then why not get it over with now. Go deep and immediately add all related functionality that you can expect to be requested.</p>
<h2>Beware of feature creep</h2>
<p>I hope the above will help you decide which features to implement and how to implement them. But whatever you do, remember it is <strong>your</strong> software and that you are the one who is responsible for making a quality product. Listen to your users and use their ideas to improve your software, but don&#8217;t let them dictate your priorities.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.alwinhoogerdijk.com/2009/11/02/dealing-with-feature-requests/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bug Tracking</title>
		<link>http://www.alwinhoogerdijk.com/2009/06/26/bug-tracking/</link>
		<comments>http://www.alwinhoogerdijk.com/2009/06/26/bug-tracking/#comments</comments>
		<pubDate>Fri, 26 Jun 2009 09:42:26 +0000</pubDate>
		<dc:creator>Alwin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[bug tracking]]></category>

		<guid isPermaLink="false">http://www.alwinhoogerdijk.com/?p=378</guid>
		<description><![CDATA[Of course we never have bugs in our software, but still&#8230; we have always used some method to keep track of &#8220;misbehaving features&#8221;.
Through the years we tried: simple todo.txt files in our CVS project trees, Word documents on a shared file server, Google Docs (both spreadsheets and text documents), Mantis, The Bug Genie and since [...]]]></description>
			<content:encoded><![CDATA[<p>Of course we never have bugs in our software, but still&#8230; we have always used some method to keep track of &#8220;misbehaving features&#8221;.</p>
<p>Through the years we tried: simple todo.txt files in our CVS project trees, Word documents on a shared file server, Google Docs (both spreadsheets and text documents), <a href="http://www.mantisbt.org/" target="_blank">Mantis</a>, <a href="http://www.thebuggenie.com/" target="_blank">The Bug Genie</a> and since a few weeks: <a href="http://lighthouseapp.com/" target="_blank">Lighthouse</a>.</p>
<p><span id="more-378"></span></p>
<h2>The Bug Genie</h2>
<p>Though I liked using a real bug tracker system, The Bug Genie didn&#8217;t work for us.</p>
<p>At first, it looked good. Nice up-to-date web 2.0 UI (as opposed to Mantis, which is not so easy on the eyes). It has a good project structure, allowing products, editions, builds and components (but all are mandatory, making it a nightmare to set up and maintain).</p>
<p>However, reporting bugs was a hassle, there&#8217;s too many fields to fill in (and all mandatory!): Product, Edition, Build, Issue Type, Component, Category, Severity, Issue Summary, Issue Description and How to Reproduce. You have to enter something into each and every field before you can submit a bug, very annoying.<br />
You can guess what happened: lots of &#8220;asdf&#8221; and &#8220;qwer&#8221; entries <img src='http://www.alwinhoogerdijk.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>But that wasn&#8217;t the biggest problem. It&#8217;s reporting and browsing features are just too limited and clumsy, especially when you have multiple projects going (we have over 20 now). The Frontpage of the The Bug Genie is one loooonnnnngggg list of all issues, grouped by project.<br />
Maybe it is just me, but for me the most common task I perform is to check the open issues for a particular project. That should be just one or two clicks away. In The Bug Genie, the only way to get a list of all open issues for a specific project is to go through the clumsy Search feature. Which is weird, I mean, even Mantis has simple project tabs at the top.</p>
<h2>Alternatives?</h2>
<p>So after using The Bug Genie for a couple of months, I started looking for a replacement. Early June I asked for tips on the <a href="http://www.asp-shareware.org/" target="_blank">ASP </a>Forums and on <a href="http://twitter.com/AlwinHoogerdijk" target="_blank">Twitter</a>:</p>
<p>I received the following suggestions (thanks all!):</p>
<ul>
<li><a href="http://www.bugzilla.org/" target="_blank">Bugzilla</a></li>
<li><a href="http://www.fogcreek.com/FogBugz/" target="_blank">Fogbugz</a></li>
<li><a href="http://www.mantisbt.org/" target="_blank">Mantis</a></li>
<li><a href="http://lighthouseapp.com/" target="_blank">Lighthouse</a></li>
<li><a href="http://www.adminitrack.com/" target="_blank">adminitrack</a></li>
<li><a href="http://www.arctictracker.com/" target="_blank">Arctic Tracker</a></li>
<li><a href="http://www.assembla.com/" target="_blank">Assembla</a></li>
<li><a href="http://www.unfuddle.com/" target="_blank">Unfuddle</a></li>
<li><a href="http://www.kayako.com/" target="_blank">Kayako</a></li>
</ul>
<p>Fogbugz was the most often suggested tool by far, so I looked at that one first. Also because it is created by <a href="http://www.joelonsoftware.com/" target="_blank">Joel Spolsky</a>&#8217;s company Fog Creek.<br />
However, Fogbugz is complete project management system, that does more than just bug tracking. Which probably explains why it is so expensive. It costs $25 per user per month (I need eleven users). $275 per month is a bit pricey for just bug tracking.</p>
<p>A friend, former co-worker and former employee (all rolled into one) recommended to take a look at Lighthouse. And I didn&#8217;t look any further&#8230;</p>
<h2>Lighthouse</h2>
<p>First, Lighthouse is a hosted bug tracking solution. When I started looking for a new bug tracker, I had no preference for either a hosted or a host-it-yourself solution. I have no problems installing a tool on our own servers, we did the same for Mantis and The Bug Genie (and still do for WordPress, PHPBB, etc&#8230;).<br />
But now that we have chosen for Lighthouse, I am happy that they host and update it for us. It&#8217;s nice to log in and find new features and improvements.</p>
<p>Lighthouse does bug tracking only, it has no project management, collaboration or customer support features. Which is fine with me, because it is great at the bug tracking part. I like products that do just one thing well.</p>
<p>Creating a new project only takes a name and an optional description. No need to define an elaborate project structure, with editions, components, builds etc&#8230; Once the project has been created users can immediately start reporting issues.</p>
<p>Adding bugs is super easy and accessible. There&#8217;s only a few fields (Title, Description, Who&#8217;s responsible, Milestone, State, Priority and Tags) and only the Title is mandatory. And for many bugs a descriptive Title is enough, at least initially.<br />
I&#8217;d rather have users add Title-only bug tickets, than run the risk of a 5-minutes-per-bug reporting process making them give up alltogether.</p>
<p>What struck me as strange, at least initially, is that Lighthouse has no fields to indicate in which part of a program the bug was found (called Component in The Bug Genie, Category in Mantis) and no Issue Type field (for stating where the issue is a bug, feature request, change request, etc..).<br />
To be more precise, it has no special, dedicated fields for those. </p>
<p>But it does have a blog-style Tags fields. Which you can use for Categories. Or for Issue Types. Or both. That&#8217;s the freedom you have in Lighthouse. In the Create Ticket screen the tags you used before automatically appear as a tag cloud below the Tags field. Just click one to add a tag to your ticket.<br />
The tag cloud is also shown in your navigation panel on the right, for easy access to a ticket category.</p>
<p>Which brings us to the browsing and searching features. You can browse tickets per project or get an overview over all projects. Every project page has direct links to lists of Open tickets and Resolved Tickets (called Ticket Bins in Lighthouse).  The cool thing is, you can define your own Ticket Bins too, based on tags, states, responsible, ticket dates, etc&#8230; Just do a search and save the search as a Ticket Bin.</p>
<p>Now I must admit that the Search feature is a bit clumsy. I mean, there&#8217;s no &#8220;advanced search&#8221; screen where you can define your searches with separate Tag, State, Responsible and Date boxes. You need to type queries like</p>
<blockquote><p>tagged:&#8221;bug&#8221; state:open responsible:me</p></blockquote>
<p>into the search box. Works fine for programmers, but for anyone else that&#8217;s just too cryptic.</p>
<p>Then, last but not least, the pricing. It&#8217;s cheap. If you only need one project (and 1 or 2 users) it&#8217;s free even. We are currently at the &#8220;Bronze&#8221; plan ($24 per month), which allows 10 projects and 15 users. We&#8217;ll probably upgrade to the Silver plan ($49 per month), once we start moving all projects over from The Bug Genie to Lighthouse. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.alwinhoogerdijk.com/2009/06/26/bug-tracking/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
