Agile Zone is brought to you in partnership with:

I am a programmer and architect (the kind that writes code) with a focus on testing and open source; I maintain the PHPUnit_Selenium project. I believe programming is one of the hardest and most beautiful jobs in the world. Giorgio is a DZone MVB and is not an employee of DZone and has posted 637 posts at DZone. You can read more from them at their website. View Full User Profile

Pretotyping: a complete example

09.29.2011
| 4689 views |
  • submit to reddit

Pretotyping is a technique for testing user reception to a new product, before even building a functional prototype; what is put under questioning in pretotyping is business viability, not technical feasibility.

After reading the Pretotype It book in one sit, I set out to try an idea I had for a web service. In this article I share what I learned and the results of my experiment, open to interpretation.

Summary

The goal of my activities was to validate the idea of a service which provides links considered controversial with respect to the user's interests; for example, in the field of programming languages, an article on Ruby's unique features to a PHPer, or the wonders of automated refactoring in static languages for a Rubyist.

The service is about avoiding the filter bubble: getting stuck in the bubble of our interests and never learn something new from the competition. I called this pretotype Who Disagreees With Me?.

Instead of building a real prototype, I launched a weekly newsletter: this approach is an example of a Mechanical Turk pretotype, where a human (me) does the work of a machine (an algorithm for selecting links, or a platform for crowdsourcing it like DZone does.) It is also an example of Re-label, since I borrowed a mailing list service from MailChimp and call it a web service.

I published weekly articles on my blog, which has 1.2K feed subscribers; I extended my reach with links on my Google+, Facebook page and Twitter.

Subscriptions

Subscriptions mainly came after my blog posts, related to the creation of the service or a new issue of the newsletter.

The trend peaked after the first issue, and is declining ever since, probably as a result of the conversion of all interested blog subscribers.

Note that these data (apart from the first which span 5 days instead of the weeks) are relative to a period of one week from one issue to another, so it is really a subscription rate. I am not counting the views on blog pages, where older pages were naturally bound to have more views.



Opening rate

According to MailChimp, the percentage of emails that were actually opened is very high with respect to the industry (and all industries): it was always over 50%.

This datum indicates a very selected public, since it consists of the followers of my blog. The potential page views were close to the 1.2K feed subscribers number; the page view I got were in the hundreds, and the final newsletter subscribers was 78; I had 2 unsubscribers during the whole experience.

Cohort analysis

Googler Alberto Savoia followed me during this experiment, and suggested a different analysis of the data: by tracking simply the data of a single issue of a newsletter, I would confound new subscribers with older ones.

He suggested a cohort analysis, which divides the subscribers in cohorts: groups with a single characteristic.

In my case, the cohort was defined by the periods of subscription:

  • cohort 1: after creation and first issue
  • cohort 2: between first and second issue
  • cohort 3: between second and third issue
  • cohort 4: between third and fourth issue.

The After the fourth issue cohort does not exist because I have no data: the variable provided by MailChimp is the openings number for each newsletter.

Since I had various version of each issue depending on the topic (PHP|C|Java...), I aggregated them and retain the number of openings, specific for an issue and for cohort.

Thus now I have a trend for each category of user where I see his evolution in time, relative to the time of his subscription.


Compare this scenario to Twitter's one: the activity in there lowers very much after the first month of usage. However Twitter has millions of new subscribers every month, so the one that remain ultimately lead to more activity than for the first month.

We have to look at two things in such an graph:
  • how the average cohort behaves in time, so that newer subscriptions don't cover up the disengagement of older users who cease to open mails. If each cohort goes down after a certain period of time, the user isn't sticking with the service.
  • How newer cohorts improve with respect to the previous ones (this was not my objective while creating the newsletter however, as the format and content stay constant).

Conclusions

This is a full example of pretotyping a web application's concept without writing any code (which costs you your time, focus, and money for hosting), and of analyzing data collected by a third-party service.

What do you think about the collected data? Do you think users show a recurring interest? Is their subscription rate high enough?

Published at DZone with permission of Giorgio Sironi, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Liam Knox replied on Thu, 2011/09/29 - 6:26pm

I don't know. If Google can do Google Wave and it still deliver out a Turd? May be some gut instinct on your original idea being right may help. What are you using this for anyway?

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.