Monday, 20 July 2009

Mapping Out the Real Time Web





(Click to expand the image)

I've knocked up a diagram to explain how I think the Real Time web looks like at a systems level. Hopefully people will find this an interesting way to come up with new ideas.

Data Level

Huge amounts of data are produced from many elements: sensors, platforms, applications, media and sites.

Sensors

This includes data from physical sensors and sensors arrays. In the future we will have GPS location tracked in real time, with heart rate, altitude, tilt, speed, acceleration and all other variables that we can capture fired out to the web. This opens up the opportunities for new and exciting applications for fitness, socializing, games and business improvement. Sensors also include microphones, cameras and video cameras.

Platform Level


This data can be entered through a variety of platforms including mobile, social networks and browsers.

Application Level


Applications like tweet deck are really taking off now. This could be seen to be included into platforms but applications are more of a subset of the platforms. The applications ride on top of the platforms.

Media Level

Media like video, music, games or pictures now create their own data trail into the real time web. For example, inside games you can retweet your score. Picture tagging and real time music tracking are other examples of media creating a real time data source.

Site Level

This could be included in the platform level but there are specific dedicated sites like twitvid.io (for video) and twitpic.com (for pictures) that are accelerating the data creation (among other functions).

Filtering Level

We now have a huge amount of data to process. There are many ways to filter the data. Including but not limited to rating based, location based, time based and socially based.

Application Level

Applications can filter the data for us. E.g. inside tweetdeck groups can be made to filter by social relevancy, time, or keyword based.

Spam

Spam is massively on the rise inside twitter - new filters must be made to solve this. A very solvable problem.

Location filtering

One of the more exciting filtering methods. Location based filtering is taking off in a big way with a great example being the iphone app foursquare. Real time + location helps us move to an augmented reality.

Syndication


Once the data is filtered, the data is to be driven out to the web. Additional filtering may occur at this point. Syndication can be achieved in various ways.

Platform Level


This is being done at the moment but there are still many links that can be made. E.g. you can link up your twitter account to output facebook feed. The future will be more highly connected feed wise.

Widgets

We see simple widgets that give real time feeds. Twitter widgets are fairly exciting to watch and add a bit of spice to a site.

APIs

Apis are another great way for the data can be syndicated. The main example being the twitter firehose.

Applications


Applications like tweetdeck take the data back in to show to the user. It's a relatively immature space still.

Explicit Search

This is an active search through existing or future data. Good examples are scoopler.com and search.twitter.com

Implicit search

The search method is built into the platform or application layer as a passive filter. E.g. creating a group inside tweetdeck is a specific implicit search.

Push/pull search

Another method to search the real time web is to ask a question and have it answered for you when the answer comes up. Aadvark is a good example of this push type search where the data is generated specifically for the request. Pull search doesn't have to generate any more data, it just searches through the current data.

Monetization


Across the range of levels (data, filtering and syndication) will we see advertising, subscriptions and micropayments models being applied to all sections of the real time web.

Modifiers


The most interesting modifier to me is when the loop is set to be automated. E.g. having your GPS location fired out in real time. Or what one is up to being made public in real time and in an automatic fashion.

Verticals

Another way to cut this market is to be specific in a vertical. In many cases its highly important to do this. Focus can be on news, pictures, video, games or social graph.

Conclusion and Cycle Time

A major point is the cycle time through the system is a measure of the 'real timeness' of the system. The faster the data can be entered and syndicated out to the appropriate sources the more real time the system is. Once the speed goes below a couple of minutes - it becomes real time. One the cycle time goes below a few milliseconds it reaches a new milestone of being below the reaction speed of a human - this is truly real time. Another important point is the reactions from syndication go out to cause new data being created resulting in phenomena like hashtags, RTs and news hype - this is a type of real time feeback effect. As we see this cycle time fall for other systems there are new and interesting phenomena that will follow. E.g. a networking event running with an eye-fi camera setup to twitpic.com or facebook causes an effect on the a networking event. There are hundreds of new opportunities in this area.

