Article Navigator

Navigate By : 
[Article Index]

Subscribe by Email

Your email:

My Website Grade

Dharmesh Shah's Blog

Current Articles | RSS Feed RSS Feed

Remembering The Schnoo, Zen Cat

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 

As I write this, Kirsten’s on her way to Istanbul, Turkey for a family trip, so I am home alone.  I’m doing what I normally do when I’m home alone — cranking away on the computer. 

Today is noteworthy.  A year ago today, my wife Kirsten and I were saddened by the loss of our beloved cat Shiva “The Schnoo”.  The Schnoo - Zen Cat

Here’s my Facebook status update from exactly a year ago:

Dharmesh is celebrating the life of Shiva "The Schnoo" zen-cat. He brought us great joy and will be missed in this life. We envy those that will know him in the next.

Those that know me know that I’ve never been a “pet person”.  This was not by conscious design.  I didn’t grow up with pets and didn’t really know anyone

Those that know me know that I’m not generally not a “pet person”.  (Nothing against them, I just didn’t grow up with a pet or spend much time with anyone who did).  Shiva was the first pet that I’ve had, and he made a lasting impact.  One of the things I’m worried about is that he made of falsely set my expectations for the future.  I’m spoiled!

What made him so special was that he had a calm equanimity and sensitivity about him.  Anyone that knew him got this sense immediately.  He was the “Zen” cat.  We also referred to him as the “Buddha Cat”.  We should have named him Siddhartha.

As I sit here working away on my computer, I can’t but help remember all of the times he just “hung out” with me in my office.  It wasn’t a matter of him keeping me company (or even the other way around).  He was fine to just “be”.  I crave that “just be” state of being myself.  The Schnoo understood me. 

I’m not usually an emotional guy, but am tearing up a bit.  That’s just the kind of being he was.  We need more beings like that on the planet.

So, here’s to you, Schnoo.  Thanks for all those great “Schnoo moments” and I hope our paths will cross again.

Tags: 

7 Simple Ideas to Make The TiVo S3 Even Better

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 
I have been a very early adopter of DVR technology.  In the past, I’ve been a big ReplayTV fan (owned three of them) and tried various four different Windows MediaCenter implementations.  I have now switched to the TiVo S3 (which supports a dual cable card, giving me HD recording on two channels through my digital cable provider -- Comcast).

The following ideas are small changes/enhancements to the interface that I think would make the Tivo even better.  Note that none of these require any changes to the hardware (they’re all software-based ideas).  I don’t expect the folks at TiVo to be following this blog, but thought I might spark an interesting discussion amongst other TiVo users that have a software development background.

