Marcelo Calbucci

Startup Score:

Successes: 0.1+0.5
Failures: 1
In progress: 1

Thursday, November 30, 2006

20 Questions for Startup Success, by Norm Meyrowitz

 

    This is a talk given at University of Washington by Norm Meyrowitz on questions every startup should answer. Norm was president of Macromedia and now he advises tech startups.

 

   Here are the 20 questions (see the presentation for more details).

  1. What problem does this product solve?
  2. How does the product solve that problem?
  3. Who are the end users of the product? Is there a large addressable market of actual users? (Who are you selling to?)
  4. Who is your revenue-supplying customer? Are there enough of these paying cusotmers to make a huge business (i.e., is there a crisp, clear business model?)
  5. Does the product solve a problem that end-users/revenue supplying customers actually have?
  6. Are you sure it is a product and not just a "feature"?
  7. Does your stuff easily fit into the way that people already work? Or, are you relying too much on people changing the way they work because your stuff is so great?
  8. Are you too involved in HOW you are building your product rather than WHAT you are building?
  9. Who are the potential partners? Who are the required partners?
  10. What is the go-to-market strategy?
  11. What is your sustainable competitive advantage?
  12. Do you have a time-to-market/first mover advantage? Are you ahead of the pack and can you stay there? Are you too early?
  13. Can you be number 1 or number 2 in this space? Who is the competition?
  14. Is there a team formed/identified with a record of successful ventures? Have they done something like this before?
  15. Is there a "soul" of the team that knows where this product AND business is going for the next few years?
  16. Is anyone on the team insane? Are the members of the team totally passionate and aligned on this business?
  17. Are there product/technology/operations barriers to success? If yes, can they be overcome?
  18. Are there marketing/sales barriers to success? If yes, can they be overcome?
  19. Are there legal barriers to success? If yes, can they be overcome?
  20. Is there an exit strategy?

 

 

Ending a year-old myth: Cyber Monday doesn't exist

 

    Last year, a stupid marketing ploy created the myth of a thing called "Cyber Monday". TechDirt wrote a couple of facts about this myth.

 

    For those that don't know, the Friday after Thanksgiving is called Black Friday and has been used to describe the big shopping day when the Holiday season begins. Last year, some marketing genius decided to coin the term "Cyber Monday" to create a buzz around the first Monday after Thanksgiving, defining it as the online equivalent of Black Friday.

 

    It annoyed me last year when I saw Maria Bartiromo of CNBC talking about Cyber Monday as if it was a fact. Don't they do any fact check on mainstream media anymore?

 

    Turns out that Cyber Monday is not a top online shopping day at all. More people buy on the Friday before than on the Monday.

 

    CNET News.com has an article as well.

 

    I hope I did my part in helping dismiss this myth.

 

Wednesday, November 29, 2006

Testing 1

Testing 1

    This is a test. :)

The Open Source: the good, the bad, the ugly.

 

    There are those that swear by Open Source and those that swear against it.

 

    Being such a polarizing force, it is hard to get good information if Open Source is bad or good. Add to the mix that most people associate Open Source with big projects like Linux or Apache and you get a pot of confusion.

 

    First of, most Open Source projects are tiny. Tiny as in just one or two developers (go to SourceForge and check for yourself).

 

    Second, the good developers, I mean, the really good ones will not be spending their time in a small library or project, they will go to big high-profile projects like Linux, Firefox and Apache. Which leaves the average or below average developers doing the majority of the Open Source projects.

 

    This week I had to deal with two Open Source issues. A former developer wrote an email server mostly based on two Open Source projects.

 

    Last week I went to test the feature and the first (and simplest) Test case that I wrote didn't work. Ok, do the routine: debug, try, debug, try. Found the issue. The SMTP server had a small bug. Fixed it. Nope, not working still. Investigate a little more. Well, turns out that the Open Source project implemented the original version of the SMTP protocol (circa 1982). Virtually nobody uses this protocol anymore (now we use ESMTP). Then I found a good Open Source version of ESMTP (called NMail), but it was big. It was huge. Basically, I end up implementing my own version taking clues from NMail. The result code is less than 1000 lines and does what we need.

 

    The second piece of Open Source was used to parse attachments from email messages (multipart mime stuff). This works flawlessly, if it wasn't for the stupid way that it was implemented throwing and catching exception all the time to check values syntax (hint: this can slow down performance by 100 times). Then I found a killer bug on that one, it had a humongous memory leak. In technical terms "humongous" means it happens every time the API is called. I found a workaround to fix it.

 

    Now, don't take the wrong way, I go to SourceForge and CodeProject all the time to see how people implement things. It saves me a lot of time with the small but dangerous details. However, when you are using an entire library from Open Source on the hopes that it will do what was advertised... Be prepared, very prepared.

 

   

