Many Niches

Jack of All Trades, Master of Some

2010 Personal Predictions

January 2nd, 2010 by Brandon Watson

In an effort to save a lot of pain and suffering for those people who don’t want to read an incredibly long blog post, I have a nice little summary table.  The predictions run the gamut of my personal and professional interests, so they may not be 100% interesting to all people.

Read the rest of this entry »

Posted in Fun Stuff | View Comments

The Hanselman Effect

October 22nd, 2009 by Brandon Watson
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ScottHanselman
{
    public class HanselmanEffect
    {
        public int twitterClicks {get; set;}

        public HanselmanEffect(int minutesSinceTweet)
        {
            twitterClicks = 50;

            if (minutesSinceTweet >= 10)
            {
                minutesSinceTweet = 10;
            }

            Console.WriteLine("You should have {0} clicks",
                _(twitterClicks*minutesSinceTweet));

        }
    }
}

 

For the nerds out there. :)   Yes, there should be some form of degradation on this function, but you get the idea.

Posted in Developers | View Comments

Compete Where Your Strengths Are

January 27th, 2009 by Brandon Watson

One of my favorite sites is Hacker News.  This is mostly because I discover many new blogs and interesting postings about a variety of nerd topics.  I was reading a post titled My Startup Manifesto, and loved one of the pieces of it.  The author was laying out his framework for how he wanted to compete in the marketplace.

One of my tenets has always been to go where the competition either isn’t intense, or is not flooded with talent.  This is one of the main reasons why I left the possibility of working in a hedge fund in 2005/6.  There’s just too many super smart people there trying to manufacture returns, and doing many of the same things.  My thesis was that it was bound to come to an end, and returns would revert to the mean, or even below.  We are now seeing that prove itself out.

This was also one of the reasons why I started IMSafer. The parental control space had seen no new investment for years.  Further, IQ tends to follow money, and no money had been made in parental controls.  We showed how you could build something new, addressing an existing problem in a new way, and have a successful exit.

The one paragraph that I wanted to grab from this manifesto was:

Compete Where Your Strengths Are

Figure out what your strengths are relative to your peers, and compete in that area. Too many people around the world can set up a LAMP stack and program in HTML/CSS/JS/PHP/Python/Ruby, so try to compete in an another area, where you have a competitive advantage. It’s okay to use the mentioned technologies, but if all it takes to duplicate your product is knowledge of easy-access technologies, you’re competing with millions of people, and your chances drop accordingly.

There’s a couple of pieces in that paragraph that are interesting.  I have read many postings recently saying that your best bet is to learn new languages all the time so that you can stand out ahead of your peers, as if knowing a new language is what matters in solving a problem efficiently.  The argument made is that if everyone else knows PHP, you can’t compete.  Code in PHP becomes a commodity.  Bullshit.  That’s like saying because I can write a sentence in English, Hemmingway had better watch out.

Language proficiency does not solve for algorithm design and code elegance.  There are going to be projects for which churning out commodity code is going to get the job done.  Let’s call that advertising copy editing.  A far larger percentage of the population can do that, and do it with sufficient skill to get paid to do it.  Writing the great American novel, on the other hand, is a far harder endeavor.

The core fault with much of the projects passing for “startups” these days is that there is nothing proprietary about them.  All too often we see these “me too” projects.  You all know them when you see them.  Somehow we have convinced ourselves that being late to the party and looking like everyone else is going to get us the girl.  Here’s a hint – she’s already left with someone who looked like you.

Compete where you are different.  A great example?  I love Balsamiq.  Love it!  Talk about finding an open space in the market and delivering high value product.  Peldi has nailed it, and I really want to see him have continued success.  He’s using the same list of tech that could be considered commodity, but he’s delivering a user experience that’s difficult to replicate, and, more importantly, he’s solving a problem no one else had solved in a way that made sense for the market he is in.

Many entrepreneurs I talk to these days have great ideas, but they are derivative.  Either that, or they are too easy to copy.  Twitter is dead simple, but they also have a huge lead.  Copying them won’t get it done.  There’s no shortage of discussions about FriendFeed versus Twitter, but the reality is that what those services ultimately deliver are different, which is why FriedFeed will continue to grow.  It’s not a Twitter clone – though much of FriendFeed’s traffic pulls from Twitter use.