Making The Tivo S3 Even Better

  1. Create Season Pass from Tivo Suggestion:  This one seems so simple, I’m surprised they didn’t do it.  As most of you know, TiVo provides a simple “recommendation” feature whereby it observes your past viewing habits and automatically records shows it think you might like.  These show up in the “TiVo Suggestions” area.  But, there’s no way to pick a show in the suggestions area and then automatically create a “season pass” from it.  Other than voting the show up or down, you can’t indicate your desire to watch the suggested show regularly from then on in.
  1. TiVo Suggestions Page Icon:  Currently, when looking at the list of suggestions in the Tivo Suggestions area, all you see are:  a standard “Tivo” icon (which indicates that the show is a Tivo suggestion), the title of the show, the date of recording, and in some cases, the logo of the channel it was recorded from.  First off, showing the Tivo icon is redundant here.  All the shows in this area are TiVo suggestions.  Instead, it would be helpful to show an icon that either indicated the degree to which TiVo thinks I will like this show (one, two or three thumbs) or an icon indicating whether this is a new show I’ve never watched before, or a show that I have watched, at least partially before.  
  1. Add “Play From Beginning” Option:  This is standard fare on ReplayTV.  When selecting a show to play that has already been started, TiVo (correctly) gives you the option to “Resume Playing”.  But, there is no way to start the show from the beginning.  Though this may sound like an “edge case”, it is common enough (and easy enough to understand) that there is little harm in adding it on the list of commands when selecting a show.  
  1. Don’t Exit The Guide/Tivo Central Pages!  This is a pet peeve, but it’s a big one.  Here’s the deal.  I watch TV in the background when I’m working.  One of the nice things about the TiVo Central screen is that it cuts the sound off (and the video, because it’s a static text-based page).  I use it as a quick “pause everything, including the sound” mode.  This is great.  But, TiVo, in its infinite wisdom will automatically exit this screen.  Sounds comes back on, video comes back on, etc.  I can’t tell you how many times I’ve walked away from the TV in “TiVo Central” mode and have it rudely start playing TV again when I wasn’t expecting it.
  1. When Entering Letters, Provide Wrap-Around:  One area most of these types of devices struggle with is providing data input for text fields (like in Search).  TiVo generally does an OK job with this providing an on screen keyboard so that each individual letter can be selected.  One little thing that they should support is the ability to scroll to one “edge” of the screen and have it “wrap-around” to the other edge.  Makes getting around the screen easier and faster.  Great for “power users” but even neophytes will figure out what’s going on in about 10 seconds.
  1. When Deleting A Show, Allow Up/Down Voting:  When deleting a show, there is a final “confirmation” screen that comes up to make sure you really want to delete.  That’s fine.  But, on this screen, TiVo should provide the ability to up/down vote the show (this is one of the most common places from which to want to down-vote shows).  Even a tip that this feature is available here would help.
  1. Space Use:  Somewhere in the system (probably on TiVo Central), there should be some indication of how much space is currently being used by user-specified recordings and TiVo suggestions.  

If any of the above sound unreasonable or silly, let me know why.  Would love to read your thoughts in the comments.  If you have any ideas of your own, please leave a comment.

Tags: ,

Reddit Software Change: Submissions Starting With Zero Points

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 

I discovered an interesting change in the last few days at reddit.com.

 

Seems there was a software upgrade recently and there’s some “intelligence” going on as to whether or not submission of new articles start with one point (the “classic” behavior) or start with zero points.  

 

I’m not sure yet what the algorithm is based on.  Here are some possibilities that reddit may be using to make this determination:

 

  1. karma level of the submitting user
  2. frequency of posting of the reddit user
  3. frequency of posts from the website for which an article is being submitted (i.e. domain name)
  4. prior “track record” of articles submitted from the website before

 

If you have better theories, please leave them in the comments.  Would love to hear them.  I found this change curious (and there may be other changes that have gone in as well).

 

 

Why Using Reddit For Polling Doesn't Work

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 

Instead of talking about the recent Reddit acquisition (which has been all the rage this week), I’d rather get back to the basics and consider a different topic.

With increasing frequency, it seems that people are attempting to use Reddit as a voting engine in the “vote up if you believe [x] or down if you don’t” type model.

Here’s one example:  http://reddit.com/info/p5lb/comments

It has already been brought up that these types of Reddit points should not count towards karma.  Though I agree with that point, I don’t give a flying flip about Reddit karma points because they really do anything for me (but if you like them, may you go in peace).

What I would like to comment on is the simple fact that using reddit as a voting mechanism like this doesn’t work.  The reason is very simple:  Reddit quickly becomes a “self-reinforcing” loop so that those that agree with whatever the question is are more likely to see the poll in the first place (because that article will make it to the top of the list).  So, the outcome of the poll is immensely influenced by the way the question is structured (i.e. what it means to vote up or down).

Am I missing something, or is this mechanism to try and poll popular opinion one of the silliest ways to go about this?

 

 

Tags: ,

Spolsky Rails On Ruby

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 

