

Show HN: A/Bingo for ASP.NET - jasonkester
http://www.fairtutor.com/fairlycertain/

======
jasonkester
I've been using this for the past 6 months for S3stat, Twiddla and FairTutor,
with some pretty impressive results. Since it's "November Sprint" time, I
finally motivated myself to package it up and release it as Open Source.

It's essentially a simplified version of patio's A/Bingo, with one major
departure in that participation data is stored in the users' browser rather
than a local database. That helps it scale out better and means that you can
pretty much just drop the code into your project and have it start working
without having to configure anything.

Let me know what you think!

~~~
patio11
I think a prominent client of mine may owe you a beer. Thanks for bringing the
light of A/B testing to platforms without great options. Nobody should have to
use Google Website Optimizer.

~~~
jasonkester
Thanks for that, but I'm afraid that beer would get forwarded right back to
you, since it was your comment that pushed me from "I should build one of
those" to "I should build one of those and _release it as open source_ ":

<http://news.ycombinator.com/item?id=1124839>

------
forcer
Great job Jason. I was looking for something like this for a long time.

I have few questions which are not explained much on your site: \- you say it
does not use database but stores result on the client? how does it work? can I
loose the results when IIS is restarted etc. ? \- any screenshot of your
dashboard?

I know its probably not your main business so you dont want to waste lots of
time on it but I think it is a great idea and you should make a business out
of it. We currently pay $150 a month for VWO and its a fantastic tool but it
limits us to test on certain websites which have lots of traffic as VWO and
any other tool on the market charges per number of visitors tested. Your tool
as its self-hosted solution wouldn't have these economics so you can charge
few hundred dollars for a license with unlimited tests etc.

~~~
jasonkester
It uses cookies to store participation and conversion data, so as a visitor
you'll come away with a cookie that looks like this:

    
    
      ab:ID=1212802769|Tests=header_caption,register_payment_message,account_instructions,setup_navigation|Conversions=header_caption
    

That way, we can simply ask the visitor whether he's participating in a given
test, and we can know not to score him twice for anything. All that lives on
the server is a file at the root called tests.ab holding a few k worth of
participation and conversion tallies.

Every time anything changes, it checks to see if it's saved its state in the
last minute, and if not it simply serializes itself to XML and dumps that to
disk. If it ever finds itself uninitialized (such as on a server reset), it
attempts to load its last saved state. So long as you remember to ignore that
tests.ab file as part of your deploy, it'll survive intact.

As to selling it, I'm all about bringing in the cash, but a hosted option
wouldn't really work for this. First, it's architected specifically so there's
hardly anything to host. Second, its big advantage over something like Visual
Website Optimizer is that your pages don't hang while requesting resources
from a 3rd party.

Don't worry. I've got other stuff bringing in revenue (like the site this is
hosted on, for instance), but thanks for the suggestion!

~~~
forcer
Thanks for the explanation - now I know it serializes to a file which is fine
- I wasn't sure how it can keep the state only by storing on the user side.

Self-hosted solution - I probably didn't explain myself well I meant that its
great it can be self-hosted rather than relying on 3rd party website like VWO.

~~~
jasonkester
No, you explained yourself quite well. I just didn't read it correctly.

As a compiled .dll you drop into your project, you could probably market it to
decision makers and get them to force it on the devs, hoping that nobody every
bothered to decompile it and realize it's only a few hundred lines of code.

I'm sure there's a business in the self-hosted AB space, but for the moment
I'm not excited enough about it to pursue it.

------
thinkzig
You rock. This weekend I was planning to start evaluating A/B testing
frameworks for my ASP.NET-based travel site. I was really hoping I could find
something like Patrick's framework and here it just dropped in my lap.

Thanks for releasing this. I'll let you know how it goes. HN delivers again!

------
jeroen
<http://www.fairtutor.com/fairlycertain/fairlycertain-details>

says "Using the &ltab:Test> UserControl"

~~~
jasonkester
Are you pointing out a typo on the site (if so, I can't find it), or are you
lamenting that it requires UserControls to work?

If it's the latter, read down to the next code sample, which shows how to call
the library directly from an ASP.NET MVC View or anywhere else.

The UserControl is just there as a convenience.

~~~
pmjordan
There _is_ a typo: you're missing the semicolon at the end of the &lt; entity.
Some browsers are permissive enough to allow that, some aren't. You must be
using one that is.

~~~
jasonkester
Thanks for that. Fixed.

------
spoiledtechie
Can someone please describe what AB testing is or point me to something that
explains it?

~~~
jasonkester
Try a few of the links here:

<http://www.bingocardcreator.com/abingo/resources>

Basically, it's testing one version of your website against another version,
so that you can measure which one better compels users to do something.

So, for example, you might try testing your normal "Buy Now" button against a
double-sized, bright red shiny button. You'd show one version to half your
visitors, the other version to the other half. Libraries like this one let you
keep track of who saw which version, and whether they actually bought your
thing.

After a week or so collecting data, you can see that, for example, 4.8% of
visitors seeing your old button clicked it, whereas 6.6% of those who saw the
big red one clicked it. That's valuable. As in, measurable in dollars
valuable, so you need to be doing it if you run a website that sells things to
people or otherwise gets value out of people doing stuff on it.

~~~
spoiledtechie
thanks. That helps.

------
weaksauce
Is there an ab testing tool worth looking at on the django side of the fence?