When naming your blog...

 

    People love to get super creative and name their blog the most bizarre or domain specific phrase possible. That is bad.

 

    I might not be your average reader. I read about 190 blogs every day. I found these blogs because somebody was talking about them, a friend told me about it, or they seem to have similar objectives as mine. In summary, of the 190 blogs that I read I only know personally about 20 of the authors.

 

    Why does it matter? Because most of the blogs I don't even know the author name or his company, or what he does. I think that is bad.

 

    People give funny names like "Greg Corners", or "Ctrl-X", or "Cat & Clam" (all fictitious names, don't know if they really exist). Why? What is your point? To prove that you are clever?

 

    Now comes the worst part: The description. All blogs can have a short description associated with them. This appears under the blog name on most feed readers. These are some gems that you find on the web: "Rants from within", "About everything and anything", "Yada, yada, yada"... Again, why?

 

    Finally, there are the worst offenders of them all. Blogs that have a clever meaningless title, clever meaningless description and the person writing configured their own blog and the author name doesn't show up or appears as "Administrator" or "Team". Triple "why?"

 

 

When naming your blog:

 

  • Choose your name, or your company's name, or a nickname that people will know and remember.
  • Keep it short (2-3 words)
  • Don't keep changing it;

Good blog names:

Bad blog names:

 

 

When writing a description of your blog:

 

  • Write what your blog will be about (this also helps search engines).
  • If context is relevant, add a few words about you;
  • If a company blog, at least, write the company's name and website.

Good descriptions:

    • "The official blog of Sampa Corp."
    • "P-I reporter John Cook explores startups, venture capital..."
    • "Richard MacManus on Next Generation Web and Media"

Bad descriptions:

    • (no description)
    • "Our company, our vision, our passion."
    • "A running commentary of occasionally interesting things"
    • "Confessions of an Old Fogey"

    Finally, don't forget to add at least your first name as the blog author. You are losing opportunities every time somebody thinks you wrote a great post, but they don't know who you are.

 

 

 

Tuesday, November 28, 2006

35 blogs and counting

 

    The Seattle Startups Blogs list continues to grow...

 

     http://sampa.com/seattle-blogs/

 

Ignite Seattle - Dec 7

 

    Brady Forrest is organizing a Geek get together on Dec 7th. Brady and I worked together on MSN Search.

 

    More info: http://igniteseattle.com/

 

 

Monday, November 27, 2006

Is it Hitwise or is it me that is wrong?

 

    I read this Hitwise blog that contains sometimes very interesting search charts and sometimes very dumb ones.

 

    Today's post is about the correlation between "Thanksgiving Recipes" and "Online Dieting". This is the chart for a 18-month period:

 

 

 

    Now, I'm not a statistician, economist or data-trend expert, but I see *no* correlation between "Thanksgiving Recipes" and "Online Dieting". Despite the fact that Hitwise says...

"...The negative correlation between the two subjects appears to be very clear ..."

    Really? I don't see it? Did you notice there is at least a 1-week lag between the peek of "Thanksgiving Recipes" and the valley of "Online Dieting"? I mean, one week is an eternity when you talk about search queries.

 

    For me, there is a clear drop on "online recipes" before Christmas, and a huge spike starting just before New Year's Eve that peeks at the first week of the new year. That is the correlation for me.

 

    Stop making up "facts". And don't even get me started on the "Cyber Monday".

 

 

Sunday, November 26, 2006

Attract, Convert and Retain

 

    You see a lot of Startups talking about technology, innovation, features, mashups and what not. But how many CEOs you see talking about strategies to attract, convert and retain their customers?

 

    The "build-it-and-they-will-come" strategy is a bit flawed on a noisy Web 2.0 world. There are too many people building, and people cannot go everywhere.

 

    Let's assume for now that you've built a product that users want (as opposed to a single feature, or something that doesn't solve any real world problem), how do you attract, convert and retain users?

 

 

Attract

 

    Attracting means getting users to visit your website. The easiest and most expensive way of doing that is through ads. Just allocate $1 million for you Google AdWords campaign and you are guaranteed to attract a couple million visitors. The cheapest way to attract users is through PR or word-of-mouth, both are very effective.

 

    Initially, you want to diversify your strategy to attract visitors to your site. The reason for it is to be able to measure what works and what doesn't. If you only rely in PR, you won't know the effectiveness of other means of attracting customers.

 

    Here is a list of ways to attract visitors to your site:

  1. Invite friends and family (people forget to do that);
  2. Ask them to invite other people;
  3. Find out your most active users, engage them and ask them to blog about your company and invite other people;
  4. Run Ads on Google, Yahoo, MSN and other search engines (tiny budget, don't overspend until you can measure success).
  5. E-mail newsletter. Use every opportunity that you email users to get them to invite other people to sign up.
  6. Press Release -- get the right reporter/blog to write about your company. If you have a site about horses, you probably don't care too much about being listed on TechCrunch.
  7. Direct Mail: This is very expensive, but if you can get the "perfect" mailing list it might be worth it.
  8. TV/Print/Radio ads: The problem with those is that it is hard to measure it. If you cannot see if the campaign was worth it, don't do it.
  9. Now, the holy grail: Make your product viral. Let users invite other users, let visitors easily add their email and their friends email, make users want to share the links of your site. Think YouTube, MSN Messenger, MySpace.

    The success of a marketing campaign to attract users is three-fold: measure it, measure it and measure it.

 

 

Convert

 

    Having visitors converted into users is hard work. The easiest way to convert a visitor is by not having any sign up process (like YouTube, CNN.com). The problem with that is that you won't know who they are.

 

    You can also have a ultra-simple sign up process and get lots of users signing up, but more important than that you want users to use the product. About 10% of Sampa users sign up but never use the product!

 

    Conversion rates is very dependent on your service. If you think you'll get 20% of visitors signing up to try the product you are fataly mistaken. Sampa has an insanely high conversion rate: 8%. When we talk to investors or people "in-the-know", their jaws drop and they immediately think we are bulls**ting them. We are not, we have consistent data tha proves data over the past 6 months.

 

    You should be realist and expect a conversion rate between 1-5%. Anything above that will be bonus.

 

    Here is how to improve your conversion:

  1. Don't attract a general audience. The easiest way to drop your conversion rate to the floor is to bring a bunch of people that don't care about your service. That is why appearing on TechCrunch or GigaOm might not be that great.
  2. Don't mislead on your ads.
  3. On the landing page (where ads will lead to), which is usually the homepage:
    1. Keep it clean and to the point;
    2. Add customers' accolades (remember to put the customer name, ask for authorization).
    3. Make it clear what the benefits are (remember to differentiate between benefits and features. Benefit = Share pictures with family, Feature = Upload pictures).
    4. Link to a page with the feature list (some users care about that)
    5. Clearly indicates a button to sign up (or insert the sign up form)
  4. On the sign up form or forms:
    1. Only the basic info is mandatory (name, email, password)
    2. Don't ask more than the necessary to gather basic marketing information and make it optional.
    3. Never more than 3 steps to sign up.

    I'm always amazed at how poorly some services are designed. Sometimes a friend times me to check out X. When I get to their homepage I can't figure out what they do. In other cases, I can't figure out how to get going. It actually happened when I used the Google Reader the first time (six months ago). I thought I was stupid because I couldn't find how to add a feed.

 

Retain

 

    The way I see there are three stages to retain an user: after they sign up, after they tried the product and while they are active users of the product.

 

    As I said before, Sampa loses 10% of its customers after they sign up but before they start using the product. Many things lead to that: User misspelled their email address, so they never got the confirmation email. Users sign up because they sign up to everything, maybe some day they will try it (the "tire kickers"). Users sign up, but later become busy and forget about it.

   

    Quick list of how to retain users just after they sign up:

  1. Ask them to enter their email address twice (verify your email) or display a page showing them the data that the entered and an opportunity to click back;
  2. If they don't sign in to try the product, send them a reminder one week later;
  3. The "Welcome email" is the opportunity to sell the product again -- This must be in terms of benefits, not features.

    After they sign in, used the product a few times, you must make sure that they stick to it. That they won't try the competitor or give up because they are frustrated. This is the hardest part (IMHO) about retaining a customer.

 

    A few things you can do are:

  1. Give them early wins, like, let them upload something, choose something, or add some sample content based on some of their initial form responses.
  2. Minimize the learning curve for the basic stuff, this is, basic tasks should be just 1-click away and have a 1-step process.
  3. Send them a one week and one month anniversary emails;
  4. Provide simple tutorials / "how-to".
  5. Provide an easy communication channel between them and the support team.
  6. Provide multiples support channels: Email, forms, newsgroups, KB search, phone, etc.
  7. Let them see what others are doing / have done.
  8. Let them know of how much more can be accomplished with a little more knowledge of the product.
  9. Let them invite friends to see what they've done;

    Finally, you've got an active customer, which on our definition is somebody that came back a month after they sign up and continued to use the system ever since (even if just a couple of times). This is your real customer. He expects a lot from your service, and, you might not know but he is the best source of information for product improvements, usability issues and bringing other customers to the system.

 

    Retaining existing customers is crucial to your survival. The best way to retain existing customers is to delight and engage them.

 

    Here is a very, very, very short list of things that you can do to retain your existing active customers:

  1. Let them know of new features first (when they find out about new features through the press/blogs you missed an opportunity to make them feel special).
  2. Always ask them for feedback;
  3. Give them perks based on how long they are your customers;
  4. Give them perks based on how often/much they use your service;

    This list can go on and on.

 

    As important as it is to retain your valuable customers, it is also important to know when to let them go. A customer that costs you ten times more than he is generating in revenue is probably not worth keeping. Learn a respectful way of telling him it is time to go. But that is another email post.

 

    Now, tell me, what is your strategy to attract, convert and retain customers?

 

Saturday, November 25, 2006

Alexa is wrong. Jason Calacanis is wrong as well.

 

    Jason Calacanis is asking people to help him prove that Alexa is wrong. He is, through his blog, enlisting 100 people to install the Alexa toolbar, access his site for a week, every day, and refresh his page automatically every 10 minutes.

 

    This is a very dangerous experiment because it doesn't prove anything and just adds another level of FUD into Alexa. And the Press/Bloggers are going to love it because they love Jason.

 

    Yes, Alexa isn't a very trusty source of traffic data because it is sample-based, as isn't ComScore, HitWise, and every other way of measuring traffic on the Internet.

 

    There are about 1 million Alexa Toolbar users (estimated), which means that if Jason gets 100 people accessing his site it *is* a lot of users and his traffic and rank will go up.

 

    I don't like when people use Alexa data to prove that somebody is losing or gaining 3% traffic over the past month, or to use their Reach number to assume that company X has 1 million unique users. That is the type of usage that is stupid.

 

    However, if you use Alexa over a large period of time, it is trustworthy enough to measure if a company traffic is going up or down and what is the order of magnitude of that growth/decline. But that is it.

 

    Unless every single site on the Internet start sharing their full log files, we won't have accurate data. I believe that might take a while, so, for now, let's keep using Alexa, ComScore, Hitwise, Netcraft and similars.

 

 

 

   

Friday, November 24, 2006

Migrating to .NET 2.0: Another gotcha.

 

    I just found the most dangerous error from the migration to .NET 2.0. In the past I wrote many problems we hit, like the GetHashCode, FileStream and Finalize, the email address syntax and default trace listener, etc.

 

    The current problem lies when using the new MailMessage. Before, you would use the MailMessage implemented on System.Web.Mail, which was quite limiting, but did the work. The .NET Framework 2.0, introduced the new MailMessage from System.Net.Mail. It is an order of magnitude better.

 

    So, you go about converting your code and it is pretty much a simple game of changing a few method names and you're done. There lies the problem.

 

    The new MailMessage needs to be disposed!!!

 

    In a long time, this is the first leak that we had in Sampa. It is pretty hard to have memory leaks in C#, but not that hard to have Handle Leaks. Just forget to Dispose or Close a network connection, or a file handle, or a Bitmap and you have a Handle Leak.

 

    Sampa makes extensive use of email. Every time people sign up, register to the newsletter, or somebody leaves a comment on a Sampa site, or a user is added/removed, an email is sent. There are another dozen cases where we send email. We were leaking a Handle each time an email was sent.

 

    The worst case was when we had Attachments on the message. That leak was worse because it held a handle to the file to be attached to the message. So any attempt to rewrite or delete that file (which was usually a temporary file) failed and it meant that we are leaking multiple handles in a single call.

 

    All fixed, all good now.

 

 

Thursday, November 23, 2006

Will Windows cost more than the PC?

 

    Pierre De Vries writes on his blog that you can buy a decent PC for $330 and that Windows Vista will cost $240. He extrapolates that soon, Windows will cost more than the hardware it runs on.

 

    I agree that it will happen, and that it will pressure Microsoft to lower the software price, and it will eat some of that amazing profit margin that Microsoft has enjoyed over the last two decades.

 

    However...

 

    Isn't that how it suppose to be? I mean, I don't buy a PC for the PC sake (although, Intel, Dell, HP, etc., want you to believe that). I buy a PC to run Windows. It is the application that matters.

 

    As Pierre clearly points out, Apple figure it out a long time ago by selling the solution, not the hardware or the software. And that is what matters. Microsoft should work closer with OEMs to get that going. I think the Windows Media Center was a good start, but it turned into a replacement for the existing Windows/PC instead of becoming the solution on itself.

 

    I spent about $1000 in a Home Theather system that I wasn't happy with. If the right form-factor and the right benefits would be in place, I would have another "PC+Windows" running on my home.

 

    XBox is better positioned to achieve the 'solution' deal than any other piece of software in Microsoft. Zune is not a solution because it does require a PC with Windows, otherwise how do you get songs into it? (note: you cannot do it through its built-in Wi-Fi).

   

Screeniac - Amazing flash demos

 

    Check out what this Molly McDonald has been doing: http://screeniac.com/

 

    This is how you tell show your readers what products can do!

The myth of WebOS


    On the last year or so there has a been a lot of people talking about WebOS, and even calling some web services a WebOS.

    From a Computer Science point of view, a WebOS makes as much sense as a C++ compiler written in JavaScript.

    First of all, people must understand that Windows, Linux and MacOS are not just an OS, they are an OS plus a bunch of other layers on top of the OS, plus a bunch of applications on top of those layers.

     An Operating System is responsible for managing the resources and applications of a computer (see Wikipedia). In other terms, it means a way to manage Processes, the File System, Memory, Hardware drivers abstraction layer, networking, etc.

    How do we translate that to something that lives inside a Web Browser?

    The worst part of a the WebOS talk is when people talk about window management. Why would I want a set of windows inside my browser that is already running inside a window-based OS? The interesting part about companies doing that is that they implement interesting stuff like Calculator, Clock, Calendar, Notepad, etc. Really, when was the last time you were browsing the web in a computer that didn't have that?

    That is why I compare WebOS with C++ compiler in JavaScript. It can be done, but why?

    This is another example of words being hijacked because they are popular. WebOS is a marketing ploy. It is not an OS.


But there is a cure...

    Mainstream always win over purists when defining terms. WebOS has been coined, expectations have been set and, surprise, surprise, it is not an OS. It is some weird thing that still being defined. It could be something like Zimbra, or PageFlakes, or Sampa. We don't know. It will take about 5 years for us to better comprehend what it is... Meanwhile, live with the hype.


Happy Thanksgiving.


    For those that don't know, today is Thanksgiving in the US.

    I wish everyone a happy Thanksgiving.

I feel clean now

   
    This week I clean up my email Inbox. A lot of people never delete the email from their Inbox, they keep it there until it is months or years old and then they delete everything that is older than X months.

    I'm not like that. I always delete what I don't want, what is not important or that doesn't require any action from my side, however, I keep all the emails that I need for reference, or need to read later or have to reply at some point.

    That is why I was shocked this week when I saw I had 770 emails lingering on my Inbox waiting for my action. It took about 2 hours, but I went from 770 to about 24 and then to 14 emails.

    Since I was on a clean up mood I did the same with my personal email account. It went from about 350 emails to 7.

    I don't know when was the last time I had so few emails on my Inbox. It feels soooo good.

    Take this extended weekend opportunity and do the same.

Wednesday, November 22, 2006

What is Wiki? What is blog?

 

    When a term becomes popular enough, it will be hijacked by marketing to stretch its definition to include whatever pleases them.

 

    Look at AJAX for example, about a year ago a company release a product that had "Ajax" on its name (I think it was AjaxWriter), but it didn't use AJAX at all! They made so much noise that they've got about 500K users visiting their site on the first week. Very impressive.

 

     I'm a technologist, and I like things well defined. AJAX for me is AJAX (Assynchronous JavaScript and XML). It won't buy any marketing talk about FLEX being AJAX, or Flash being "Ajax-y", or XUML, or whatever.

 

    But I'm not a marketing person and I see what this is appealling.

 

    John Cook is talking/asking today about Zillow being a wiki or not. Heck, I don't even consider Wetpaint a Wiki. A Wiki for me is what Wikipedia is built on top of. Anyone can sign up and start editing. When you need authorization, then it is not a wiki anymore, it is SharePoint or any other CMS tool out there.

 

    Here is my strict Wiki attributes:

  • It has that funky Wiki language;
  • It allows anyone to edit its content;
  • It automatically links to other definitions;

 

    Here is my strict Blog attributes:

  • It is a list of text in reverse chronological order;

 

    A lot of people, like Dave Winer, has an even more restricted view of what a blog is (like having comments and syndication).

 

    Now, let's not confuse Technology Terms with Marketing Terms.

 

UPDATE: Scot French points out that I didn't answer explicitly John Cook original question. No, Zillow is not a Wiki on my view.

 

 

 

   

Tuesday, November 21, 2006

Firefox overtakes IE

 

    Holly ****! I can't believe my eyes. This month, Firefox has surpassed IE in numbers of visits to Sampa.com

 

    Just 2 years ago there was "no" competition for IE, it dominated the market with 90+% market share and then... Firefox happened.

 

    I'm sure this is not what the people in MSN (Windows Live, whatever) are seeing because they have a more "low-end crowd". People that come to Sampa are a notch above on technology expertise.

 

    Here is the data for Sampa.com for the month of November and in parenthesis the month of October:

 

  • Firefox: 47.79% (38.98%)
  • IE: 45.66% (54.93%)
  • Safari: 2.98% (3.22%)
  • Opera: 2.33% (1.81%)
  • Mozilla: 0.48% (0.41%)
  • Netscape: 0.27% (0.18%)
  • Camino: 0.14% (0.26%)
  • Konqueror: 0.14% (0.09%)

    I wonder if what happened to IE could happen to Windows as well? Linux is not going to be it because it requires too many paradigms shift for users and developers. But if somebody could create a descent OS (even if built on top of Linux) and a decent compat Win32 layer.... Boy, MS would be in deep trouble.

 

 

Display the Seattle blog list on your site.

 

    Heck, we are on the age of sharing, mashups and syndication, so why not do the same with the Seattle Startups Blogs list?

 

    Here is two ways how you can add this list to your site.

 

1) Use the OPML file and a Widget (easier)

 

    The OPML file is located at this address:

http://sampa.com/seattle-blogs/seattle-startups-blogs.xml

    There are Widgets that you can use on your blog (I found one for Wordpress) that you can set to display this list. [Reader: if you know other Widgets for Blogger, Typepad, MovableType, MySpace, let me know]

 

 

2) Use the HTML version of the OPML (requires programming)

 

    You can fetch the raw HTML from http://sampa.com/Seattle-Blogs/bloglist.aspx and insert in the middle of your page. The only thing that you'll need is to define the CSS to make it fit your site design. The HTML is quite straight forward. (Please, remember to cache the results for at least 15 minutes)

 

 

3) Parse the OPML result (advanced)

 

    If you want you can retrieve the OPML, parse its content and display on your site whatever way you want.

   

 

