Sunday, March 13, 2011

Let ideas come to you instead of you actively finding ideas

StartupDigest -  "Members receive a curated email of the best startup events, job opportunities, and educational content in your area." You will want to sign up for mobile news, social news, launch and funding informations for startups.

The Internet Wish List - People post what they want for their own consumption and suggest ideas. These are demands. Instead of finding an idea yourself, it is easier to look for what people want out there.

Some examples from the Internet Wish List:
  • I wish someone would use the foursquare API to build a cab-sharing app to help you split a ride home at the end of the night.
  • I want an app that can group similar tweets so I don’t have to read the same story from 50 different sources.
  • I want an app that can read me emails and blog posts while I drive
  • I want an app for finding babysitters. Location- and subscription-based service of vetted and available sitters.
  • I wish there was an app that helped you find parking in the city.
  • I wish my phone would create an app that blocks all calls except biz calls during work hours.

Start building them today!

Saturday, March 12, 2011

Marketing - Measure and Test Each Campaign

From the previous section, Spread Transparently Through Social Graph, you should be able to come up with some methods to market your idea.

At the beginning of your site promotion, you want to launch your site as a beta (Ignore the pre-alpha, alpha, etc.). Depends on your situation, you may want to limit your site to certain number of users at the beginning. You can do this by "joining only by invitation". With this smaller subset of audience, you can start testing the usability of your site.

Use the "joining only by invitation" concept and start devising tests to measure each marketing campaign. Before you start implementing the campaigns, you should have the following:

  • expectation of what will happen within a period of time
  • when to declare the method as a failure
  • the type of marketing (see "Marketing Types" below)
  • description of how to implement the campaign specifically
  • the factor that you are measuring (only test one factor at a time)

Marketing Types
  • how to distribute the message to people who do not know the site
  • how to convert visitors to members
  • how to make members to continuously use the site

Use Google Analytics and Google Spreadsheets to track data; you will need these data to make business decisions on whether to improve/continue/discontinue a campaign.

Marketing - Spread Transparently Through Social Graph

The term online marketing may remind you of cost-per-click (CPC), cost-per-impression (CPM), article writing/rewriting/spinning, social bookmarking, or posting on popular sites like ezines, hubpages, squidoo.

We are not talking about those things here.  First thing to know is that
A good idea that brings people value will self-market itself.  If the idea gives no value, no matter how good the marketing campaign is, it will fail.
The best marketing method is by "word-of-mouth". If your idea is good and useful, people will talk about it. In online platforms, the "word-of-mouth" method spreads by the concept of social graph.

You will want to aid the spread of your site transparently. We will take a look at how to maximize the distribution of your site and how to build marketing tools for users to easily spread your site.


Brand Distribution


To increase the chance of others knowing about your site, you will want to build your site in as many viable platforms as possible. For example, Facebook has more than 500 million active users. You may consider writing a Facebook App version for your site.  Similarly Twitter has over 300 million users. Of course, you will want to capture the mobile users as well since they are the ones who "carry your site" everywhere they go.

Here are some popular platforms you may want to leverage:

  • Facebook
  • Twitter
  • Myspace
  • Foursquare
  • Android
  • iPhone/iPad
  • Blackberry

Facebook - You will want to study how wall messages, private messages are shown when a user adds your app or uses your app. You do not want to make your users annoyed by constantly showing your site's messages in their wall posts.

Twitter - Think of this as SMS of the Internet; as a rule of thumb, only spread messages that give values to the users. You do not want your Twitter account to be considered as sending out spam messages.

Android/iPhone - Leverage the GPS and camera in these devices. Say you want to upload a picture for your profile in a site. Traditionally, you will take a picture using a camera, connect the SD card to your desktop, transfer to your hard-drive, and upload to your site. These smart-phones allow you to take a picture and upload to the site instantly. Build these mobile application as tools to aid the site or build them as mainstream sources of your project.

You will want to go through the feature development and diagram visualization phases before implementing these apps.


Marketing Tools/Features


The marketing tools in this section are referring to features that you can build on your site to aid users to spread information.


The following are some ideas as a reference (You will want to modify them):
  • an import contact list function (email, facebook, twitter) after registration
  • Facebook Connect, Google Accounts, OpenID (users hate signing up again and again on so many sites; it will be very convenient for them to be able to login using these accounts)
  • Facebook Comments instead of your own commenting system (users can share comments on Facebook wall posts)
  • Facebook Like
  • settings page for receiving alerts when anyone comments on the user's post (receive friend's update through push notification on smart phones)