I’ve been a fan of much of Joel Spolsky’s writings for a while. I think some of his earlier work, like the “Law Of Leaky Abstractions” is simply brilliant (and entertaining too). But, that was way back in 2002 and both the volume and average quality of the posts has deteriorated over time. But, no big deal. He’s got a company to run, and I understand how that goes. I’ve been writing consistently for my OnStartups.com blog for almost a year now, and I’ve had my good weeks and bad weeks.

However, one of the recent Spolsky articles caught my attention: “Language Wars”. There’s a lot of thinking in the article that I agree with. But, in certain areas, I found the message overly trite and simple. Don’t get me wrong, I personally do not use Ruby On Rails for my own startup, but I know several smart technical founders of startups that did choose RoR and are happy with their choice. For specific types of applications, RoR provides an important productivity advantage. To dismiss the entire language and framework out of hand simply because it is new seems a wee bit extreme. Though I think there are tradeoffs, and I agree with Joel’s point that there is an advantage to “using what you know”.

But, it’s not the whole Ruby thing that really bothered me in the article. It was the reference to Joel’s own technical choices for his flagship product FogBugz. I’m not a FogBugz customer, but from what I know, it is a usable and often praised issue tracking system. What really struck me was that Joel chose to build his own compiler in order to build FogBugz. For someone who is looking to make “safe” choices, this seems to fly in the face of that direction.

The justification offered for building his own compiler comes down to this:

  1. Though the application is web-based, he needed to ship it to customers as it is not a hosted product (i.e. customers run the software in their own evironments).
  2. He needed to support multiple operating systems

Now, I could be wrong here, but these don’t seem to be particularly arcane requirements (i.e. there are likely tens of companies out there that have this need). Also, from what I know, FogBugz doesn’t seem to be a particularly complicated product that would justify a domain specific language in order to abstract the complexity.

Maybe I’m missing something, because I’m reasonably certain that Joel’s a really smart guy. But, to dismiss things like Ruby On Rails and in the same article claim that it was the right path to build your own compiler to create an issue tracking system seems a little misguided.

What do you think? Am I off-base here?

Tags: ,

Fearing Google: Why Businesses Should Be Worried

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 

Google continues to be the undisputed champion among web search engines. As such, many businesses (particularly small businesses) rely heavily on traffic from Google to drive traffic to their web sites. For many, this Google-generated traffic is a major source of revenue. This has resulted in an entire industry devoted to the practice of optimizing websites for the Google rankings.

The more I think about the whole Google ranking thing, the more concerned I get that Google has a little too much power that goes unchecked.

I compare this somewhat to your personal credit rating. I’m not sure how it works elsewhere, but here in the U.S. your credit rating is used for a number of things – like your ability to get loans. As such, it’s a relatively important number as it impacts your financial future. The credit rating is calculated based on your past financial history. You have the right to know when institutions are inquiring about your credit rating and also to see a report on what has impacted the rating (positively or negatively). Should you find an error in your record, you have some recourse to try and get it fixed.

Unfortunately, despite the fact that the Google Ranking may be even more important to you than your credit rating, there is little that you can discover about your ranking calculation and little recourse you have if something is wrong.

Google as Judge, Jury and Prosecutor

  1. Disclosure: Should you have a right to know how your Google ranking was calculated? There is a general consensus about the key elements of the algorithm used. But, should you be allowed to at least know what historical “facts” are being used in the calculation? What if they get it wrong?

  1. Disputes: Should there be an error in a piece of data used to calculate your Google ranking, should you have some way to dispute the calculation and get it resolved? Should Google have any obligation to investigate these reported errors – and do a little more than send you a form letter?

  1. Arbitration: Should you and Google ultimately disagree on the calculation, should Google really be allowed to be judge and jury? Or, is it acceptable that they can decide to do whatever they want (or ignore disputes completely)?

  1. Blacklisting: Do you know for sure that issues you have with one Google product (such as AdSense) does not negatively impact your rankings? If you have ever had an AdSense account that was terminated (rightfully or wrongfully), does this influence your Google rankings for that site? Should Google be able to blacklist a site permanently at their discretion? Will I get blacklisted for simply writing this? How will I ever know? Chances are, if I apply for other Google partnerships (like AdSense), my rejection letter would be polite, but ambiguous (just like everything else that comes out of Google).

  1. Malicious Actions: Should you be the target of a malicious attack by a third-party (such as a competitor) that has deep knowledge of Google’s algorithm, can they significantly impact your Google ranking? How would you know? What could you do about it?

