Sep 11

Features: simplicity versus completeness

I am tired of all the “simplest [Application Type] of the world”. I wrote about it before.  A simple application is not useful if it is incomplete.

Would Excel be so successful if it was limited to editing a grid?

On the other hand, people like the feeling of simplicity and despise being overwhelmed by too many features.

Which one should you choose? Simplicity (and you may use users for lacking features) or Completeness (and you may lose users for being too complex)?

Stop thinking that one excludes the other!

1. Give your users the option.

Like http://trello.com does:

Or like GoalsTribe does:

2. Progressively present your users with new features

Like StackOverflow does for example:

3. Qualify your users and show features depending on their types

Like Odesk does:

You have many ways to hide features and provide simplicity in a complete application.
Please stop calling your laziness ”simplicity”.

Aug 11

My experience at PushStart Mentor Connect

Yesterday I went to PushStart Mentor Connect.

I had the opportunity to “speed-date” with David Jones, Brad Lindenberg, Dave Cunningham and Simon Foster.
The challenge I asked them about what around how to bring more people to the website (probably a very common challenge). When people try TaskArmy, they like it but the challenge I have is to drive people to the website.

The main recommendation I got from the mentors was that I should focus my offering even more. Instead of focusing on website related tasks (which I thought was already quite focused), I should be focusing on one service or a smaller category of services (like 99designs focuses on design only). It should also help with SEO.

Next step: review the web analytics to find which category to pick and trim the directory down to a focused list of services.

Thanks PushStart.

Jun 11

This is why you need to submit a sitemap to Google


May 11

Website review to improve website ranking and conversion

Today I would like to show you how to quickly review a website and find low hanging fruits in terms of SEO, marketing and other technicalities.

I will review the website of Blue Tea that offers kitchen designs in Sydney.


Google Webmaster Tools

Did you register your website to Google Webmaster Tools?

If no, do it now.

Done? Now, please set up your preferred domain name inside Google Webmaster Tools. Go in “Site Configuration / Settings” for that.

Note: You will need to claim both the root domain yourdomain.com and the www.yourdomain.com in Google Webmaster Tools in order to be able to set the preferred domain name. I personally believe www. is redundant so I set my preferred domain name as being the root domain.

Have you submitted a sitemap?

If no, you can install some WordPress plugin that will generate it for you.

If yes, check that the ratio of URLs in web index / Submitted URLs is healthy. A too low number would mean that the Google Crawler has difficulties to crawl your website.

Are there any reported errors (under “Diagnostics / Crawl Errors”)?

Front page search engine optimization

Have you done any keyword research?

Your website needs to focus on certain keywords. At the beginning you want to focus on high-ish volume / low competition keywords. If you are not sure how to do it, I teach it in the free email course I set up.

For Blue Tea, the keyword is “kitchen design sydney”. Although the volume of searches is quite low (720 per month), it will bring good qualified traffic.

Is the main keyword present in the title of the front page?

In the case of Blue Tea, the title is “New Kitchen Designs Sydney”. I’d suggest to add one more keyword and the name of the company, something like “New Kitchen Designs in Sydney and Colour Design | Blue Tea”

Does the front page have a <h1> tag with the main keyword?

No! Ahhhhhhhhh. This is a big SEO opportunity.


The main title on the page is a <h2> tag only, and doesn’t contain the main keyword.

Does your front page have a convincing meta description that contains the main keyword?

The current meta description is “BlueTea, Specialises In Designing New Custom Made Kitchens And Colour Consulting. Book A Free Consultation With One Of Our Professional Interior Designers Today.”. It is already very good but I would try to insert the main keyword so that it gets displayed in bold in the search results when someone searches for “Kitchen Design Sydney”.

By the way if you need someone to do these changes for you, I can personally recommend Neerav our popular PHP freelancer.

Do all the images have a “alt” attribute with important and descriptive keywords?

On most of the pictures of the website Blue Tea, the alt attribute is missing. This is another good SEO opportunity. Decorate your images with alt attribute that contains relevant keywords, especially the logo.


Article page search engine optimization

Does the website have enough content targeting the important keywords?


Blue Tea has done a great job in writing articles that include some important keywords. Unfortunately they are still missing the main keyword (kitchen design sydney).

Do the articles pages have good URLs?