Monday, 13 July 2009

Take the test: Are you going to get funding in a recession?




Many startups that have talked to me are looking for funding right now. X% of them are not going to get it - don't be that startup. Take the test and tally how many yeses you get for the questionnaire.

Idea

Solving a real world problem - are you solving a real world problem for a sizable market?

Do you have domain expertise in this market? Could you learn it fast?

Team fit - does your team fit your problem space?

Technology requirements - does your team have the tech requirements to solve the problem?

Can you launch in a couple of months?

Does your company require a sensible amount of capital to get moving?

Does your startup scale well? E.g. can you build a positive network effect as your grow.

Market Characteristics


Large Market - is the real market that you are operating in at least a $bn market?

Growth Market - is your market growing fast?

Sustainable market - is your market a long term market that is here to stay for at least 5 years?

In line with trends - is your business in line with where you think the market is going?

Revenue

Do you have clear monetization strategies that makes 'back of the envelope' sense?

Can you make money within 1 year?

Can you clearly monetize your user base?

Can you cite other analogous companies making money in the space?

Growth

Do you have innovative distribution strategies (i.e. not PR)?

Do you have alternative distribution strategies if your main one fails?

Are people using your product?

Do you have users coming back for more and telling their friends?

Is your growth exploding?

Long term viability

Can you build barriers to entry in your market?

Is it a market you want to spent a significant time in (on a personal level)?

Are there no major legal risks that might take out your startup?

Team

Are you really in this for the long term?

Is this your project that you are willing to do what ever it takes to make it work?

Have you done a startup before?

Have you touched money before?

Do you have strong programmers on the team? Could you recruit strong programmers?

Do you want to build a large company?

Are you willing to relocate?

Execution

Do you have analytics based approach to product decisions?

Do you launch first, ask questions later?

Do you keep improving the product?

Do you dream at night about your startup?

Do you tell everyone you know about your startup?

Are you working 6-7 days a week?

Pitch

Is your deck interesting?

Is your deck 10-15 slides?

Does your deck answer the above questions and prove them out a bit?

Is your deck clear to understand and using the correct business wording?

Is your valuation inside the normal market range for your offering?

Investors

Do you have contact to investors?

Are investors keen on your business?

Do you understand term sheets?

Have you got a professional, decent round lawyer?

Peer group

Do other good entrepreneurs like your startup?

Do your friends like your startup?

Does your granny like your startup?

Are good entrepreneurs willing to introduce you to their investors?

Does the media like your business?

Does the blog/tweet sphere talk about your business?


0-10: Deadpool

11-24: Spend some time asking yourself, how you can change your startup to have more yeses.

25-34: You're going to have to work hard for your funding.

35-44: You should get funding from Tier B investors.

45 - 51: Tier A VC funds will chase you down.

Sunday, 31 May 2009

Mapping Out Your Web Startup





[Click on the image to expand]

Intro

Modeling startups is interesting, especially for entrepreneurs, once you get all the elements of your site down onto a map, you can start seeing the interconnections, new opportunities, strategies and optimizations. I recommend doing this for your site on a large whiteboard.

Building on Dave McLure's article from almost 1 year ago, I have gone ahead and added in an extended viral engine view, more revenue options, retention methods and customer acquisition strategies. Thanks to Immad Akhund my co founder at Heyzap.com for adding in his insights into the model and James Smith.

The Model

The model doesn't pretend to be the only way to look at the system. Depending on your definitions and view point, boundaries can move as can the interconnections. Furthermore, the elements in the model are not a complete list. I'm sure there are better ways to look at this system. It's a 2D view on a complex interlinked system.

Focus