Overall, my issue is simply that Google has acquired a lot of power and can directly impact a lot of businesses. Though their corporate mantra is “Do No Evil”, is this sufficient to give us the comfort and confidence we need? What if Google makes a mistake? Issues with the AdSense program abound. Many people seem to have been wrongfully terminated (see Times Online Article), without any warning or recourse. But, with the Google search ranking algorithm, you could be being penalized and not even know it. Worse, the penalty could have come through know conscious act of your own – and could even be from a malicious third-party. You would neither know nor be able to fix it.

I understand and appreciate that Google is an independent company and that we as consumers use their service “at will” (i.e. nobody is holding a gun to our heads). But, anytime an organization amasses the kind of power that Google has now, it may be meaningful to think about the implications and whether any minimal controls should be put in place to ensure fairness and transparency.

But, I’m likely just dreaming here. What do you think? Am I being overly paranoid?

Tags: ,

Book Review: The Broker by John Grisham

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 


I was on vacation last week and decided to take “The Broker” with me.  Having been in grad school for a couple of years, I hadn’t read much fiction recently so thought I’d start getting caught up.

Must say, despite being a “guilty pleasure”, I didn’t find this book all that pleasurable.  Insufficient plot, characters were OK.  I find myself being somewhat bored through about a third of the book as not much was happening other than the fact that the lead character was hiding out in Italy.

Not much else to say.  Though I’ve liked some of Grisham’s prior work, this one just didn’t do it for me.

How Game Theory Explains Lack Of Link Love

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 


Warning:  This is very basic game theory, so if you’re expecting an exhaustive analysis, you’ve come to the wrong place.

The phenomenon we’re trying to analyze is that of “link love” between websites (primarily blogging sites).  Link love, quite simply, is when some website links to some other website.  I’m not talking about reciprocal relationships whereby both sites agree in advance to link to each other, but the random, unplanned case.

Let’s assume we have two players in this game.  Player A and Player B (like real game theorists, my creativity when it comes to naming random characters is astounding).  For purposes of our discussion, we’ll assume that both players are behaving rationally and in their own interest.  We’ll further stipulate that “in their own interest” means increasing their search rankings through engines like Google.  Clearly, there can be other things the players are interested in, but I’m writing the hypothetical, so I get to make this crap up.

Player A and Player B both manage reasonably popular websites and write content for them.

At some point, Player B happens upon Player A’s site and finds the content there of interest (Player A is writing on a related topic).

So the question is, what will Player B do?

Here’s an approximate line of reasoning:

How Player B might think of this (we’re in the mind of Player B, who is talking to himself):
  1. I like the content over there on Player A’s site.  It’s good stuff.  I’m going to give her some link love and link to her.
  2. In a small way, this helps Player A increase her rankings – which is a good thing for her.
  3. Perhaps someday, she’ll see some traffic from my site, and reciprocate by linking back to me.
  4. This will raise my search rankings.
  5. But wait…when Player A already has a link from me, she is benefiting by the search ranking increase.
  6. If I were Player A, would I reciprocate and link back?
  7. If she did, then the value she would be getting from my inbound link would be diminished by linking back.
  8. I read somewhere that Google penalizes these kinds of “back and forth” links (so it reduces the impact of the linking either party gets).
  9. So, if I were Player A, and I saw this inbound link, I’d leave well enough alone.  Simply by reciprocating, I’m diminishing the value of it.
  10. So, Player A won’t link back to me – it’s not on in her interest.
  11. So, I’m not going to link to her, because by doing so, she is less likely to link to me than otherwise.
  12. And even if I did, the best I’m going to do is come out “even”.
  13. I’d rather just wait for her to find me, hope that she doesn’t go through this same line of reasoning and links to me.


