May 16, 2015

Lately, I’ve been noticing an increasing trend in new apps to implement Guest Logic and Introductory Sections. To be clear, I’m referring to the type of interface in which a website’s home page is an introductory section that shows previews of the site itself and explains its usage to the users.

Furthermore, they make it clear to visitors that they are ‘Guests’ unless they sign in. However, they will offer guests the ability to continue into the website as ‘Guests’, with limited functionality.

I’m generally against this type of interface for the following reasons:

###1. Guest Logic Mucks Up Your Code

‘Guests’ have been around since forever; they’re called ‘users that aren’t signed in’. This means that the software would simply enable certain features to those that were signed in. Life is simple that way.

Having the concept of ‘Guests’ usually trickles into the code, which can make it unnecessarily hard to read and understand. This usually clutters up the logic in your Controllers and Models, or whatever other data structure you use to manage your app.

For example:

if user_is_guest()
  do_something(:some_page, is_guest: true, 'guest guest blah blah...')
elsif user_signed_up()
  do_something(:some_other_page, is_guest: false, registered_user: true)
end

and

def SomeController
  before_each_action: check_guest

  def check_guest
    if user_is_not_signed_in()
      go_to_introduction()
    elsif user_is_guest()
      if guest_permitted_pages.contains(requested_page())
        go_here()
      else
        go_there()
      end
    elsif user_is_signed_up_but_started_off_as_a_guest()
      go_over_here()
    elsif user_made_an_account()
      jackpot()
    end
  end
end

as opposed to

if user_signed_in()
  do_this()
end

and

def SomeController
  before_each_action: check_auth
  
  def check_auth
    if user_is_not_signed_in()
      go_away()
    end
  end
end

###2. Introductory Sections are Pointless

####a) Your App Isn’t Special

Sometimes, people (read: startups) will create these sections because they feel their site so exclusive, it needs to have its own introduction. However, your ‘Next Big Thing’ isn’t special. Startups are a dime a dozen these days, and those who incorporate elitism into their app lose traffic quickly. Successful apps usually have humble beginnings.

####b) Your Visitors Aren’t Stupid

A user interface is like a joke; if you have to explain it, it’s not that good.

Some people think their website is so delicate, users won’t know how to use it. The truth is, most internet surfers weren’t born yesterday. People know how to click on links, and hover over drop-down navigation menus. If you design your site properly, people will understand how it works and will have little difficulty using it. Inline descriptions of features are great, but Introductory Sections can be too disruptive to a user’s browsing session.

####c) This Won’t Get People To Sign Up

Lastly, people will create these sections to coerce their visitors into creating an account on their site.

Unless your website absolutely requires users to have accounts, Introductory Sections will backfire on you. If anything, it’ll drive traffic away as users lose their patience whilst going through pages of ‘introductions’. It’s best to make the contents of your site immediately visible to incoming traffic.

If the user is interested in what s/he sees, they will create an account to gain the additional features, so don’t focus on glamorizing your site, but rather spend time on features that will make users want to revisit your site.

blog comments powered by Disqus