What you want to develop is the messages that will be used to communicate with users. The distribution channel through Facebook and your site's import contact list alone may be powerful enough to spawn viral spread.

Using Screwed up Things in Public Area as an example, here are some Facebook messages that can be used as wall posts:
  • There are x number of strange things at Richmond today.
  • There are x number of strange things {around you|in your neighborhood |at you school}
  • Peter saw something strange in Richmond.
  • Peter can't believe his own eyes in Richmond.
  • Peter's curiosity level is raised to 8
  • Ridiculous things that happened around Peter today

To summarize, if there is one thing you need to remember for marketing, always remember the following:
A good idea that brings people value will self-market itself.  If the idea gives no value, no matter how good the marketing campaign is, it will fail.

Friday, March 11, 2011

Location Social Networks With Recommendation Services

Foursquare - recommends locations to users that they should visit based on their past activities, to-do-lists, what's popular at the moment

Bizzy - rate a location by check-outs; local business recommendation engine based on the favorite places of people

Ditto - sharing your intent to do something instead of what you’ve already done (What you plan to do VS Foursquare's what you should be doing)

Google Hotpot - Rate places and add friends to get personalised recommendations whenever you search for places on Google

WHERE - location recommendation based on user's saved mobile location and where they like to go

Hashable - track your relationships by check in with people; exchange business cards, track meetings, calls

Bnter - a way to frame and share your conversations on the internet; by founder of Textsfromlastnight.com

Domo - iPhone app for sharing interests and connecting with people around you for events, meet-ups, parties

Whrrl - social location-based game to get people out into the world trying new things; share recommendations of things to do and places to go, earning "influence points" when you try new things and successfully inspire others to try things

Application Visualization - Express Your Site Through Diagrams

After the feature development phase, you will want to translate the user stories into diagrams of how your site will look like. You do not need to use Photoshop to make appealing mock-ups of the site. The focus should be at how the features will layout (user experience).

For example, in the edit profile page, aside from the navigation, header, and footer, there will be a table with username, address, first name, last name,  email, etc. After you draw out the scratch, you will want to review it with your researches and user stories again; and then revise the diagrams.  

The goal here is not the visual appearance. It is more about the business decisions of what to put and what not to put.  Storing unnecessary information can use up more space in your database, for instance.

Here are some guidelines of how to design the diagrams:
  • draw the sequences of the pages (how a user can navigate through the site)
  • think if the data/item is really necessary in the page (ex. if you do not need to store the home address, do not put it in the profile page)
  • minimize the number of steps/pages that the user needs to navigate in order to use your feature
  • do not put anything anywhere on any pages if it doesn't make any sense or the presentation is awkward; study how other sites do it (use your reference sites from the research phase)
  • label each page (editprofile.html, register.html, homepage.html)

Check the page diagrams at this page for some examples
http://www.symfony-project.org/jobeet/1_4/Doctrine/en/02 
You will want to read this. It has a good example on how to write user stories and draw diagrams. Start reading from "The Project Pitch".

Lastly, although blurry, here is an example of how the layout may look like:



Thursday, March 10, 2011

Feature Development - Defining Features in Terms of User Roles

As a business owner, it is vital to have a common "language" that you can communicate with your developers.  In the feature development phase you will define the features of your site through user stories.

Let's take a look at the following idea.


Screwed up Things in Public Area - By Kenneth

User scenario:

  1. Peter was walking at Robson street.
  2. He saw some naked guy walking on the street.
  3. He sent that message out using his iPhone.
  4. People who were around them and were on this application were alerted.
  5. They went and found this naked guy.


Idea:

Share screwed up things you saw/experienced real time in your location.


Motivation:

  • Real time reporting is a big trend.  Usually, people who are alerted of the news are unable to see the event because it’s passed.  Now with GPS reporting, at least people who are close by can come and see it.
  • People want to share surprising things/events real time with their friends
  • People want to know what kind of things are happening around them - in this case, location.

The example above contains the description of the project, a user scenario, and some reasons why users may use the site.  The example above should be self explanatory.

User stories are defined into user roles.  Each role will be allowed to do different things.  A typical site will have user roles like administrators, visitors, and members.

You will want to define each user feature as specific as possible.  Your developers will translate these user stories into features.  And they will most likely come back to you with questions.  As a business owner, you will need to guide them.  The documents/informations you have collected in the research phase will surely help you with that.

Here are the user stories for the above project.


As a visitor (not yet a member)

I want to submit a story by location.

- location is defined as
  • zip
  • address
  • longitude and latitude
  • GPS

I want to view the most popular stories. (popularity defined as total number of combined votes)
  • total number of yes and no votes over a period of time
  • total number of comments
  • total number of yes votes
  • total number of no votes
I want to view the most popular stories near me.
- "near me" is defined as
  • within x km radius of where I am - gps mobile phones
  • in my city (set in profile page) - PC

I want to view the popularity of any comments.
  • number of thumbs up VS number of thumbs down
  • good solution VS bad solution

I want to view the popularity of any stories.
  • number of votes for yes
  • number of votes for no

I want to register on the site.
  • ask for only user name and email as step 1; send email verification; if clicked, continue to set password and default city

As a member (extends visitor role functionalities)

I want to view the stories that I have submitted.

I want to comment on any stories.

I want to view the posts I have posted a comments on.
  • bookmark when a post is voted or commented on

(optional) I want to view the posts I have voted on.

(optional) I want to view the comments I have voted on.

I want to vote on rather a post is a epic or not.
  • “epic” VS “fail”
  • “You made by day” VS “Not worth mentioning”

I want to change my password.

I forgot my password.

I want to change my profile information.

I want to set my default city.

I want to see my ranking. (Statusphere)
  • points and badges system

(to be expanded later) I want to use the site using my mobile device.

I want to flag a post.


As an administrator

I want to enable/disable a post.

I want to enable/disable a user.

Wednesday, March 9, 2011

Research - Formulating the Idea

After the research phase, you should have the following
  • an idea that you can describe in shorter than 5 sentences (1 sentence is the best; the longer it is, the harder other people or your potential customers can understand)
  • a list of reference sites
  • a list of common features
  • (and/or) a list of unique features you come up of

Let's remind ourselves the 5 phases of the system we use in this blog to create a web project.
  1. research
  2. feature development
  3. application visualization
  4. marketing
  5. monetization

In your research phase, you should have at least some sort of ideas on each of the above. 

Before you dive into the next phase, it is vital to do a mental check on rather your idea would have a clear flaw. Here is a simple checklist (No need to be in detail; Writing out one to two sentences to describe each of the following is more than enough):
  • what your site is about
  • why people will use it
  • how you can market it out
  • how you can monetize on your idea (Main focus should be at how to make the site user-friendly)

To verify if your idea is viable, you can also design a smaller project for a proof-of-concept (POC).  

Here are some sample ideas (a short description of the idea and some user scenarios):


Example 1 - "eBay" For urban gardening

Platform for urban farmers to trade the vegetables/flowers they plant.

Users can
  • exchange goods among each other
  • buy or sell goods
  • request others to plant certain vegetables
  • show case their plants/garden using photos and vegetables
  • hire others to take care of their garden
Categories include
  • vegetables for eating
  • flowers/plants for events/viewing

Example 2 - YouTube Celebrities Instant (YTC)

To watch and share videos from top YouTube stars.

Visitors can do three things:
  • watch videos
  • suggest a celebrity
  • vote on the celebrity and optionally add a reason of why he/she likes the celebrity

Example 3 - Are You a Professional BS-er?

Post a story and label it as real or fake (users cannot see the answer)
People vote on whether they believe it or not
After a week, the answer will be sent via email to the users who voted

Research - How to Generate an Idea

A common misconception is that you have to have an "unique" idea. Have you wondered although they are all supermarkets, Wal-Mart, Superstore, Safeway, Save-on-Food or Costco can coexist?

Idea generation is more about understanding what are the current market demands. If, at a short period of time, there are hundreds of similar ideas (or clones) in a market, most likely, there is a huge demand in this area. For example, after the launch of the location-based social network - Foursquare, Gowalla, Loopt, and many more similar sites also emerge. Most of them are on the blink of massive expansion.

It is easy to disregard an idea since you may think it already "exists". The fact is that it is very hard to generate a completely unique idea. Even if you think you have come up with one, competition is going to come up the next day and make your idea not unique. And if the "unique" idea does not exist in the market, it may also mean that there is no demand to it. The concept here is that if there is a sudden surge of a particular idea, most likely, it's a great idea with potentially huge demand.

Here are some examples:
  • Tablets - iPad, Blackberry playbook, Samsung Galaxy tablet, Motorola Xoom, LG Optimus
  • Location-based Networks - Foursquare, Gowalla, Loopt, Yobongo, Google Latitude, Geomium

Please refer to Research - Generating Ideas and Building Reliable References for how to gather useful idea sources.

Since this blog is about building an online website, we will use the location-based social network as the references.

When you have a few reliable sites, spend sometime to use these sites and really join the community and understand the concepts behind it. A site does not become successful for no reason. Convince yourself that these sites are indeed unlocking a hidden human demand - the desire to connect with others. You will want to check out the article Mass Mingling from Trendwatching.


When you are using these reference sites, try to note the following:
  • the description/slogan of each site
  • why they can co-exist with each other (You will probably find that these sites are very similar, often with just a slight twist.)
  • features of each site and how they name the feature (Naming the feature in a particular way will give you an edge in marketing and bring users enthusiasm)
  • how the site can be improved? 
  • what can be simplified to make it more user friendly
You will want to organize the above into spreadsheets

Here are some suggestions on how to come up with a similar idea:
  • Apply a similar idea in a different demographics/country/language/"subset of audience"
  • Take one successful feature of the reference site and expand it into a specialized idea (Plancast VS Facebook Events)
  • Copy the same site but make it more convenient and more user friendly

Even if you just copy exactly the same idea, it is fine. The important take-away is as long as you are up-to-date with the industry, when a trend just emerges, there is no dominate player in this field yet.

In summary, the steps to generate an idea is as follows
  • keep yourself up-to-date with trends and what's happening in the industry (RSS reader with reliable trending feeds on a smart phone)
  • note down all the sites of your interest
  • pick one area and select a few sites as your reference sites
  • start using these sites as a regular user and try to mingle with the community
  • note all the common features (if all these sites are using these features, chances are you will need these features too)
  • note all the differences in features and the branding/naming of the features (these are why the sites can coexist)
  • convince yourself there is indeed a demand and it is a new emerging trend
Tips: You will want to organize everything in a spreadsheet.

Quote of the day: "Innovate, Improve, Copy or Perish!".


Foursquare 3.0 and Gowalla 3.0 set the next stage for the recommendation industry

Both Foursquare 3.0 and Gowalla 3.0 are just released.  Below are some highlights of the additions/changes.

Foursquare 3.0 - http://foursquare.com/sxsw/
  • Places Recommendation for shop, food, nightlife, coffee
  • Locating merchant deals nearby
  • Partnership with American Express that offers cardholders automatic savings when they swipe their cards at 60 participating merchants in the Austin, Texas area

  • new passport view - lets you know where you last checked in and even reminds you to check-in if it has been a while
  • and action bar - check-in quickly or to refresh the screen
  • can quickly turn on and off sharing with Facebook, Twitter, Foursquare, and Tumblr
  • checking-in with photos and comments is now a one-stop shop
  • push notifications for Android 2.2 and above

It is important to note that the "recommendation" industry is certainty a big one.  Friends' recommendation on where to go, what to eat, what to do on the location social networks keep users motivated and entertained.

Secondly, following Groupon and LivingSocial's big success in 2010, a lot of social networks are now offering location-based deals to users.  Giving a lunch discount for a group of friends checking into a restaurant or planning to go to a restaurant just makes business sense.

Tuesday, March 8, 2011

A Project Begins With A Clearly Defined Idea

The theme of Brian Wong’s site (http://followformation.com/) is as follows:

“followformation is a tool that helps you follow the top people on twitter by city and by interest.”

How do you define city and interest?  Imagine you have a developer you hired. You can tell him to make it as the description says above.  But chances are he/she will deviate from what you wanted him to do.

You can define city as as the city that the twitter members selected in the twitter profile.  But how do you obtain this information?  You can see if twitter let’s you access this information by seeing what the twitter API allows you to do.

API (Application Programming Interface) sounds like a term more for programmers, but as a business owner, you need to know what it is.  API is basically what a site allows you to access.  In this scenario, you will need to check Twitter API and see if it’s possible to get the person’s city information.

http://apiwiki.twitter.com/w/search?q=user%20profile

I searched the term “user profile” in the twitter API, the results are returned by the link above. Here are some of the results:

  • Twitter REST API Method: GET list members Method: GET /:user/:list_id/members Returns the members of the specified list. URL: http://api.twitter.com/1/user/list_id/members.format Formats: xml, json HTTP Method(s): GET Requires … Marcel Molina edited 1 year, 4 months ago
  • Twitter REST API Method: GET list subscribers Method: GET /:user/:list_id/subscribers Returns the subscribers of the specified list. URL: http://api.twitter.com/1/user/list_id/subscribers.format Formats: xml, json HTTP Method(s): GET &nbs… Marcel Molina edited 1 year, 4 months ago
  • Twitter REST API Method: GET list statuses Twitter REST API Method: GET /:user/lists/:list_id/statuses Show tweet timeline for members of the specified list. URL: http://api.twitter.com/1/user/lists/list_id/statuses.format Formats: xml, json, … Marcel Molina edited 1 year, 3 months ago
  • Twitter REST API Method: statuses friends tatuses/friends Returns a user's friends, each with current status inline. They are ordered by the order in which the user followed them, most recently followed first, 100 at a time. (Please note that the result set isn'… Taylor Singletary edited 1 year ago
  • Twitter REST API Method: statuses followers


From the above, I know that I can get list members, subscribers, status, friends, followers of any user’s twitter account using the Twitter API.  As a business owner, that’s, really, all you need to know - knowing what is possible.  If you want to know if you can access city information by Twitter, you can now search for “location”.

How do you define “interest”?  You will need to propose a way to do so.  But a simple search for “category” in the Twitter API will show you the following:


Access the users in a given category of the Twitter suggested user list.


You can now further re-organize the categories as “interests”.  Of course you will need to define these as precise as possible.  Since the end goal of this project is to build a document that anyone can implement the project.

How do you decide what users you want to show for each category (top people)?  You can filter them by city and interest and then rank them in terms of the number of followers, the number of lists.

So far, we have come up with a very clear idea that the developer, or anyone will understand.

Monday, March 7, 2011

Research - Generating Ideas and Building Reliable References

The research phase includes finding a good idea, and researching on what features to build. Generating an idea can sometimes be frustrating.  The concept is simple.  Rather than sitting on the sofa, staring at the ceiling, and trying to innovate ideas, you can find a few reliable sources, keep track of them regularly, and see what is going on in your industry.

Nowadays, with the advent of smart phones, keeping up-to-date with latest information is easy.  If you own an Android phone or an iPhone, I recommend installing the Pulse reader (any other RSS feed readers are fine; ex. Google Reader).

These days, building an online website often includes building on the major mobile platforms as well. For example, Foursquare has a website, iphone app, android app, blackberry app, etc.

For building an online web application,  I recommend adding the following sources to your Pulse reader:

  • lifehacker
  • mashable
  • influx
  • psfk
  • venturebeat
  • gizmodo
  • smashing magazine
  • macworld
  • gigacom
  • pulsememe 
  • springwise
  • engadget
  • techncrunch
  • trendwatching

Trendwatching and Springwise are highly recommended for idea generation.

The mobile phones' push notification will keep you up-to-date instantly with the industry. The Pulse Reader allows you to easily share articles.

It is important to have a few websites that are similar to what your project is about as your reference. If you are building a location based social network. You will want to follow, for example,

  • Foursquare
  • Gowalla
  • Loopt

You will want to sign up for your reference sites and start using these sites as a regular member. Take note of what the community is doing, what kind of features these sites have in common, and why they can co-exist with each other.  Organizing your notes into a spreadsheet (ex. Google Docs) will be helpful.

Designing a Successful Online Project With a System

A "technology business", in this blog's definition, is defined as any Web 2.0 project that involves building an online platform, a website, a mobile application, a facebook/twitter/foursquare application, etc.

This blog will mainly focus on building applications/tools rather than selling a physical product (e-commerce).

The goal of this system is to help you design/build a project from beginning to the end, while getting exposed to all areas of building a "technology business". The end product is a document that has all the steps so any other person can implement the project.

5 steps to building a complete business proposal/project:
  1. research
  2. feature development
  3. application visualization
  4. marketing
  5. monetization
It is often very easy to over-do things and never get anything done.  It is vital to keep the project simple, small, and organized at the beginning.  Using an agile/scrum like approach is handy and keeps things going.

Quote of the day: "Reward success and failure; punish inaction."

The following blog posts will summarize the results for each of the phases above.  Please use the category "project" to follow related posts.