Big Warning:  This is a gross, gross oversimplification.  There are lots of other variables at play – and I don’t claim to understand the details of the Google algorithm.  But, I think a mini version of the above “game” goes on all the time.  There are variations of the game (especially when there are more than on two players).  Complexities arise also when the two players are asymmetric (i.e. one is an “A-list” blogger and the other is not).  

$100 Reward for FeedBurner "Flare" for Reddit

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 


I’m a user of FeedBurner’s excellent RSS service for many of the blogs I write or host.

I’ve also become fond of Reddit (partly because they’re local Cambridge guys and are really nice).

I’d love to put these two pieces together and have a cool FeedBurner “flare” that can be used to track/submit to Reddit.  Similar to the Digg one that does a similar thing.   If you don’t know what a “flare” is, or are not a FeedBurner user, you can safely ignore this article.

I’m offering a $100 reward (via PayPal) to solve this problem.  I’d do it myself, but have too much other stuff going on.

Here’s a link to the API:

http://www.feedburner.com/fb/a/api/feedflare

My only requirements for the $100 reward:
  1. Has to work and show the current reddit “points”
  2. Has to be developed in ASP.NET (with source)


First person to submit a working Reddit flare that meets the two above points gets a $100 to their PayPal account (and my personal thanks).  Simply comment to this article or on Reddit itself if you have something working.

Thanks to those that give this a shot.

David Hansson (RoR) Matters More Than Michael Dell?

Submit to Digg digg it | Submit to Reddit reddit | Add to delicious delicious | Submit to StumbleUpon StumbleUpon 


Business 2.0 had an article today naming “The 50 People Who Matter Now”.  These are what they call “the most important people in business”.

http://money.cnn.com/2006/06/21/technology/50whomatter.biz2/index.htm

From the article: The names presented here weren’t selected on the basis of fame, net worth, or the accomplishments of yesteryear.  Instead our goal was to identify people whose ideas, products, and business insights are changing the world we live in today…”

On the list, at #34 is David Hansson of Ruby On Rails fame.  I can’t figure out why.  Don’t get me wrong, I accept that Ruby is a very elegant language (but David didn’t create that) and from what I have seen of Ruby On Rails, it is a well thought-out framework that goes a long way towards making web development fun and productive.  But, I have a hard time accepting that this warrants inclusion in the list of the top 50 people that are “changing the world we live in today”.  Is building a web development framework (however elegant) on top of an existing language (however cool) really enough to be considered to be on of the most influential people in business?  Though RoR has an almost cult-like following, does it really matter all that much?  Outside of 37signals (where David is a partner), are there any other products built on RoR that are somehow changing the world and how we experience it?  Does RoR cause non-programming types to all of a sudden want to build great software that wouldn’t have done so otherwise?  I don’t think so. 

What makes this even more troubling is that the magazine went on to specifically name people that they think don’t matter.  Ken Kutaragi, the president of Sony Computer Entertainment is listed as one of the people that don’t matter.  Their reason?  Because the PlayStation 3 is late and Sony is launching another format war with its Blu-Ray high-definition video disc.    Others that “don’t matter”, according to Business 2.0 are Steve Ballmer (CEO of the largest software company in the world) and Linus Torvlalds (creator of Linux).

Nowhere on the list are any academics, researchers and authors that are changing how business is done and teaching the business leaders of tomorrow. 

Somehow, my guess is that if you randomly polled thousands of business leaders, few would even know what Ruby On Rails is or who David Hansson is.  
All Posts