I then look at the link structure of the article pages. For example, the article “Kitchen Design with Island” has the following URL:http://bluetea.com.au/new-kitchen-articles-2/kitchen-design-with-island. It is great to have urls composed of domain.com/category/title. If I were perfectionist, I would remove the “articles” in the category url as it doesn’t give any value to Google or the user.


Can I find the main keyword of the article in the <h1> tag and the title?

If you go on this article on kitchen planning, you can see that the <h1> is optimized but not the title! Currently the title is “New Kitchen | Blue Tea”. This is another big SEO opportunity… I would suggest “Kitchen Planning | New Kitchen | Blue Tea”.

Marketing related assessment

Does the front page contain a way to grab the visitors’ email address?

This is critical to convert visitors into prospects. It is then so much easier to convert a prospect into a client rather than a first time visitor into a client…

Is there any call to action on the front page?

Yes there is and the buttons stand out from the rest of the design. My only suggestion would be to rename the “Submit” labels into something more catchy.


Is there any trust factor?

Yes! A phone number is provided:


On taskarmy, the trust factor is the combination of the testimonials and the number of people who recommend taskarmy:


Did you set up a Google AdWords campaign?

With Google AdWords, you will be able to show up on the right hand side of the search results page. If you are not there, your competitors are…

In the case of Blue Tea, they appear first:


Important ranking first doesn’t mean anything. You need to track your conversions (Google AdWords gives you a code to insert in your “visitor is converted” page) to know what you are spending in Google AdWords is less than the amount of business it brings you. If you estimate your lifetime value of a customer at $1000, it means you need to spend less than $1000 in Google AdWords to get a sale from it. Don’t only look at the CTR metric in Google AdWords, sometimes an ad that attracts clicks in Google might not convert well on your website and will end up costing more overall.

Should you set up Facebook Ads?

Facebook Ads works differently than Google AdWords. Google AdWords has a pull model: the user searches for something, and your ad is displayed. Facebook Ads has a push model: the user doesn’t ask anything, he is just on Facebook, and you push your ad to him.

The nature of the ads you would use on Facebook Ads must by nature be different from the one you use in Google AdWords, and most of the time it might not be worth using Facebook Ads at all.

As an interesting anecdote, Facebook Ads has removed its conversion tracking feature, some believes it is because the conversions from Facebook Ads were so poor…

Anyway, if you want to advertise on Facebook Ads, I would suggest you to advertise two things: events you may organize, and freebies that will require the user to give his email address.

Facebook Ads is so good at targeting locally that advertising local events on it is very efficient. A friend of mine has recently started organizing salsa classes next to where I live and I set up some Facebook Ads to kick-start the perceived popularity of his first classes. It worked like a charm (and for super cheap)!

Off-page search engine optimization

Did you register your business to local directories?

If your business is local, the most important website to register to are Google Places, Yelp, TrueLocal.com.au (there are many more, I let you look for them). Registering in Google Places will allow your website to appear in the Google Maps area.

This is what appears in Google when I search for “kitchen designer sydney”:


If you need someone to help you rank in the first page of google, I highly recommend Marius.

Are you set up to passively discover link building opportunities?

For non local businesses, I would recommend you to subscribe to keywords in Google Alerts to receive emails whenever Google indexes a new page that contains the specified keyword. I use it for example to track who speaks about taskarmy.

For local businesses I would recommend you to find blogs in your niche (including the blogs of your competitors) and subscribe to their RSS (I use Google Reader for that). Every day, I review the new blog posts, and if there is something interesting I add to the article, I leave a comment, including my website URL when the form permits it. This will help a bit with SEO, but although with traffic.

Finally, thanks to Google Alerts you can discover new blogs where you can comment but also and more importantly guest-blog. Guest blogging is the practice of offering a blog post to a blogger in exchange for a backlink to your website.

Guest-blogging is by far the best link building technique and a good traffic generator too. (Unfortunately it takes time and writing is not for everyone.)


Do you have any web analytics in place?

Google Analytics is free and it provides everything you need but I’d like to mention GetClicky (not free) that provides real time reports. This is what I use on taskarmy.

On the long run, the web analytics will tell you if you are getting results from your SEO effort.

Split test your newsletter form

Once your website starts getting sufficient traffic (about 100 per day), I’d suggest you to do some split-testing to see which call-to-action, which copy works best in converting your visitors into prospects. You can use a tool like Google Website Optimizer but I highly recommend Visual Website Optimizer (unfortunately it is a bit pricey once the trial period has expired: $40/month).