Seattle Startup Blogs list

 

    We have 30 blogs already (up from 20 yesterday night). I know there are many more companies and entrepreneurs blogging in Seattle.

 

    Special thanks to Adam Phillabaum for a few excellent suggestions.

   

 

A Startup without a blog!

 

     No, I'm not kinding, I found many (dozens) of startups in Seattle that don't have a blog! [gasp]

 

    And this is not the worst part. These are technology startups! [double gasp]

 

    Well, it is much easier to hire a VP of Marketing that will hire a PR firm, to charge a few thousand dollars to write and distribute a press release to try to get in some print or online media to try to see if they can reach your customer or partners. Much easier than having a blog (and faster too, uh?).

 

    There is more.... VCs in Seattle... So far, there are the total amount of 1 (one) VC from Seattle that writes a blog -- Steve Hall's Nortwest VC -- and, on the last 6 months he wrote a total of 5 (five) posts!

 

    Fluke, Frazier, Ignition, Madrona, OVP, Second Avenue, Voyager, Vulcan... Nope, no blogs. To be fair, Ignition claims that it has a few VCs that are bloggers, but if you don't write a post in about a year I don't think it counts.

 

    Rich Tong from Ignition Partners is almost a professional blogger, but his blog is not about VCs, Investments, or Ignition. It is about him, so that doesn't count.

 

   

   