Be different.  Be defendable.  Be determined.

Posted in Entrepreneurs | View Comments

FriendFeed Helping Twitter?

January 22nd, 2009 by Brandon Watson

A few weeks back, I wanted to pick up C#.  I have been hacking away in Python for a couple years, but now that I am in the Developer Platform Marketing division at Microsoft, I really felt it was my obligation to pick up some C# skillz.

The first thing I went and wrote was a small app that utilizes the FriendFeed API.  It polls the service for their public timeline.  It then iterates through each entry in that list and gets the last 20 posts (I think) for each user for the entries in the public timeline.  Within the code, I added the following:

dictRegExStrings.Add(“Twitter”, “.com/(.+)”);
dictRegExStrings.Add(“Digg”, “.com/users/(.+)”);
dictRegExStrings.Add(“delicious”, “.com/(.+)”);
dictRegExStrings.Add(“Last.fm”, “.fm/user/(.+)/”);
dictRegExStrings.Add(“FriendFeed”, “.com/(.+)”);

What that allowed me to do was to take the service name and then use my list of RegExes to pull the user name for those services (in case I wanted to go ping their APIs or do other such things, like recreate a social graph…).  I have about 10 of them that I wanted to track specifcally, and I list the ones above to show how I was going about doing my matches against the FriendFeed object.  I iterate through the public feed fetches, as seen in this code snippet:

FriendFeedClient ffClient = new FriendFeedClient();

ServiceNames = new List<string>();
for (int i = 0; i < length; i++)
{
    pubFeed = ffClient.FetchPublicFeed();

I do my tabulating, and move on to the next public feed fetch.  I was happy that I got the code running, and how easy the FriendFeed guys have made it to use their service in this way.  In order to be a nice net citizen, I put a sleep in my for loop.  In any event, here’s the interesting bit: when I first wrote the code I started dumping data to a text file.  The last one I dumped before today was:

11/27/08 1:00AM
Twitter:        10433   23.84 %
Delicious:      681     1.56 %
Last.FM:        465     1.06 %
Digg:           3933    8.99 %
FriendFeed:     3157    7.21 %
Facebook:       703     1.61 %
YouTube:        580     1.33 %
Disqus:         33      0.08 %
Tumblr:         1599    3.65 %
StumbleUpon:    433     0.99 %
Flickr:         762     1.74 %
Blogs:          13273   30.32 %
Other:          7718    17.63 %

Before today, it was merely a novelty for me.  I actually ran the code again on Monday, and had seen that the Twitter traffic had trended up to 40%.  However, this week, it was announced that FriedFeed had implemented a feature allowing their users to import their Twitter friends.  It was postulated by some that this would have the impact of an increase in traffic/usage for FriendFeed.  Others went so far to say that the announcement by Twitter to up their rate limits on APIs was a shot at FriendFeed.

Since I had the data just sitting there on my computer, I decided to do another run just to see what was going on.  I ran it a couple of times.  Once with five iterations, once with 10, and something like 300 iterations.  Here are those results:

01/22/09 12:00PM
Twitter:        93121   52.45 %
Delicious:      9431    5.31 %
Last.FM:        1302    0.73 %
Digg:           9200    5.18 %
FriendFeed:     13743   7.74 %
Facebook:       4165    2.35 %
YouTube:        1337    0.75 %
Disqus:         335     0.19 %
Tumblr:         2645    1.49 %
StumbleUpon:    1827    1.03 %
Flickr:         1858    1.05 %
Blogs:          19425   10.94 %
Other:          19169   10.80 %

Look at the percentages for FriendFeed and Twitter.  Quite a dramatic difference.  More importantly is that the posts identified as FriendFeed have stayed flat, but Twitter is zooming.  Whether this translates out to people viewing Twitter through FriendFeed has yet to be seen, but the Twitter usage is way up.

Since I’ve got the code, I will continue to track this for a while.  In fact, I think I am going to create and Azure app that has a worker role that just pings FriendFeed from time to time and track this data over time, and publish the date for everyone to see.  That’ll be my next code project.

Posted in N00b Notes | View Comments

 
© 2009 Many Niches Powered by Wordpress