Sproutwire - New product from Shane & Peter

April 11th, 2008

Sproutwire is a small-business aggregator which has just escaped from the clutches of a prolonged beta.  It puts up about 2-3 high-quality business-related articles daily, all of which are good reads for anyone with entrepreneurial aspirations of any size.

Yes, they have a feed, and they even do daily email newsletters if you’re not the feed type.   It’s really pretty, check it out.

In other news, freshly into beta we find Aviary’s web app suite, which is frankly amazing.  More on that later.

Google Javascript Generated Content Indexing

March 27th, 2008

I heard rumors that Google was planning on, or already does, execute javascript, so I thought I’d test if it would index keywords found in content that is generated from javascript.  The page is: Snarphuphen Cloobdle Hglagshei .

My hypothesis is no, but let me know if you’re interested in the results.

Happy Creek Sawmill

March 24th, 2008

Happy Creek Sawmill specializes in custom millwork, including flooring and moulding.  They also provide top-notch wood-drying with their kiln, and can even manufacture products for homeowners from trees cut down while building their house.

They are located in the Cowichan Valley on Vancouver Island — specifically in Duncan, BC. 

The Best Usability Test

March 19th, 2008

Users get a lot of flak, both deserved and otherwise.  Sometimes, it’s really easy to blame the user for making mistakes on application features or websites that you’ve developed.  However, they are your users, and you need to accommodate them.  Luckily, there’s a really easy way to do this.  First, though, some preamble.

Users are Predictable

80% of users will make the same subset of mistakes for all the same reasons, almost every time.  The remaining 10% are either relative experts like us, or completely computer-illiterate technophobes — neither of which is likely to be your target audience.

These are the users that usability tests are designed to help you with.  It doesn’t even have to be a formal usability test in a controlled setting, either - just having someone other than yourself, the person who designed the thing you’re testing and knows it inside-out, is an enormous step, and an essential part of the process for creating any interface, be it a website or an operating system - or, for that matter, a telephone or an F-16 cockpit.  Furthermore, since 80% of users are more or less alike, it’s easy to find someone appropriate to volunteer.

Usability is Essential

If the user can’t find the product, the sale is lost.  If the user can’t find the appropriate information about the product, the sale is lost.  If the user can’t figure out how to add the product to the cart, check out, pay, arrange for shipping, and then confirm their order, the sale is lost.  The same applies to an application — if the user can’t use it, they won’t.  Usability is arguably the most important aspect of a successful website/application.

The Solution

So we’ve established the usability incredibly important, but also remarkably simple to gauge.  What does this mean?

Fifteen minutes spent watching your mom use your interface can be worth thousands of dollars in the long run.

Your mom is the ideal user for you to test on.  Why?  Because 1) she’s probably a good demographic, an average user on the lower end of the bellcurve in terms of computing ability, and 2) because if your mother gets stuck checking out, you’re not going to dismiss that as an idiotic user mistake and forget about it.

Don’t listen to what she says, she’s biased.  Instead, just watch her use the interface.  Take note of which screens she spends a minute or two clicking around, trying to find an escape.  Write down when and where she gets stuck. Watch what she does, and you’ll be rewarded.

Budget for Testing

Try this: for every project, budget an hour or two for testing, and use it to take your mother, or someone else you know who fits the typical-user bill, out to dinner in exchange for their valuable input.  Make sure it’s someone who you can’t possibly just gloss over as a simpleton, this is important.  As put by advertising maven David Ogilvy: “The consumer isn’t a moron; she is your wife.”

Plus, I bet she’d really like to see you.

Tasksy: Finding a Domain Name

March 11th, 2008

I spent a few hours last night browsing whois records, searching for a domain name for my latest project.  Let me tell you, it is a tough tough thing to name a startup based on a domain.  I think the guys at 37 Signals got it right, getting the domain after the fact.

Anyhow, my stubborn refusal to learn anything from anyone but myself has resulted in my naming the product tasksy.  Easy to remember, I hope, but hard to say (try it!).

What is the product, you ask?  Well, if you were smart, you’d go to tasksy.com and see, because I ain’t gonna tell you anything else until I’m good and ready.

Indochino’s New Lineup

March 10th, 2008

Indochino.com, not-so-secretly a favorite site of mine, has just launched a new lineup of suits.  Unfortunately, this means I’ve missed my chance to get the Oxford Office.  Fortunately, it gives me something to talk about, and another excuse to drive the few daily “indochino review” searches to this site. If they ever add a referral program I’ll be in the money.