The website Blue Tea has done the hardest already (writing content) but has missed some pretty important steps, which is great because I feel my review was useful to them 🙂

I am planning to review more websites in the coming weeks. Let me know if there is a website I should review.

Apr 11

TaskArmy.com – Pitch Deck for SydStart 2011

This is the slides I have used for my pitch at SydStart 2011, please let me know what you think of the content, thanks!

Thanks to Pollenizer for sharing their universal pitch deck template!

Mar 11

Landing page improvements: a case study

Recently I signed up for a website called FeedbackRoulette.com where you can review other people’s websites and they review yours in exchange.

After doing a few reviews for other guys (especially liked LuckyOrange) I started receiving feedback for TaskArmy, my service marketplace website.

Although all of them liked the idea, they mentioned the busyness of the landing page: “Cramming too much on the landing page.”, “there is too much information thrown at you all at once”.

What are the goals of the TaskArmy landing page?

When TaskArmy started, I wanted freelancers to list their services more than anything else. Without valuable services and talented freelancers, there is no point bringing potential clients on the website.

Nowadays, I want clients to interact with TaskArmy more than before. And more importantly, I want them to buy existing services as opposed to requesting a job (which has a longer time-to-completion cycle).

Improving the landing page

This is what the landing page was at the time:



I am glad I asked for feedback because I didn’t realize it was so busy.

So I asked myself: “What is not essential on this landing page?”.

Maybe the Twitter/Rss/Facebook buttons could be removed, as well as the lower part of the sidebar.

Then I took a different approach, what would be essential on my landing page?

1. What is TaskArmy.com (tagline, screenshot?)

2. Credibility factors (testimonials, terms of conditions, …)

3. Why use TaskArmy.com?

4. Call to action

5. Some incentives to gather email addresses

6. Least distractions possible

Implementation of the essentials

This is the new version of the landing page:


1. What is TaskArmy.com (tagline, screenshot?)

I kept the copy as it is because I think it describes well what TaskArmy.com does:


I added some whitespace around this text though to make it more visible.


2. Credibility factors (testimonials, terms of conditions, …)

I added some genuine testimonials from clients on the right side of the popular services box. As you discover the popular services, you will stumble across the testimonials.


The biggest credibility factor in my opinion is the use of the “Facebook like” button that shows that 4000 people have recommended TaskArmy:


3. Why use TaskArmy.com?

This one wasn’t present in the previous version of the landing page and I had to come up with the most important points that make TaskArmy.com a good choice.

Today, I feel the main benefits of TaskArmy is that it is easy to use, safe to use and remove a lot of choices for your benefit (the price you will pay a service is decided for you and you don’t have to pick a candidate in a long list of job applicants).


4. Calls to action

What are the most important calls to action on TaskArmy? I could have pick any of the following list:

  • Register for free (neutral, you neither a freelancer or a buyer))
  • Post a service (for freelancers only)
  • Request a service (for buyers only)
  • Browse existing services (for buyers only)
  • Browse offered jobs (for freelancers only)
  • Search for a service (for buyers only)
  • Click on a category (for buyers only)

I decided to make the landing page speak to only one side of my audience: the buyers. The reasoning behind this is that TaskArmy already has a great range of services and now more clients is more important than more freelancers.

I went for “Browse existing services” and “Request a service” instead of letting the user pick a category or search directly from the landing page. (Note for self: this is a decision that I should probably split-test in the next weeks.)

I chose to put the “Browse existing services” button first because it doesn’t require any registration and I prefer people to buy an existing service rather than having to post a job and wait for freelancers to apply.

I moved the calls to action to a more central position in this iteration too:


I have also enhanced the Register/Login link in the top navigation to turn it into a secondary call to action:


5. Some incentives to gather email addresses

This is something that is still lacking the new landing page and I should do something about it.

6. Least distractions possible

I have removed most of the elements of the sidebar and the “latest services” and “latest jobs” boxes.

I hope this article gave you some ideas of what to improve of your landing pages.

Nov 10

Today’s learning: Strip your registration page to the essential

I read a lot of articles each day, most of them related to entrepreneurship and tech startups. Recently on Hacker News, someone mentioned that instead of reading that much, I should try to write about the articles I read. I’d read less but I’d retain more.

So I asked myself today, what have I learned from what I read today that would be worth sharing? Well, turns out, it is not an article per se. One of the articles was pointing to HipChat, a Campire competitor. Looking at their website, I ended up on the Sign Up page and the way they designed their page reminded me of this simple rule: when you want your user to do something specific, do not distract him.