Monday, November 20, 2006

Google Adwords + Google Analytics - Not so great together.

 

    Google Analytics w/ Google Adwords information was supposed to be it! IT! But IT is not.

 

    In a rare moment of marketing clarity, we decided to stop talking and start doing it.

 

    We just started a small Adwords campaign last week. It has been very exciting. We are not that interested on the new users (sure, all users are welcome). What we really care about is the incoming data. And in just a few days it has been overwhelming.

 

   So, when you expect to go to Google Analytics and see if they integrate well... Oh crap! It is broken. Not the good broken where you don't get the data, the bad broken where the data is wrong!

 

    We are giving it a couple of days to see if it Google Analytics needs time to "catch up" or whatever with the Adwords data, but at this point we are implementing our own conversion tracking.

New Seattle Startups Blogs List

space-needle

 

    Seattle still behind Silicon Valley in terms of the number of technology startups. They have TechCrunch, they have Valleywag, they have 10 times more VCs and money than us, but there is a lot going on in Seattle right now that gets covered up by all the noise news coming from down below.

 

    That said, I decided to create a simple Blog List of Seattle's Startups, their founders & CEOs, reporters, investors, and other people working on the new Seattle Startup scene. To begin with I added about 20 blogs to the list. You can access the live list on this address:

 

 

http://sampa.com/seattle-blogs/

 

 

    The list is also available in OPML for those that want to easily import into their Feed Reader.

 

 

Send your blog

 

    If you want your blog listed, just send an email to seattlebloglist@sampa.com with the address of the blog. Or, if you know somebody that has a Startup in Seattle, send him/her this information. Check out the link above for the criteria to be included.

 

Investors are not all alike

 

    I just came back with another presentation to a VC. I don't think he is going to invest in us, but it was an interesting talk.

 

    The most important thing that I've took out of this conversation is that despite a fairly uniform way of measuring revenue and success, each investor likes to divide the data differently.

 

    Some investors, just talk in terms of Page Views as in "How many Page Views you got per day?" and "How many Page Views you expect to have at the end of 2007?". Those are the Ad-business investors. People that are familiar with Web 1.0 and worked on/with Google, MSN, Yahoo.

 

    Then, you have the Web 2.0 investors which always ask you "How many unique users you have?" and "How much revenue do you generate per Unique User per month?".

 

    Finally, there are the investors that understand traditional businesses and ask you questions in terms of "widgets", as in "How many sites do have?", "How much revenue do you generate per site per year?" and "How much does it costs for you to acquire a customer?".

 

    Those are all pretty much the same data, just displayed differently. I like more the "traditional investor" that thinks in terms of widgets. It seems more obvious and less likely to manipulation. Page Views and Unique Users can be easily manipulated upwards. It alwasy depends how you count it. Sites are sites, and they only way to manipulate is if you change your definition of Active Sites. In our case, we use a industry standard definition.

 

   

 

 

 

  

 

   

Talk to the CEO

 

    Rick Segal writes about www.wesabe.com that has a "Talk to Jason, CEO of Wesabe" text on the Homepage and how out of the ordinary that is. He continues and says:

"... I doubt most web start up companies will ever take this approach..."

    I agree.

 

    Here is a cool thing about Sampa: The CEO (me) answers all support and help messages. We ask you to send email to feedback@sampa.com because that is a distribution list where other people are also listening in to learn what customers are asking for.

 

    At one time, we had a customer write a nasty feedback to Sampa. I politely replied to her agreeing with some of her comments and pointing out that some were incorrect. Always talking on the first person and, as always, using my own email address to reply to her. She was surprised that a "real person" was reading the feedback and was much more willing to give us even more feedback -- of course, she apologized for her language on the original feedback.

 

    See, that is the power of the human touch.

 

 

Sunday, November 19, 2006

Presenting to investors

 

    We are going to present to a Seattle VC tomorrow morning. I've done that quite a few times.

 

    The interesting dynamic of presenting your business plan to a VC (or any professional investor) is that for you is a big deal, for them, is just another Startup.

 

    For the Startup, it takes days if not weeks preparing for the presentation. Documentation, financial projections, balance sheet, slides, support docs, etc.

 

    For them, you are probably the 18th Startup asking for money this month, out of which half were completely stupid ideas, and at least one of them resambles your business. Though.

 

 

RSS is broken, and it is going to hurt you.

 

    I just wrote about the traps of writing a blog post and thinking that you can delete it later (short answer: no you cannot erase from the Internet).

 

    The problem with RSS is that is not a fully implemented protocol to notify content changes in a blog. If you think about a change notification system, you usually have three types of notifications: Add, Modify and Delete. RSS only supports the first two.

 

    To be correct, RSS only supports "Add", but with the "dc:dateModified" extension it also supports "Modify" notifications.

 

    Since RSS doesn't have "Delete", there is no way for you to control what Feed Readers or Search Engines are displaying to users.

 

Page vs. Blog Post

 

    If you have a regular page on your website called "mypage.htm" you have many way to control Search Engine behavior. You have robots.txt, you have META tags to prevent search engine from Caching it (or even indexing it), and you can always delete that page and the next time a search engine crawler comes looking for it the page will be gone and it will be removed from the index.

 

    With blog entries, you don't have that. Bloglines, admirably, is working on ways to improve that but allowing users to control how search engines will surface blog content, but that is about it.

 

 

What is missing..

 

    RSS needs to improve by providing the following:

  • Support for "deleted" post;
  • Support for Search Engine control (nocache, noindex, nofollow) on a per-post basis that can also be used to change the settings of old blog posts (not only the last X posts).
  • Some type of authentication so blogs can control what is served. At least an "anonymous" vs. "authenticated" granularity.
  • Support for Time-To-Live and real support for "Don't Publish Before [Date]".

    I'm not a top expert on RSS/Atom, but I'm implementing a service that makes vast use of RSS and we need a better way for users to control their content.

 

    I want the users of Sampa to be able to control if a blog post is for "family" only, and any member of the family can be using any RSS Reader and just enter their authentication info for that blog.

 

 

 

 