(Would you believe it, it’s been an hour and this post is already tops for “indochino review.”  I bet if I said the words “indochino suit review,” I could rank for that too.  Hey Kyle, need an SEO guy?)

My first point, and I apologize to the model for making it, is that I liked it better when their model was faceless.  Not because I don’t like the new guy’s face, but because when it was the faceless model it was me in the suit in my mind, and that got me a lot closer to buying it.  Plus, how does the first guy feel now that this guy has his face up everywhere?  Poor model #1, you’ll always be my favorite.

Another critique, and I critique only because it’s more interesting than saying, “gee, this is wonderful,”is the perplexing “business” and “fashion” suit categories.  “Berlin means Business’s” presence until today in the fashion suit section serves to illustrate my point, and their shuffling it into the business suit category only backs me up that much more.  Maybe it would make more sense to go with “Casual, Business, Formal.”  All of their suits are, after all, quite fashionable.

Also, it would make sense to have both mannequin and on-a-guy shots for all the suits, so that you could put the mannequin shots in the summarized view and have some parallelism in navigation.

On to the clothing itself:  Generally good stuff.  The silver thing is a bit of an expensive eyesore, and the “Piccadilly Purple Pinstripe” shots make the model look like he’s falling asleep. Also, I’m not sure what differentiates the $400 St. Petersburg Pinstripe from any of the other, similarly-priced pinstripe models. The navy version is 50% cashmere, but $110 cheaper. Then again, pricing always does seem arbitrary.  And, there are no more three-buttoners, which is fine by me because I got mine already and now I need a two-button.

Overall, I think they’ve done it again. Another round of nice suits at reasonable prices. If I had the dough and the need I would be all over that, but until they need a new website or they start some sort of affiliate program I guess I’m stuck just writing about them.

Marketing Snippet: Memorable Trumps Good

March 10th, 2008

I would like to introduce you to a man.  This man is a feature — nay, a legend — in his hometown, which happens to be my hometown. His influence upon this city can be felt the moment you step off the ferry and gaze upon his majestic visage.

His name is Gordy Dodd, and if you live in Victoria you have almost certainly noticed his new bus ad campaign, featuring 007 Dodd, Superman Dodd, and a few others. Dodd, and his company Dodd’s furniture, have produced a number of highly entertaining videos, although unfortunately only a select few are available online. These videos have burrowed their way into the hearts and minds of Victorians everywhere, and whether they like him or hate him, you can be damn sure that almost any Victorian you ask can remember him. But what makes Gordy Dodd so memorable?

Uniqueness

Dodd's Furniture
Gordy Dodd is not a beautiful man. In fact, he has a very distinct homeliness about him (I’m sure he knows it, but I’ll sure feel bad if he has to hear it from me). Plus, even with all the years he’s been on TV, he still has an incredibly strong accent. Even better, his ads go over and above regular low-rent-local-business-loudmouth territory and into a strange world of bad costumes, worse acting, and the sense that Gordy is going to crack up any second until you realize that, no, that’s just his face.

Gordy has been the Hulk, Harry Potter (”Even a muggle knows our savings are magic”… but add a strong indian accent), Elvis, and many more. He’s made full-scale bollywoodesque ads featuring what probably constitutes a solid majority of his female relatives, dancing in saris. Rest assured that the link above contains a fraction of a fraction of Dodds’ full repetoire.

His delivery is priceless - there is no worse actor in the world than Gordy Dodd, and he the fact that he tries so hard makes you love him all the same. But what he lacks in acting, he seems to make up for in marketing genius and sheer gumption.

And you can bet that he’s never paid more he makes from selling a couch to make them.

Repetition

Gordy Dodd is everyhere. His mug has been gracing local TV screens for years and years. He appears on buses, in newspapers, on magazines. All this further separates Dodd from the crappy carpet salesmen with similar budgets - not only will they not dress up in spandex on TV, they’ll only try once or twice and then give up because almost everyone ignores them. Nowadays, when Gordy releases a new ad, you can be sure that it will come up as water-cooler talk.

Be Memorable

So what can we learn from Dodd’s Furniture? Here, I’ll illustrate it with another example.

QUICK! Picture in your head, in detail, an Olympic games logo.

I’ll wait, although I bet you see where this is going already.