An important point to note is that there are many options present that you may select within each section of the model. E.g. an SEO strategy will just not work for certain keyword areas that you may be trying to win or SEM may not have a positive ROI for your kind of site. Each strategy has a time and a place. Start with a few and get them right. Depending on your product, you should focus your effort on different areas.

Acquisition Engine

You have to get users into your site. These are the classic methods. Many different methods here and channels to explore. Bear in mind what methods are efficient use of your resources, you can't and shouldn't pick them all. You will also need a specific seeding strategy for when you launch, which I should go over in a future post.

Core Product

The users have to interact with something. This could be focused around a website, app (or widget) or infrastructure play. This could also be a combination of these elements. This core product can be distributed into the acquisition, viral and revenue engine so that the boundaries become very blurry.

Viral Engine

You want to greatly accelerate the user acquisition process. You need a viral engine. I have split this into Method and Channels. Methods constitute specific driving forces behind the viral transfer. Channels are the specific channel by which the method occurs. Not all methods and channels are compatible - bear that in mind. The are specific motivations and corresponding incentivizations that lay behind the methods, which I won't go into now. This is not an exhaustive list.

Retention Methods

I have kept this section brief. Once you have users coming into your system you want them to keep coming back.

Revenue Engine

There are two main groups inside here. Trade Methods and Trade Objects. Trade Methods are the method by which the trade object is traded. The trade object is the actual value representation your are trading. E.g. Amazon EC2 trade method is the utility model and they trade bandwidth/storage, ebay is a commission basis (paypal) and a market place which trades mostly real goods (some virtual) but it also has a subscription model upgrade for pro accounts. Wikipedia has its donations. Compete has its freemium to access data but they also license data, pogo.com has its subscriptions to access content, google adwords/adsense is kind of a utility model. Oracle licenses. You can stack combinations of monetization strategies.

Funnels

Each area has it own funnel by which users fall out along the specific processes they have to go through. E.g. a user is on the point of buying something on Amazon - they have to go through 5 screens to get to the end and there is loss of users during this process. Every funnel section has its own specific complex mechanics and related game theory. Optimize the funnels that matter.

Interconnections

In a way, everything is interconnected. The special extra connections to get a mention are the fact that the viral engine can affect the retention, also the viral engine affects the revenue engine is certain products. The retention model also affects the revenue engine.

Things left off the map

You also have a cost engine to go with this. Don't forget to model this as it is affected by the revenue engine, acquisition engine, retention methods and sometimes even the viral engine.

Summary

Remember, this is only a model and a view of the situation. This should help you navigate your product structure and come up with new strategies and ideas. Good luck and leave some comments so I can improve the model for all the entrepreneurs out there.

Adventures of Spock: Rebuilding Vulcan

Warning: there was no actual point in this blog post. It just accidentally happened on weekend afternoon...


"Vulcan has been destroyed, we must rebuild it."




"MMM - I hope this is logical"




"Forget logic Spock, sometimes you have to go with your heart"




"Ok, quick let's go - we have to rebuild Vulcan!"




"Where is Sulu, when you need him.....position the ship..."




"Arrgh somethings not working...."




"Something doesn't sound right with the engine...."


"Something is broken in the engine cooling bay"




"Scotty, we have a problem with the engine cooling"




"We're on full power down here! She canni take any mooooorrrrre"




"I need to think fast, I need a solution!"




"Hmm, this should work....."




"Yes! We've fixed it!"



"Powering up transporters!"




"I must keep away from the red zones"




"Ok ready, to transport to vulcan"




"Powering up.."




"Energize"




"zzzzzzzzzzaalkhdlkjflkjsdflkjsdgklhg "




"Arrgh, vulcannibals have ravaged our once pleasant land."




"Take that, you loquacious zealot."




"And say down, you little homie."




"And I here by plant the first tree of vulcan"




"Live long and prosper. Our job is done here."




"5 years later on Vulcan"

Saturday, 24 January 2009

Windows Vista, ActionScript 3 and Flash 10 Debugging – how to output a trace.