What if you regret writing a blog post?

 

    You know when you write an email message and click 'Send' to immediately feel like you shouldn't have done it? It's like an instant remorse thing. With email you still can recall the message (some times), or ask the recipient to forget about it, to not forward it, etc.

 

    Blogs are very dangerous in regards to that because they give you the *false* impression that you can control its content.

 

    What I mean is that once you publish a blog post, it is like sending an email to the world in which you cannot recall, delete or hide it! You might think you can, but here is how you works.

  1. You write your blog post and click Publish;
  2. If your blog software or service is any good, it will immediately notify blog search engines like Google Reader, BlogLines, Technorati and others.
  3. These blog engines, for the most part, receive that notification and will retrieve the feed of your blog with your new entry.
  4. They will index, store and display that blog entry to anybody that visits their site and is reading or searching your feed -- forever!

    The problem is that between steps 2 and 4 it could be as fast as one second (or less), and even if you regret posting about it and go back and delete that entry, you'll never be fast enough.

 

    Now, deleting the blog post is actually the worse thing that you can do.

 

    Most blog engines will replace existing entries with their updated versions. So, if instead of deleting the blog post (which blog engines have no way of knowing that you deleted) you modify the text that existed before, you have a higher chance of people not seeing that content.

 

    This is not going to work for people that are subscribing to your content via some e-mail service, because they will have two emails on their inbox, one with the original content, one with the modified content. Although, I think most people will read just the last version of a blog post, so your chances of people not seeing are still better than not doing that or deleting the post.

 

    All this talk brings me to my next blog post.

 

 

 

   

 

 

 

Friday, November 17, 2006

Still using DBMON? Try DebugView.

 

    I was... Until today. I just found out about DebugView (a.k.a. DbgView) that you can download from SysInternals, which is a pretty cool set of tools from Microsoft.

 

    Thanks Vasco for the great tip.

 

 

Make your Windows Service run like a regular process.

 

    When I worked on Exchange 2000, my component was called ADC (Active Directory Connector). It was a Windows Service like most component on Exchange Server. If you ever worked with Windows Service you know they can be a pain in the butt to debug. Mostly when you're trying to debug the initialization code.

 

    We had two tricks to debug our component, that I managed to replicate in C# (that component was Win32/C++). First, we had a workaround to make the service run like a Windows Console process. You just entered the EXE name and it would run on the console. You could even start debugging it directly from Visual Studio with F5. The second trick was when you need to make sure it would work under the correct account. When you run from the console you are running on your User name (you could impersonate but that is a different topic). So, what we did was to add a 30 second delay right at the beginning of "Main" to allow time for us to attach the debugger. This was not a persistent thing, meaning, we only compiled with that Sleep if we need to debug the initialization code running under the Exchange service account.

 

    Well, I manage to get the first trick (run as Windows Console app) working on C#.