Was it London 2012 (click to see the logo)? I bet for a lot of you, it was. Even though statistically you probably hate it, you can be sure that the 2012 logo is going to be hard to forget. And don’t you say that’s just because of the controversy - if it wasn’t for the logo’s decided “uniqueness”, it never would have gotten that sort of press in the first place (no such thing as bad publicity).

Being memorable is not the same as being good. And unless you’re trying to showcase your design/directorial/creative talents, being memorable is just as good and probably better.  If you can hit that water-cooler-talk sweet spot among your clientèle, success is sure to be yours.

Folk Art Creative

March 5th, 2008

Lady and Gentleman, I am pleased to announce the launch of my latest project, implemented earlier this morning.  Folk Art Creative is a multipurposed venture, helping me harness the various people I’ve met who are interested in getting into the freelancing game, providing a more orderly visage to my own small-time business, and providing a vehicle for me to launch some of the various projects I’ve been working on.  I hope you like it.

Be on the lookout for the launch of some of these products, I’m really excited about it.

You Know What Else I Hate? Numbered Blog Posts

March 3rd, 2008

“12 Ways to Enhance your Productivity”

“15 Reasons to Stop Working So Hard”

“8 Simple Ways to Boost Your Attention Span”

I made those up, but that doesn’t prevent me from firmly believing they exist somewhere. It’s gotten to the point where posts featuring numbered lists are more common than posts without. One of my favorite blogs is the venerable Zen Habits, but even that has begun to irritate me with its formulaic posts.

Stop making everything a numbered lists. If it’s the only way you can write, fine, but just take the numbers out after.

Here’s a recent post from the aforementioned blog:

20 Money Hacks: Tips and Tricks to Improve Your Finances

[snip]

1. Use cash. Instead of charging things to credit cards or debit cards, use cash for non-bill spending such as eating out, gas, groceries. Spending cash makes the spending more real, and there’s an added advantage of knowing when you’re out of cash, instead of spending more than you [can afford].

2. Small weekly savings transfers. I got this idea from my friend Trent at The Simple Dollar, who automatically deducts $20 a week from his check to savings. I decided that I could live with $40/week without really feeling it — it’s a relatively small transfer that I barely notice, and I save about $2,000 a year on top of my larger bi-weekly savings transfers.

3. Stay home. Going out makes you more likely to spend unnecessarily. You eat at restaurants, go to the mall, stop at the gas station for snacks. It’s hard to avoid spending when you’re on the road. Instead, stay home, and find free entertainment. It’s also a great way to bond with your family.

4. Don’t get catalogs. Or emailed announcements from companies trying to sell you stuff. Their announcements of sales or cool new products make it very tempting to buy something you don’t need. Instead, stop the catalogs and emails from ever getting to you in the first place, and you’ll spend less.

5. Keep a 30-day list. If you have an impulse to buy something you don’t absolutely need, put it on a 30-day list. You can’t buy anything but necessities — everything else goes on the list, with the date that it’s added to the list. When the 30 days are up, you can buy it — but most likely, the strong urge to buy it will be gone, and you can evaluate it more calmly.

Let’s rewrite that in the way a normal person, for whom “blog” still sounds like a mysterious sex act, might:

Tips and Tricks to Improve Your Finances

[snip]

Use cash.

Instead of charging things to credit cards or debit cards, use cash for non-bill spending such as eating out, gas, groceries. Spending cash makes the spending more real, and there’s an added advantage of knowing when you’re out of cash, instead of spending more than you [can afford].

Small weekly savings transfers.

I got this idea from my friend Trent at The Simple Dollar, who automatically deducts $20 a week from his check to savings. I decided that I could live with $40/week without really feeling it — it’s a relatively small transfer that I barely notice, and I save about $2,000 a year on top of my larger bi-weekly savings transfers.

Stay home.

Going out makes you more likely to spend unnecessarily. You eat at restaurants, go to the mall, stop at the gas station for snacks. It’s hard to avoid spending when you’re on the road. Instead, stay home, and find free entertainment. It’s also a great way to bond with your family.

Don’t get catalogs.

Or emailed announcements from companies trying to sell you stuff. Their announcements of sales or cool new products make it very tempting to buy something you don’t need. Instead, stop the catalogs and emails from ever getting to you in the first place, and you’ll spend less.

Keep a 30-day list.

If you have an impulse to buy something you don’t absolutely need, put it on a 30-day list. You can’t buy anything but necessities — everything else goes on the list, with the date that it’s added to the list. When the 30 days are up, you can buy it — but most likely, the strong urge to buy it will be gone, and you can evaluate it more calmly.