The HipChat registration page

If you compare the HipChat Sign Up page with any other page, you will notice that there are much less links:


So how can I apply this to TaskArmy? This is the current TaskArmy sign up page:


I could remove the links on the top, remove the sidebar, center the forms and change the headline “You are awesome” which sounds pretty lame now that I think about it.

Let’s do it! It is now 10:14, out of curiosity, how long will it take me to have a new version of this page?

Step 1: Create a new bare layout based on existing one [4min]


Step 2: Center the content [3min]


I just need to add some simple CSS:

.center-column /* center forms */

  .center-column h1 /* center title inside forms box */
  .center-column .log-in .column /* widen columns */

Last step: Change crappy copy [5min]

Which title would help conversions better? This is a perfect candidate for A/B testing. I am currently running other experiments so I will split-test this a bit later. Anyway, I went for the “Welcome to the TaskArmy community.” variation out of a gut feeling. It is neutral and still makes you feel you are part of something.

Exercise: Could you come up with other suggestions? Please post them in the comments.



Done. Experiment ready and deployed in 12 minutes.

image_thumb9What do you think? Will this new version of the registration page convert better? Do you see improvements I could add? (Should I add testimonials for example?)

EDIT: Based on Alistair’s comment, I have changed how I show the facebook and google login feature:

Oct 10

Is it still possible to be a successful developer on Facebook?

Recently InsideSocialGames published the article “the future looks bright for small developers on facebook” where it analyses the growth of the top small developers on Facebook.

Although the following graph summarizes the article pretty well, it is interesting to read the article to understand how the applications have been filtered:

I believe that it is way harder to be successful today than it was a year or two ago and it is a conscious effort from Facebook to make it so.

How was Facebook using the application development ecosystem a year or two ago? Facebook wanted to expand.


Country by country, month by month, you could follow the impressive expansion of Facebook. As a developer, you could follow the adoption rates in each country and target the last trending country. I entered the Facebook market when French people started using Facebook and then I targeted the Spanish-speaking market when countries like Chile and Argentina started using Facebook six months after the French population.

Facebook wanted to grow and was giving the developers the tools to reach new users. The notifications system and wall posting were the most viral channels in the developer toolkit.

User retention

Today, Facebook has a different strategy and has adapted its API accordingly. Facebook wants user retention.

Facebook gives you tools to reactivate the users of your application but makes it harder for you as a developer to reach new users. If you are a Facebook user who don’t play games, you won’t see these wall posts about the lost black sheep anymore.

Facebook made it harder for developers to spam their users. (that it is a good or a bad thing is not the point of this article)

Higher expectations of quality

Another factor that makes it harder for a new entrant to be successful on Facebook is that the quality of the top applications on Facebook has increased in the last year which has changed the expectations of the average Facebook user.

If you are a solo developer trying to promote your little game, you need to put more effort into polishing the perceived quality of your application because the competition is so much stronger.


You will always hear success stories of new applications having an exponential growth on Facebook. What the stories don’t tell you is that most of them are backed up with paid traffic. Zynga has acknowledged the fact they were spending several millions of dollars per month to promote their games.

If you are still willing to give Facebook a try as a developer, here are a few parting tips:

– target a growing market if possible. Brazil hasn’t fully adopted Facebook yet (they are still on Orkut), there is a huge opportunity there.

– develop a game: this is the easiest way to be successful on Facebook

– emailing is still the most effective way to contact your users.

Good luck!

Aug 10

Best practices on how to run a Facebook page

I would like to share with you two Facebook pages that I find fabulous and that are good examples of how to grow a loyal following in a Facebook page without the budget of RedBull or Starbucks.

Case study 1: Lingopal

The first is the Facebook page of Lingopal, an iphone travel app. The application gives you a list of well selected sentences translated in the language of your choice. You can find the classic “Hello”, “How are you?” but you also have some very funny sentences to use for flirting. I personally love the “I am a dolphin trainer” in the French version of the app 🙂

Lingopal - iPhone travel app

Anyway, the people running this iphone application are definitely expressing their humour through the application and the Facebook page and I love it 🙂

So why is the Facebook page so special?

1. Welcome page. When you first open the Facebook page, you are greeted with a funny info, a well chosen picture and you are encouraged to like the page:


2. Product page. The Facebook page helps you discover their products straight from inside the page, rather than having to go to the website:


3. Interesting regular posts. But the best part of the Facebook page are the daily diversions!

Everyday or so, they post a funny / witty / interesting expression of a different language, together with a well picked picture.

Daily diversion from Lingopal

Why is it a perfect example of how to run a Facebook page? Because they have found a theme that allows them to post regularly, that is related to their products, that is not spammy, that is viral and engaging, and the picture makes it more visible in the Facebook stream. All the best practices combined in one post.

4. Interaction with a personality. The Facebook page is not only about pushing info to your audience, even as interesting as the one Lingopal manages to publish, it is also about engaging and interacting with your audience, and again Lingopal does that well. This is the thread of comments of the daily diversion shown above:

Comments on daily diversion

As I was writing this paragraph, I received a notification from Facebook telling me Lingopal had left a comment in a discussion I participated and it definitely proves my point of an interaction with a personality:


Although the page is still quite recent, I can definitely see it getting traction in the next weeks because it has all the components for success without overdoing it. Too often I see Facebook pages with thousands of applications (polls, discussions, top5, quizzes, …) that nobody uses. Just focus on one thing and do it well and your page will become remarkable.

Case study 2 – Not pixel perfect yet

5. Give away (some of) your services for free. On July 20th, a group of designers from Czech Republic posted an offer. They will review the design and usability of your website and publish their comments to their Facebook page. The announcement alone received over 8000 visits.

You can check out the Facebook page of “Not pixel perfect yet” to read the different reviews they have already posted.

6. Increase your posts quality score. I guess that there is no need for me to explain why this is a great idea to get some visibility as design freelancers but I would like to show you a trick they are using that could change the way you use your own Facebook page:


Because they post their review in the comments section of a post, the post ends up having several likes and comments. To determine whether a Facebook page update should appear in the news feed of its fans, Facebook looks at the number of comments and likes of the posts (among other criteria). By posting the feedback in the comments, NPPY gives a kickstart to its posts’ quality score and increases the likelihood to be visible in the news feed of its fans. This trick should be used with moderation…

7. Have a clearly defined audience. There are certain things in the NPPY page that are not perfect though. The most obvious one is that they mix English speaking audience and Czech audience. It means that when they post in English, they create noise for their Czech audience, and when they post an Czech post, they create noise for their English speaking audience. Try to avoid this in your own Facebook page by having a clearly define audience.

Maybe NPPY should decide to go 100% English or 100% Czech, or to create two separate pages (probably not a good idea)

Parting words

This year is the year of the Facebook page. Every business wants one. Although Facebook pages are still quite a recent addition to the marketing / social media toolbox we begin to see some best practices emerging. What best practices have I not mentioned in this article? Please share them in the comments for everyone’s benefit.

UPDATE: Just discovered an interesting article about 40 highly effective Facebook pages. Check it out!

Aug 10

How to develop live search textbox in Ruby on Rails

Ruby on Rails doesn’t stop to amaze me. This article will show you how I got live search working on my freelance marketplace TaskArmy (if you enter ‘wordpress’ in the big textbox, you should see the search results appear automatically) in 20 minutes.

The View (tasks/index.html.erb)
<form id="live-search-form" method="get" action="<%= search_path %>">
  <input id="big-search-box" name="q" type="text"/>

<div id="live-search-results"></div>
The Javascript code (application.js)
$("#big-search-box").bind("keyup", function() {

  $("#big-search-box").addClass("loading"); // show the spinner var form = $("#live-search-form"); // grab the form wrapping the search bar.
  var url = "/tasks/live_search"; // live_search action.  
var formData = form.serialize(); // grab the data in the form  
$.get(url, formData, function(html) { // perform an AJAX get
    $("#big-search-box").removeClass("loading"); // hide the spinner
    $("#live-search-results").html(html); // replace the "results" div with the results

I am planning to improve this code to not do a search on every keystroke, but maybe allow a 1 second delay before the next search.

The controller code (tasks_controller.rb)
def live_search

@tasks = Task.find_latest params[:q]
render :layout => false end

The query q of the user is contained in the params variable that I pass to the search function.

The LiveSearch view (live_search.html.erb)
<%= render :partial => "tasks/list", :object => @tasks %>

Here I am simply reusing the partial view (user control in Asp.net speak) that I use in different places in the website.

And that’s it! Isn’t it amazing? Almost no plumbing at all (except for the jQuery bit).