string user = Environment.UserName;
if(String.Compare(user, "System", true)==0
    || String.Compare(user, "Network Service", true)==0)
{
    ServiceBase[] ServicesToRun;
    ServicesToRun = new ServiceBase[] { new MainService() };
    ServiceBase.Run(ServicesToRun);
}
else
{
    // Invoke your service here
}

    The simple idea is to verify if the account is running under Local System or Network Service (the most probable accounts you'll run a Windows Service). The alternate method would be to pass some arguments on the command line to the process.

 

 

Bloggers Blogging about Bloggers and Blogging

 

    Why every blogger feels the need to analyse bloggers, blogs and blogging? Just because you write or read a blog doesn't make you an expert.

 

Visual C# Express can't attach to a processs.

logo_express_editions

 

    I'm not sure if I'm doing something wrong here, but yesterday I installed Visual C# Express in one of my productions machine to debug a problem with a process.

 

    If you don't know, VC# Express is the free version of Visual Studio C#. It has less menus, less options, less things, but from the description it seemed good enough for what I needed.

 

    All that I needed was to attach to our SampaService process (a Windows Service) to see if it why it was hanging midway a schedule job. It seemed obvious to me that VC# Express would allow me to attach and debug a process. But the menu is not there!

 

    So far, I came to the conclusion that you don't have that option on VC# Express, which is ridiculous. I'm not going to buy a license and install Visual Studio in production. It is too much money and too much work for many machines. I just want to debug a process once in a while.

 

    Does anybody know another way to do that? Does WinDbg can debug C#?

 

 

Thursday, November 16, 2006

35-years....

 

    Today is my 35th year birthday.

 

    Yesterday I was talking with my wife about that I don't feel like I didn't get anything done with my life so far. I did a lot.

 

    I graduated from college, I worked at small and large companies, I lost my father, I opened a startup when I left college, I opened a startup 10 years after I left college, I went to many concerts, shows, events, seminars, conferences. I travelled to many places, many times. I've got married. I had a wedding party. I went to many parties. I bought a condo. I sold a condo. I bought a house. I had a horrible junk car. I had my dream car. I planted a tree. I wrote a movie script. But above all, I had a kid this year.

 

    That is some pretty good life by my standards. I feel I've done a lot, and there is so much more to learn, visit, know, experiment, try, do.

 

    Overall, since I was a little kid I always felt lucky. Very lucky. I didn't know why, but I always got what I wanted. Later in life I realized that I didn't get always what I wanted, but those moments didn't matter and that is why I forgot about them.

 

    But the thing that define my success in life so far, is not the money (which I don't have), or the house, the car, my career, my business. It is the amount of people around me that genuinely enjoy being with me. I have about 50 best friends and another 100 close friends, and a wife and son! How can anybody ask for more?

 

 

 

 

 

   

Founders are not employees (according to Rick Segal)

 

    Rick Segal writes The Post Money Value blog. One of my favorites because of his honesty about the VC business (most other VCs bloggers suck). I met him personally once. He was a straight shooter.

 

    Today he wrote about EBF: Entrepreneur Brain Flip.

"...An EBF happens when a founder wakes up one day and 'flips' into employee mode.  To me, nothing is scarier then a founder saying 'It's just a job.'  ..."

    This is a great post, worth reading if you're an entrepreneur or investor.

 

    I agree with everything he said. Founders are founders. It is a risk-reward thing. Don't want the risk? Go work for Google or Microsoft.

 

    On the other hand of the coin, I see that investors try to swing every single term to their site (that is their job after all).

 

    Liquidation preferences, negotiate equity stakes that includes the option pool (which is a fantasy), anti-dilution provisions, preferred stock, expenses paid by the company, and the list goes on and on. Rick even wrote a couple of posts about absurd deal terms proposed by investors.

 

    I wouldn't expect nothing less from an Entrepreneur than his/her blood. But most of the time investors don't treat Entrepreneurs the way they should, and that is the cause of angst and some entrepreneurs thinking like an "employee".

Not changing jobs can kill your career.

 

    There are obvious moments in life when you know you need to change jobs. Then there are other moments that you don't realize it you should and it could have a bad long term affect future opportunities. For me there are two big ones of those:

 

 

#1: When you know too much.

 

    This is the opposite of what people really do. When you do your job well, you know everything, everybody around you regards you as the "master" on that job, why would you change jobs? Unless you are making mid-high six-figures salary the reason is simple: everything changes. The world changes, the customer changes, the product changes and you are hanging your hopes on the basis that things will stay the same.

 

    Changing jobs will give you the opportunity to learn something new (I know, it is a lot of work, even less motivating if you are building a family) and adapt to a different situation. In my view people should change jobs every 2 to 4 years. That is enough time to learn the new job well and not long enough to make you too comfortable and unprepared for changes.

 

    My definition of changing jobs is quite broad. What I mean is that you don't have to change companies. Changing functions, departments, product groups is good. Changing company is better.

 

    I have two easy red alerts when I'm reviewing resumes.

 

    First is people that have 10 years they graduated and already worked on 7 companies. I toss this resume immediately. Don't try to tell me you were unlucky with the companies you choose to work for, because that tells me you are not good at judging opportunities.

 

    The second red alert is when people have 10 years of experience working on the same company, on the same division, just escalating the corporate latter (from individual contributor, to technical lead, to team lead, to team manager, etc.). That tells me you are not a risk taker, not an opportunist. Not fit for a Startup (or a dynamic group).

 

 

#2: When management changes.

 

    This is risky advice, but whenever managament either leaves the company or group (to "spend more time with family"), or they are forced out (to "spend more time with family"), or a more qualified person is hired to manage the company/group... It's time for you to leave.

 

    The key here is that a new person/team is in command, and this person/team doesn't know you. They didn't interview you, they didn't made you an employment offer, they didn't groom/mentor you they way they think it is best. They "inherited" you.

 

    If it was easy they would bring somebody they trust and they think is a good fit to replace you. And it has nothing to do with you, personally. It is just you are not familiar to them.

 

    You have three hills to overcome to be valued on the "new team".

 

   First, you have to be very competent on what you do (being ok won't cut it). Second, they have to get to know your work and you (and can't be by your own mouth). Third and finally, they must believe that the new direction of the group/company has a place for you.

 

    Now, imagine that you leave to work on another company/group -- as the management team also leaves. You were interviewed by a group of people that said they want you on the team. Your new manager approved that and he has been looking for somebody for a couple of months already, so he is kind of in a hurry for you to succeed. Not only that, but he (and everybody else that helped you get there) will look really bad if you don't do well because they were the ones that said you would be great.

 

    Here is the difference between the two scenarios: New management with you trying to prove yourself like hell versus you on a new company with a group of people very interested that you succeed.

 

    You tell me which is better.

 

 

 

 

Wednesday, November 15, 2006

SlickEdit Gadgets for VS 2005

 

    Because of my post on Clover.NET, I got an email from Jason Jones from SlickEdit about a set of free Gadgets for VS 2005.

 

    I have not installed it yet, and I'm usually reluctant on installing plug-ins for VS because when they work, they work, when they don't, they really screw your system.

 

    On the case of SlickEdit Gadgets there is at least one thing that I would love to have: Indentation Guides. Those that are familiar with Photoshop know how useful Guidelines are to make sure things align properly. I never thought of that on the context of a language editor, but it makes a lot of sense.

 

    When you have just 2-3 scopes of identation you can easily visualize where things starts and end, but when you have 4-6 then you can't. I'm a big advocate of clean code. Having a 8-level deep scope is unacceptable. However, on HTML and XML that is mostly not an option, like it is in C#.

 

    I'll try and let you know if I love it or hate it.

 

 

   

Why does it take so long to raise money?

 

    Even if the stars align, everybody loves your business plan, the execution is well, all data points are above expectations, investors like you, you are still 4-6 months away from seeing the money.

 

    Here is a hypothetical timeframe of events when you try to raise money on a Bridge Loan format:

  1. Day 1: You send email or call a prospective Angel/VC;
  2. Day 2: They usually reply the next day with a "sure let's meet".
  3. Day 5: You guys still trying to negotiate the date, but it is decided that it will be the end of next week.
  4. Day 14: First face-to-face meeting, you show the business plan to the investor, talks about the market, the product, etc.
  5. Day 15: Follow up email from you, thanking him.
  6. Day 16: He sends you 2 contacts that he wants you to present to them as well, to see what they think (usually people with industry expertise).
  7. Day 17: You follow up with the contacts.
  8. ... (skipping days to make it go faster)...
  9. Day 35: You finally met with the two persons. Now you contact the investor again.
  10. Day 36: No response.
  11. Day 37: No response.
  12. Day 38: He manage to see his email from an Internet Cafe in Belize. Shoot, he is on vacation for another 2 weeks.
  13. Day 55: You wait a few days after he is back and send him another email.
  14. Day 60: You guys meet for a second time and you start talking about how much you need.
  15. Day 61: He wants to introduce you to a couple of other investors (remember they hunt invest in packs).
  16. ...(fast forward)...
  17. Day 80: You've meet him twice, meet with his industry contacts, meet with the other angels. What else? He asks you for detailed financial projections, balance sheet, business plan, biography of the team, etc.
  18. Day 85: You get all that stuff together, send to him via email.
  19. Day 90: He finishes reading the stuff and wants to meet again.
  20. Day 95: You guys meet and there is a handshake for an investment. You think about going on a spending spree, but then you remembered that you read something on Marcelo's blog about how long it takes to raise money and decide to wait a little more.
  21. Day 96: You contact your lawyer to start the paperwork.
  22. Day 100: Your lawyer sends you a draft of the documents with a bunch of highlighted stuff for you to decide (Maturity date, warranty, discount, when it converts to equity, board seat, etc.). Gosh, you didn't know you had to negotiate all that, did you?
  23. Day 101: You start negotiating with your investor. He asks you for a Right of First Refusal (what the heck is that?).
  24. Day 103: Your lawyer finally explains to you what is the Right of First Refusal.
  25. Day 104: You talk to the investor again, and he puts his terms on the table.
  26. Day 111: It takes you a week to figure out what those terms really mean with your lawyer, with your other entrepreneurs friends, etc.
  27. Day 112: You and the investor settle the terms, you get back to your lawyer with the decisions.
  28. Day 115: A new draft is sent to you, you send to the investor.
  29. Day 116: The investor forwards it to his lawyer and financial advisor.
  30. Day 120: His lawyers come back with a couple of highlighted issues that they don't like.
  31. Day 121: The investors tells you that you'll need to change a few paragraphs on the bridge loan doc.
  32. ...(fast forward after 2 more rounds of laywer-you-investor-lawyer)...
  33. Day 145: Gosh, everything is done, but the investor decided that he needs to hire an accountant to verify if the business is in good standing, there is no shady banking deals, or no hidden debt, etc.
  34. ...(fast forward after a financial due diligence)...
  35. Day 165: You schedule a meeting to sign the paper next week, because he is going to Toronto for the Holiday.
  36. Day 172: He calls you and asks for a couple of days to transfer the money from his investments.
  37. Day 175: You guys sign the documents and he gives you a check.
  38. Day 176: You go to the bank and deposit the check.

 

    This is a investment by a single investor using a Bridge Loan.

 

    Equity financing is way more complicated on the legal paperwork (about 5-10x more terms and paragraphs). Imagine if you need 5 angel investors, how much time you'll need to dedicate to that?

 

    At the end of the day, pursuing money should be on a "must do" basis, because it consumes so much of the entrepreneurs time that he doesn't have time to do the other important stuff, like talking to cusomters and building a product.

 

 

Can Unique Users be greater than Visits?

 

    Definitions:

  • Visits: Each new browser session for your site.
  • Unique User: Each uniquely identified user that visits your site in a period of time (see my post about how to compute unique users).

    So, happily I went to gather that stats for Sampa, when, suddenly, for one of the websites showed this data for a 24h period:

  • Visits: 61
  • Unique Users: 63

    What?  How is it possible the site only had 61 visits but 63 unique users in a day?

 

     Well, it is possible. After a lot of staring at the code, the data and thinking about it, I realize this is perfectly ok, although a bit odd for the untrained eye.

 

     Here is what happens: A visit is counted as the first time a request comes to the system that causes a new Session to be created. A unique user for a day is counted as the first time a unique id has made a request to the site on that day.

 

    The key factor: Visits can span multiple days. If somebody visits a site at 11:55 PM and his last request was at 12:15 AM (next day), that means there was 1 visit for day X, 1 unique user for day X and 1 unique user for day X+1.

 

    In the case of Sampa, we decided to normalize all dates in Universal Time Coordinate (a.k.a. GMT timezone), which means that midnight is 4:00 PM PST.

 

    Now, for a whole month, that story is different, because that difference will play a much smaller role and become insignificant. Notice that Unique Users (UU) for a month is not the sum of all daily UU, but the true count of unique users that visited that site on that period. On the other hand, Visits for a month is the sum of all the daily visits count.

 

 

 

 

Code Coverage for Visual Studio

 

    Clover.NET is a Visual Studio extension from Cenqua that provides code coverage information.

 

    I tried this product about a year ago and I was happy with the results. This is interesting to see if your code is being fully executed during your Unit Tests. It made me appreciate much more the art of testing a product.

 

    The reality about code coverage is that you can never hit 100% of the code, but anything above 85% is pretty good already. This is one of those 80/20 rules. Which means to get the last 20% of code coverage you will need 4X more work than to hit the first 80% of the code.

 

    Clover.NET is the only product that I ever used to do code coverage, so I can't really compare it to my previous experiences, but my thoughts are:

  • Integration w/ VS 2005: Pretty well done. The code is highlighted inline!
  • Installation: Bad. You need to *read* the instructions before installing, copy files, argh...
  • Reports: Pretty decent, easy to read and export.
  • Build/Run: If you have a simple project this will be easy. On the case of Sampa, were we had Post-build batch, there was a lot of things that I had to do for Clover.NET to work.
  • Missing: Why they don't have a profiler I don't understand. They already instrument every single line of code, why not collect that stats?

    If you know another good Code Coverage tool, please, let me know. I'm also looking for a good C# profiler.

 

 

 

 

Monday, November 13, 2006

How to compute unique users and transparency

 

    I've been working on some stats and analytics toosl for Sampa. We want to understand very well what users do, how much they do it and what works well. My most recent struggle is with the definition of "Unique Users".

 

    There are some many ways to define unique users, like:

  1. Number of unique IPs;
  2. Number of unique IPs + User-Agent;
  3. Cookie (computer);
  4. Cookie (user);

    Option #1 underestimates the number of unique users in a period of time because people might be accessing the system behind a proxy, which means that for a large company, all users would be counted as 1 or a just a few. Option #2 is the same technique with the variant of adding the User-Agent. Now, you expect that would improve the accuracy of the data, but most people behind a proxy already have the same user-agent.

 

    Option #3 is the most used by most services and tracking system. Each browser is given a unique identifier cookie, like a Guid, and each access from that browser will send that value back to the server. Now, here are the key problems with that:

  • The first time a user access the system it has no cookies;
  • The browser might have cookies disabled;
  • A user might have multiple browsers on the same computer (like Firefox and IE) and they will be counted as 2 users.
  • A user might access the site from different computers, and they are not trully "unique users".

    Option #4 only works if the system requires sign-in all that time, like in the case of Orkut, Facebook, Hotmail, etc.

 

    Here is 37Signals announcing 1,000,000 users using Basecamp. Congratulations for them. The most interesting thing about this post, IMHO, is that they disclose what that number means!

 

    It is very rare for web services to do that because they want to give the most inflated number possible, without explaining exactly what it means. This way, they can't be challenged.

 

    Take MySpace for example. They recently announce they have 127,000,000 users on their system. Holly s**t! That is a lot of people. But, what if some of the people there have 2 accounts, one for them, one for the alter ego? Or, what if a lot of users sign up and never really used it (like me). What if a good chunk of those accounts are stale and have not been accessed for more than 6 months?

 

    All that would be ok if MySpace explained what the 127M means, but they don't because they want the press (that influences advertisers) to think it is the number of people that goes to MySpace every month. In reality, their numbers are more like 50M unique users per month, and even that is using a sampling methodology from third parties (ComScore, Alexa) because they don't announce that.

 

 

 

 

Sunday, November 12, 2006

Sampa unusual high traffic.


    Since we released the Beta version of Sampa at the end of May, we had at least 1 sign up per day every day. In the middle of June, it was at about 3 sign ups per day. Then, on July 31st everything changed when CNET News.com run an article about Do-It-Yourself web, where the featured company was Sampa. That same day we've got about 1000 sign ups, followed up by an appearance on LifeHacker with another 500 sign ups.

    After that we had many other mentions on popular blogs (not on TechCrunch yet) and the sign ups have been all over the map, from 50/week to 500/week.

    On the the past 2-3 weeks the average has been 50/week (5-10 per day), but this week we've got 115 sign ups. It is not outside of our expected range, but it is unexplainable. What I mean is there is no big article anywhere, the referer source doesn't show anything new, so we don't know where the users are coming from.

    Actually, we have a clue, except when we have this big articles that attract thousands of visitors to Sampa.com, about 50% of ours users come to Sampa.com without a referer, which means they either received a link by email to Sampa.com or they typed/bookmarked the link in their browser.

Saturday, November 11, 2006

Write and they'll come.

   
    When I started blogging about 2 years ago I knew exactly what I wanted. A place where I could go back and check what the heck I was thinking when I did something. I never had the intention of getting tons of users or making money out of it. This is exactly how I feel today.

    Now, I have anything between 75 and 150 readers according to my estimates. It surprises me that so many people would be interested in reading my blog. Why? Because I'm not consistent. The content of the blog is all over the place, sometimes a C# or JavaScript tip, sometimes a rant about a company, sometimes I talk about entrepreneurship, investment, politics, usability, crazy stuff, YouTube videos, I talk a lot about Sampa.

    Recently (on the last 3 weeks) I've been writing a lot more, averaging 3-4 posts a day. What surprise me was that on that same period my readership has increased by about 20%. Now, I don't know if this has anything to do with me writing more, or, with the fact that one of my entries appeared on Boing Boing.

    If you are a reader of my blog: I'm sorry and thank you.

    I'm sorry for the misspellings, typos and wrong information that appears from time to time on my posts (never intentional). And I'm thankful for you spending any minute reading it. If you can learn anything ne    w from me, I feel it was worth it.

Wasn't arrogance dead?


    This week I had the worst meeting since I started Sampa.

 

    It is hard to be an entrepreneur. You have to have a vision, plan it, execute it, and hope that people will love what you do and buy your product. But that is not the hardest part. The hardest part is the impact on your personal life. Everybody around you is affected a little (or a lot). On my case my wife and kid are the ones, besides me, that have to go through restraints to help me.

 

   Back at the meeting, we've met this other entrepreneur to see if there was a possible synergy between Sampa and what he was doing. We do that all the time, with many entrepreneurs, investors, consultants, etc. No biggie.

 

   For some reason, this person starts the meeting completely inside the box (read Leadership and Self-Deception). He is not only arrogant, but he has that smirky look of somebody that knows everything (wait, that is the definition of arrogant, isn't it?). You know how to detect people like that, when they say things like "Every company is doing X wrong…".

 

   For a possible partnership meeting, it started bad. He begins by drilling into Sampa's architecture and question a lot of our decisions with "but you could have done this way", "but you could have used this tool". What the fudge? Most of my answers were "sure" with me thinking why am I wasting my time with this. He was clearly trying to pinpoint every single possible flaw in Sampa's architecture (according to him, of course). The fact is that he came with an agenda, close-minded and just wanted to confirm it.

 

    Now, to be honest, I love when people challenge me. I surrounded myself with honest advisors, not afraid of telling the truth. But for a first "date" at least you should be a bit more diplomatic and open-minded. This person is certainly not a mensch.

 

    I belive that meeting was worth something. Learning about him and be wary of anyone that considers him a great entrepreneur.

 

    At the heat of the moment, I said words that should never been said: "let's see we can partner in the future". For that I'm sorry, very sorry.

 

    And just to be clear, I don't wish him any harm or ill. I'm working hard to be somebody that is remembered by the many friendships I created and the great legacy left to humanity.

 

 

PS: Oliver, you were right. The craziest s**t happens when you're an enterpreneur.

 

 

Thursday, November 9, 2006

AOL Search code exposed.

 

    It is not always that you find a major website built by serious developers exposing an ugly call stack to their users. But AOL did it for me:

 

javax.servlet.ServletException: TEA: Length of String s is not a multiple of 8.
com.aol.search.mvc.DecryptQueryServletFilter.doFilter(DecryptQueryServletFilter.java:112)
com.aol.search.mvc.TestbedServletFilter.doFilter(TestbedServletFilter.java:104)
com.aol.search.mvc.UserAgentBlockFilter.doFilter(UserAgentBlockFilter.java:218)
com.aol.search.msrp.filters.RequestIDOverrideFilter.doFilterInternal(RequestIDOverrideFilter.java:82)
com.aol.search.gsp.filters.AbstractConfiguredServletFilter.doFilter(AbstractConfiguredServletFilter.java:160)
com.aol.search.mvc.LoggingServletFilterBase.doFilter(LoggingServletFilterBase.java:94)
com.aol.search.gsp.filters.LogonTimestampServletFilter.doFilter(LogonTimestampServletFilter.java:94)
com.aol.search.mvc.UserInfoRedirectFilter.doFilter(UserInfoRedirectFilter.java:242)

    All that I did was to change the "encquery" parameter to a normal string. I wanted to see what type of encoding they were using. Apparently the do some cryptography because the function was called "DecryptQueryServletFilter". Why the heck would they cryptograph this value?

 

    How are websites owners supposed to know what people are looking for on their site if the referer is an encrypted string. If Google had done that from day 1, AdSense and SEO would not exist today.

 

 

 

 

Outlook RSS Reader: Impossible to detect.

 

    Microsoft Office just RTMed this week, which means in a couple of months people will be buying them on stores and it will come installed on their new PC.

 

    The great news is that Outlook 2007 has embedded support for RSS. This is a super easy way for people to subscribe to their favorite blog/site without knowing a thing about feeds. Great news.

 

    The bad news for blog owners, developers and marketing people is that you won't know when a user visiting your site to get a feed is using Outlook 2007. That sucks!

 

    I found this post from Michael Affronti, a PM on the Outlook team, who gives some lame excuse why they cannot change the "user agent" string for those requests.

 

    Argh!

 

 

Orkut/Google sucks! How do I cancel my account?

 

    Every time I need to contact Google for whatever reason I know I won't find an email address, I might or might not find a form, and it will be a long and painful search for that info (ironic that Google has a mission of organizing all the information on the world).

 

    Somebody signed up to Orkut using my email address. I received a link to confirm the email address, once I clicked on the link on the hope that I could say "Cancel this", I just got a message saying "Congratulations, your account has been activated."... What? No, no!

 

    Ok, that is easy, I have the email, go there and click to delete the account. Well, if it was that simple. Orkut has a clearly marked link to delete account, I click on it and I can't do it because I don't have the original Orkut Username and Password. I need them to link them to my Google Account and then delete the Orkut profile.

 

    I do have a Google Account which I can sign in to Orkut, but I can't cancel the Orkut profile because it was created with a Username and Password.

 

    S.O.B.

 

 

   

Wednesday, November 8, 2006

Top 7 mistakes at Sampa, a Startup tale.

 

    On the footsteps of Evan Williams (Odeo) and Andy Sack (Judy's Book) talking about decisions, strategy and executions that didn't go so well on their company, I also decided to write my own version of it with regards to Sampa.

 

    There are two reasons that I'm doing this. First, it helps me flush out some of the stuff on my head and think more clearly. Second, and most importantly, it can help some other entrepreneur out there that might look at this and learn about it.

 

     The list is not in priority order, but more or less in occurrence order.

 

 

#1: Taking too long to get started

    I had this idea 3 years before I left Microsoft and started Sampa, circa 2001. The idea was not very solid, but by 2003 it was mostly what you see today. Between 2003 and end of 2004 I tried to convince Microsoft on doing it. That was a huge waste of time. I should have packed my stuff and started Sampa back then.

 

 

#2: Being in Stealth-mode for too long

    If you are a Startup that is entering a big market, there is no reason on being stealth. What? Do you think Microsoft or Google will look at your 2-person company and say let's copy what they are doing? Get real. Only about 5 people knew what I was doing for the first 9 months. After I started telling people, a wonderful thing happened. People started connecting me with other people doing similar or complementary work. If I could roll back time, I would have told everybody that I knew about what Sampa was going to be.

 

 

#3: Not having a partner in crime.

    This has been said already on many books and blog posts. You are much more likely to succeed if you have somebody else working with you. Back when I started Sampa, it never occurred to me that somebody else would even be interested in joining me. This goes back to #2. If I had been more open about it, maybe I could have found somebody that had the same passions and motivations that I did.

 

 

#4: Taking too long to decide between Small Business vs. Consumer

    Sampa was never meant to serve a medium or large-scale site. So, the obvious choices were Small Business or Consumer. I did what every ambitious (and dumb) people would do: I decided to go for both! This was mostly a R&D mistake at the time because I had no product, brand or marketing, it wouldn't affect those disciplines. But I spent a lot, a lot of time developing features for Small Businesses that are not useless. We actually even removed some of them from the site. Sampa is officially a consumer product.

 

 

#5: Not preserving user data during Alpha tests

    Alpha was meant to be alpha, so, I didn't want to have to be backward compatible. Every Alpha release meant all user data was gone. Everybody had to sign up and try again. The vast majority of users understood that and were ok with it, except they didn't come back later.

 

 

#6: Swing too much vertical

    Sampa was a very horizontal offering, meaning, it was a product without a niche. It works for anyone. Marketing 'experts' will tell you this is a bad strategy for Startups because you cannot get past the noise level and you never create a brand. The suggested solution is to go vertical, find a niche where your product can provide a great solution for their problem, build a few features focused on them and market like hell for that group. So, we picked a niche, then we started picking sub-niches, and spent a few months working only on features, branding and marketing strategy for those. That was too vertical. We are a horizontal platform, and this is how the service was designed to be. Being "too" vertical meant going against the grain of the platform. Right now we think we can pick a niche without being vertical.

 

 

 

#7: Hiring 'A' players that didn't fit the culture

    You know how every single Entrepreneur book tells you to only hire 'A' players, the best -- well, they are wrong. You should hire the people that will produce the most results for your company, and that is usually a combination of excellent people and synergy with the existing culture. And culture being the broad term that represents everything a company is and has.

 

 

    I hope these help someone.

 

 

 

 

 

 

 

Digital Room: Great quality business cards

 

    You know when "they" say that a consumer will tell on average 3 other people if he had a good experience with a product or company, but they will tell 6 other people if they had a bad experience?

 

    Well, on the blogosphere seems to be more extreme than that. You'll see 10 posts trashing a product/company from an average blogger for each 1 post complimenting a product/company.

 

    This is one of those rare "this-product-is-great" post...

 

    Two weeks I need a new batch of business cards. The last time (which was the first time as well) I went to Kinko's. Horibble quality. I could see the pixels on the card! The color was awful and the paper not that great either.

 

    This time I decided to find a more professional service, so I went online and investigated about 4 companies. After much debate (with myself), I decided to try Digital Room. A-mazing!

 

    The quality of the card -- which is what matters the most for me -- is outstanding. It feels great. When I compare with business cards from other VCs, CEOs and Consultants, this is much better. The colors are outstanding.

 

    Now, the big surprise, it cost just about $35 bucks for 1000 cards!

 

    I strongly recommend them. I did a tricky design, with bleeding and they executed flawlessly. The bad thing is that the minimum order is 1000 cards, and that is just too much. I never did more than 250 at a time.

 

    I was a really disappointed with the color calibration of my monitor, the card looked darker than I wanted, and the fonts end up a bit too big for me. Now I'll need to pass around 1,000 cards to need to order more cards. :)

 

 

 

 

Tuesday, November 7, 2006

How do you define 'Active User'?

 

    We been having this debate for a long, long time on Sampa. What is an 'Active User'? Or, is 'Active User' the right way to track activity on the site.

 

    Sampa is different from MySpace, for example. On MySpace an user is somebody that sign up to MySpace and created their page, so, they can say that each MySpace User is an Active User, otherwise they have to cancel their account.

 

    Sampa is not a walled garden, and the sites created by our users are open to the Internet, like on Blogger. We could define 'Active User' by users that change their content on their web site on the last X days. We even prefer 'Active Sites' since you can have multiple editors and administrators of a single site.

 

    Now, let's say that a site has not been updated for 6 months. The easy answer on this case is to consider that site not active anymore, but, what if the site does get a lot of traffic, even with the stale content? We called the people that sign up for Sampa 'Users' and the people that visits their websites 'Visitors'.

 

    Technorati considers an Active Blog any blog that has been updated on the last 3 months. For a pure blog that makes sense, for a Blog like Sampa where you can have photo albums, Flickr/YouTube integration, pages, and other content, you might not post for a long time, but you still have your site.

 

    Right now we have three definitions at Sampa:

  • 'Active Sites': Sites that have high traffic in the last X days.
  • 'Active Updated Sites': Sites that have been updated in the last W days.
  • 'Active Users': Unique Users that visited Sampa Design Site on the last Y days.
  • 'Active Visitors': Unique Users that visited any Sampa sites on the last Z days. (this is the typical way websites track their growth).

    The question remains, how much is X, W, Y and Z? 30 days? 60 days? 90 days?

 

    At the end of the day, we should have a single number. We still debating if the 'Sampa Activity' number should be a combo of the values above, or just the number of Unique Users on the public Sampa sites, which is more in-line with today's standard way of tracking usage of a site.