Is there any substantive difference between these two? Of course not, that’s the point.  Maybe you’ll even improve your prose, writing in complete thoughts (not you Leo, you are a fine writer.  Sorry for making you my scapegoat) and elaborating on them once you realize how sparse the content looks.

I Hate Country Select Boxes

February 22nd, 2008

The country select box is my favorite pet peeve. You see it everywhere, in every signup form, every address entry form, everywhere that someone thinks that you’re too dumb to know what country you live in without some hints. Sure, you can tack USA to the top of the list, but where does that really get you? “Screw you Germany, France, Somalia, Canada, the UK, the Rebublic of Ireland, Russia, Croatia, Slovenia, Romaina, Bulgaria, and whatever other countries there are, you don’t have the internets anyway.”

The country select box isn’t an just insult to my intelligence and my nation’s internets-usage, it’s also a pain to use. I’ve learned to press “C” three times to get Canada, but I pity the poor fellow who lives in Myanmar and has to press “M” a grand total of 21 times to bypass Macau through Mozambique, and all the while dodging bullets fired at Buddhist monks. You know what country you live in, and you can spell it on the first try, too. So why have a select?

With some creative javascript, a small amount of input checking, and a bit of moxie, you can spare your visitors this humiliation. All you need is a list of all the countries (which you needed anyway), and a text input.

Here’s the HTML, to start:

<input type="text" name="myElement" id="myElementID"
onkeyup="countryList.updateTextbox(this.id,this.id+'_container')" />
<div id="myElementID_container"></div>

If you really want to be fancy/unobtrusive, you can rig up some javascript to apply the onkeyup stuff only when you load the page or something, but that’s not my point. Also, bonus points if you add onfocus and onblur attributes that show and hide myElementID_container.

I like to work with php, because I like having an extra layer where I can pull some fancy tricks to help myself out. In this case, that involves getting an array of every country. I used this one because it’s associative and gives country codes. Put it somewhere appropriate so that we can get at it. To get it into a form we can use from javascript, we simply invoke json_encode(), which will turn it into an object.

Next comes a wee bit of javascript, with the one thing of PHP. I’m going to make everything take place from within the context of a JSON object called countryList, because I feel fancy, and because if some other javascript needs a variable called countries somewhere else we won’t have to care. Here, I’ll walk you through it — if you just want to take the code without learning anything, that’s fine, but your punishment is that you have to copy each of my snippets individually to do it. Credit is always nice, too.

var countryList = {
	countries : <?= $countries ?>,
	updateTextbox : function(id, containerid){
		textBox = document.getElementById(id);
		current = textBox.value;
		var suggestionslist = document.createElement('ul');
		for(var code in countryList.countries){
			countryName.to = countryList.countries[code];

That part was pretty boring, I just instantiated everything and started my loop through the JSON. What happens next is that I’m going to use the substring function to compare the start of what I’m typing with that start of all the countries I’m looping through. Then, if there’s a match I’m going to use the DOM methods to build me a new list item featuring a link (clickable to update the textbox), to add to my new list of countries, replacing the old one.

	if(countryName.substring(0,current.length).toLowerCase()==current.toLowerCase()){
		countryNameNode = document.createTextNode(countryName);
		listNode = document.createElement('li');

		linkNode = document.createElement('a');
		linkNode.setAttribute("href","javascript: document.getElementById('"+id+"').value = '"+
		countryName+"'; countryList.updateTextbox('"+id+"','"+containerid+"'); void(0);");
		//The void(0); above is necessary to prevent firefox from redirection, annoyingly.
		linkNode.appendChild(countryNameNode);
		listNode.appendChild(linkNode);
		suggestionslist.appendChild(listNode);

	}

Next, we just append the list, after closing our loop, of course.

		}
		var container =document.getElementById(containerid);
		while(container.firstChild)
			container.removeChild(container.firstChild);
		container.style.textAlign = "left";
		container.appendChild(suggestionslist);
	}
}

And there you have it!

What’s that? “A demo,” you clamour? Fine, here. Note that this has a fancy timeout applied to the onblur hide so that you can still click the country links, if you’re quick enough.

If you use this, you should definitely add a check to see that the country is in a form you can use. Be sure to check for variations, e.g. “USA,” “The US,” “United States,” etc., but don’t be draconian about it or this will prove worse than a regular dropdown. Remember to be user-friendly, not user-proof.