In order to debug a ActionScript 3 program in Flash CS4, when you are working with your .swf inside a webpage rather than inside Flash CS4 you need to output trace and errors messsages to a logfile. This is not included in Flash CS4 meaning that if you are trying to make anything more complex or more integrated into a webpage you are programming in the dark.

At the time – I couldn’t find any Vista and Flash 10 specific documentation/blogs posts on this, hence the write up.

1. Create mm.cfg file with the following inside the file:

“ErrorReportingEnable=1 TraceOutputFileEnable=1 TraceOutputFileName=JudeGomila-PC:Users:Jude Gomila:Desktop:flashLog.txt MaxWarnings=50”

2. Replace “JudeGomila-PC” with your “Computer name”. Replace ‘Jude Gomila” with your Vista “Username”

Don’t include the quotes.

3. Save the file into c:\users\YOURUSERNAMEHERE

4. Right click on Computer (what used to be ‘my computer) in explorer.

5. Goto to properties, then “Advanced System Settings”

6. Click on “environmental variables”

7. Add a new variable to your user variables. Variable = HOMEDRIVE, value = c:

8. Add another new variable to your user variable Variable = HOMEPATH, value = %USERPROFILE%

9. For step 8 – remember to leave in the “%” symbols.

10. Click ‘ok’, the click ‘ok’

11. Run your .swf file from Adobe flash CS4 or whatever your using

12. Now if you have the latest flash version 10. Goto the directory C:\Users\YOURUSERNAME\AppData\Roaming\Macromedia\Flash Player\Logs

13. You should now find the log file in this directory called flashlog.txt

14. Restart you firefox.

15. Now output this flashlog.txt to a tracing program. Your ready to go.

For Mac users, Windows XP, Linux see the following links:

http://www.digitalflipbook.com/archives/2005/07/trace_from_the.php
http://broadcast.artificialcolors.com/index.php?m=20040401
http://livedocs.adobe.com/flex/15/flex_docs_en/wwhelp/wwhimpl/common/html/wwhelp.htm?context=Flex_Documentation&file=00000794.htm

Sunday, 28 September 2008

Wobbly Webpages and the Rise of 3rd Party Plug and Play


So beginning with this idea.

And this one!

As you can see in the flash animation in the above links. Sites are just more fun if objects inside them can start interacting with other parts of the site. It's clear that this is how some web pages should be. I want my webpages to be wobbly.


Wobble My Site


From a user perspective, I want to drag and drop stuff around, popping components into place. I want to delete components that I don't like and I want the site to remember my settings. Facebook is doing this slightly with their new version but I think we are just scratching the surface here. I want to be able to make elements of the site wobble, interact, bounce and act like objects in reality. I want new feature releases to be optional for me. I want the entire site widgetized. I want to play with the site and interact with it in a much deeper level in a very visual and 'mouse on' way.


I want to have consistant behaviour of my widget components in their different form factors between my browser, operating system and phone. I want my browser to be invisible. I want to have clear channels of content and functionality.


For example, I'm searching and buying plane tickets. I want to be able to make a 'plane ticket look up function by dragging a KAYAK search widget to next to a seatguru.com widget next to a ticket payment widget, my 'check in' widget and my google calendar and reminder system. I want these to be able to hook these together by dragging them next to each other and setting up this process.


Another example, I want to search for a cool movie, download the torrent and rate the film. So I want an Apple trailers widget and IMDB review connected to my torrent lookup on piratebay.com connected to my torrent downloader to my player back to IMDB. Without copy and paste being used or moving across different tabs in a browser. Things should be prefilled in.


I want all functions and all content to be able to be appropriately cross connected.


Share the Wobble

I want my friends to play with some parts of my site experience. Leaving bombs, actions and surprises on sites that I visit. I want my best friends to do fun things to my sites and leave secrets for me. I want to see how friends perform overall processes and learn best practices. I want them to throw a wobbly and for me to be in the middle of it.

