Know Your Customers

by volcanic on January 7, 2012

I came across the following joke and though it was pretty funny and communicated the concept of “Know Your Customers” really well by showing what not to do:

A disappointed salesman of Coca Cola returns from his Middle East assignment.
A friend asked, “Why weren’t you successful with the Arabs?”
The salesman explained, “When I got posted in the Middle East, I was very confident that I will makes a good sales pitch as Cola is virtually unknown there. But, I had a problem I didn’t know to speak Arabic. So, I planned to convey the message through 3 posters…

First poster, a man crawling through the hot desert sand…
Totally exhausted and panting.

Second poster, the man is drinking our Cola and

Third, our man is now totally refreshed.

Then these posters were pasted all over the place”
“That should have worked,” said the friend.
The salesman replied, “Well, not only did I not speak Arabic,
I also didn’t realise that Arabs Read from Right to Left…”

How To Run Tests On Just Your Target Audience

by volcanic on May 10, 2011

I’m a big fan of testing and one tool that I like to use is Visual Website Optimizer (VWO). It allows you to quickly and easily create variations of your pages, split the traffic to these variations and see which ones perform better.

One of the challenges we faced when using VWO on our website was that a large enough percentage of our visitors come from countries that we’re not likely to do business in. This means that any tests we run will be skewed and not truly representative of how my core audience would interact with our website. VWO allows you to segment your tests by a variety of factors but country isn’t one of them yet… so I came up with my own temporary fix until VWO offers a better way.

Integrating MaxMind with Visual Website Optimizer inside WordPress

MaxMind.com offers a service that allows you to convert an IP address into a country code. For $20 per 200,000 queries, you’re able to basically detect which country your visitor is coming from. When you purchase a license from MaxMind, they’ll provide you a license key. When in your functions.php file of your theme, you can add the following:

function what_country_is_visitor_from($license_key, $ipaddress){
  $query = "http://geoip3.maxmind.com/a?l=" . $license_key . "&i=" . $ipaddress;
  $url = parse_url($query);
  $host = $url["host"];
  $path = $url["path"] . "?" . $url["query"];
  $timeout = 1;
  $fp = fsockopen ($host, 80, $errno, $errstr, $timeout);
  if ($fp) {
    fputs ($fp, "GET $path HTTP/1.0\nHost: " . $host . "\n\n");
    while (!feof($fp)) {
      $buf .= fgets($fp, 128);
    }
    $lines = explode("\n", $buf);
    $country = $lines[count($lines)-1];
    fclose($fp);
  } else {
    # enter error handing code here
  }
  return $country;
}

function add_vwo_code_based_on_country(){ 
  $license_key = "YOUR LICENSE KEY";
  $ip = $_SERVER['REMOTE_ADDR'];

  $country = what_country_is_visitor_from($license_key, $ip);

  $tracked_countries = array("US", "AU", "NZ", "CA", "UM", "GB");

  if ( in_array($country, $tracked_countries) && ( !(is_user_logged_in()) ) ) { add_vwo_code(); } 

}

function add_vwo_code(){ ?>

  <!-- Start Visual Website Optimizer Code -->
    Code provided by VWO
  <!-- End Visual Website Optimizer Code -->

<?php }

add_action("wp_head", "add_vwo_code_based_on_country");

In the above code, there are 3 parts you’ll need to customize and they have been highlighted in green. The first is the license key that MaxMind provides, the second is the array of countries that you’d like to test and the third is the code that VWO provides to add to your site.

Now even though I’ve shown just how to use VWO, you could replace the tracking code of other systems and achieve the same effect. Happy testing!

Fix Your No-Show Problem

April 12, 2011

If your time is important to you, you know that no-show appointments with customers and potential customers is costly and frustrating. Even though we know this is a problem, it’s time consuming to consistently call to confirm an appointment. Most of the time, you end up haggling with a voice mail system and wasting a [...]

Read the full article →

Grab Attention Immediately

April 2, 2011

As web designers, we constantly face a challenge that I’d like to discuss here today: how can we grab the attention of visitors coming to our website when in reality, all these visitors are different, have different needs and looking for different information. What would normally be attention grabbing for one audience would cause another to yawn [...]

Read the full article →

"Disgusted" at WordPress Plugin Authors

February 28, 2011

Today I received an email from a WordPress user who was having problems making our WordPress backup plugin work with her site. Something she included in her message stood out to me immediately: I know that my sql DB alone is larger than 8 Gb I emailed her a few minutes later saying that our [...]

Read the full article →

Alternating Table Row Colors in Rails

January 5, 2011

A common task in business web applications is displaying tables of content in a spreadsheet style format. A nice treatment that adds a lot of usability to such tables of data is visually separating alternating rows of content. The easiest way to do this in Rails is to use the cycle function as follows: <%= [...]

Read the full article →

The Meaning Of Technology

January 3, 2011

I got curious today as to the root meaning of the word technology and I stumbled onto this interesting definition: “technology – the practical application of knowledge;” LearnThat.org

Read the full article →

WordPress 3.0.4 is a Critical Security Update

December 29, 2010

On December 29th 2010, WordPress released version 3.0.4. This minor update contains a critical security patch that addresses a recently discovered exploit for WordPress. Here is the official note from WordPress.org: On December 29, 2010, WordPress 3.0.4 was released to the public. This is a critical security update for all previous WordPress versions. Fixes XSS [...]

Read the full article →

Getting Current Path In Rails From Current Request

December 22, 2010

There are a number of reasons you might want to get the current path. For example, you might chose to create a menu system that compares the current path against a list of paths that are available and use that to add the “current” class so you could indicate which page you were currently on. [...]

Read the full article →

Make It Easy To Find

September 30, 2010

If you have a link or a button on a website and it’s not easy to find, it might as well not even be on the page because to the visitor, it practically doesn’t exist. Take the “YouTube Partnership Program: Welcome” page from YouTube: It explains to me that one of my videos has become popular [...]

Read the full article →