3rd Party Plug and Play - Application Level

This is happening already. Processes and actions that are common among many sites are being stripped out and replaced by highly specialised and better widgets.

Comment system - Disqus, JS Kit
Login system - Clickpass
Feedback system - Getstatisfaction
Video Content - Youtube
Music Content - last.fm
Games Content- heyzap.com
News Content - daylife.com
etc

We have a way to go before all functions and content streams are stripped out before we see the rise of the widget mashups and widget platforms. It makes sense for startups to try to compete on a core competancy and focus.

3rd Party Plug and Play - Cloud computing

Hosting, database, dev UI - Heroku
Storage - Amazon EC2
Data portability - Gnip
etc



Conclusion

Imagine, we have everything widgetized, my social graph moves where I go, I can visually make widget mashups to construct new functions and I can see how my friends functionally use the their widgets. I can throw parts of a site around and poke people in new visual ways by causing their google search bar to go bright green - only because they have allowed me to though. I can skin all sites in my theme. My browser and sites have merged. My operating system has disappeared. Widgets have become both so small that even the delete function is a widget but also large 6ft meta widgets (widget mashups) roam the net performing amazing functions that once made me cut and paste and use something called tabs. Bye bye destination site.




Wednesday, 23 July 2008

Godaddyrefund.me

Godaddy's Landrush Screw Up

So I woke up at 7:30AM to start bidding @ 8AM on .ME domains like everyone else did when the public domain land rush opened last week.

You can imagine I had a list of verbs, unusual urls and cool .me ending words and hoped for the 1000x returns that I wanted to make on the URLS.

So this is what happened:

8AM - I'm ready to start buying. The website is acting real slooooooowwwww.

It takes 45 mins of cart loading time to get my first batch through!!!! It was so slow it was unbelievable. During this time URLs were going in and out of 'unavailable' status as if godaddy had no idea as to what was going on.

8:45AM woah my first batch had gone through of premium URLs. Confirmations come through. Money removed from my bank account.

8:55 AM I got another batch through and confirmations come through to my email.

I continue to do this until around 10AM and I had topped my budget.

Later that day I get emails coming through saying that the URLs had been taken. All URLs had been rejected. How sad. Luckily I had pooled resources with a friend and we managed to get 1 premium together as a team.

So techcrunch then do their post on the matter and godaddy sent out an email saying we're all going to get a refund within 24 - 48 hours plus 5 - 7 days bank processing time. Jokers.

So now some of the refunds have come through. Luckily for me I made some money off the currency move in the mean time between spend in UKP to USD and refund in USD to UKP - it was minimal though.

Godaddy's Prebid Screw Up

So I bid on some domains to get into the private bidding process earlier this year. A similar experience was faced but everyone kept quiet to reduce the competition for domains at the time. Godaddy had also gone through the same process of taking our money then having to refund us later. However, some sources believe that godaddy employees had been hot picking off the best URLs for themselves. All the evidence pointed to this.

More interestingly they also issued login IDs for each individual URL auction. So we had tons of Usernames to use. We had to reset the passwords then change our passwords in a 'ballsed up' long winded process. They then, due to complains, sent out a new process where by our bids were consolidated into one login ID. If only they were using clickpass.

Godaddy Bid Mechanics

Unfortunately, because my bids are coming up soon I can't explain how the mechanics of the bidding work fully. From the way the system is setup though. I can tell various pieces of useful information about the bid (e.g. predicted end price, best time to bid, bid strategy, max bid price I should bid, predicted number of bids). It's going to be exciting knowing this information. I am basically hoping to arbitrage between the privateness of the private godaddy auction (imperfect market) (e.g. imperfect buying) vs. the open market of sedo (near perfect market). So thats the theory. If you want to supply capital and be part of this - email me. I'll tell you how it goes later....in the mean time I'm going to relax.me