I thought it might be a good idea to make a little post about the first few days of whoisi just to give people a sense of how things are going on the backend here.
First of all, holy crap. Frankly, I had no idea that people would be as interested as they are. I knew I had a kind of quirky and weird idea and that it would be compared to a lot of other services that are out there but I had no idea the kind of response that I would get. It’s still a very very small site by any standards that I’m used to (since I work on such a huge project my sense of scale is way off) but it’s been pretty awesome to see the reactions and the pickup in the techie-web-2.0-bubble-conversation-cloud and watching on summize has been fun. It’s clear that a lot of people are in it for the gold rush without really understanding it but there are a lot of people who are learning how to use the site and, bugs and performance aside, are having a really good experience with it.
I wrote down a couple of numbers just as I was publishing my announcement blog post. When I posted, there were about 473 people on the site, the vast majority of whom I added myself. As of this writing there are about 2253 people now listed on the site. I suspect that’s mostly people adding themselves, but not entirely. There are clearly people using the site to follow large numbers of people and adding their friends. Not a huge number of people, mind you, but quite a few. I should have some numbers to share at some point on that. It will be a laughably small number if you’re used to google or friendfeed or facebook but for a guy who wrote this on weekends and nights I’m pretty happy with it.
Want to have some fun? Just sit there on the site and click on the Random Person link. When I used to do this all I would see was my friends. Now I get all this great random content. So frigging cool. It’s my favorite whoisi feature at the moment. I recommend investing a half and hour and just enjoying whatever people are doing.
Some notable quotes from tech folks:
- Dave Winer really liked it and did a post on it including a great little twitter about it and a followup converation on FriendFeed. (After that post I was really glad that I spent much of last week doing perf work on the web site before announcing it otherwise it would have been crushed.)
- Leo Laporte really seemed to enjoy it and got the sense of it right out of the box.
- On Friday night at 5pm, just I had just stepped out of the house after doing some tuning on the box to try and keep it alive for a few more hours, TechCrunch did a post about it. I was nowhere near a computer. Being on TechCrunch is great, except that spike in traffic meant that every single person who probably tried it from that article would have had a “holy crap, why can’t I add myself and why is it so slow?” experience. (Since then I’ve done even more work and it’s back to acceptable for now. More on that later in the post.) It also means that I have an entry in CrunchBase which is pretty neat in that silly self-serving ego kind of way. It’s neat to have an article up there, though.
-
I really liked this post from Christopher Clay because I think he really understood the model and what it might mean down the road. The potential is there for all those grandiose things he mentions, I guess, but mostly I’m focused on trying to make good and fun experiences for people. Anything else is just a side effect of that. (For the record, I’m not happy where whoisi is on that road yet, tons of stuff left to do, but it’s on the right track.)
So what has changed in these last few days?
Since it’s a weekend and night project for me I did a lot of stuff this weekend, but I wanted to call out a few people who really helped me out:
- Mrinal Wadhwa, who basically pointed out what was causing the most serious bug on the site. If you were having problems adding yourself and getting a response saying that your url belonged to someone else you never even heard of, this is the guy who figured out what was causing it.
Shane Bishop who pointed out a problem from the login later/follow page that would cause a random 500. I think that a lot of people saw this, sadly. But he gave me a really good bug report to work from.
-
Shawn Lauriat, who found an XSS problem on the site, which I fixed, and then he found another, and I fixed that too. Then I went through every single template on the site with a fine tooth comb and then again and then went through them again. So I’m pretty confident at this point. But he is the guy who pointed them out, which is great, and continues to test. Go Shawn!
-
Joe Shaw, the lovely number 6, let me hang out on his couch Saturday afternoon and work on performance issues.
- And my wife, who has to date not cut me with a knife in my face area given all the time that I spent on it this weekend when I should have been hanging out with her.
This isn’t the oscars. What changed?
I actually got a lot of stuff done this weekend, but not a huge amount of it is user-facing (other than the fact that it should actually be able to keep up for at least a while.)
When adding new people you get really weird results of other people who supposedly own that url. This problem was two fold. First, whoisi tries to figure out if there’s a duplicate person on the site already based on the urls that it sees. A person-id is a scarce resource and once you allocate that number it’s hard to change to something else so getting that right up front is important. Given that, one of the things that it does is look at the urls you pass in a look for matches. It also took the preview feed that it downloads and looks at the links in that to see if there are duplicate matches vs. other people. This actually worked really really well until people started adding del.ico.us bookmarks and google reader feeds to the site which include links to other people’s sites, making it look like ownership. So needless to say, I ripped that out at about midnight tonight. Clearly, I didn’t think that one through. Once again, thanks for the excellent reports that helped track this down.
Backend performance enhancements. Right now I’m basically completely bound to CPU performance based on how fast I can poll sites. The algorithm, as I described in a previous post, is pretty braindead and a lot of it still is. But at least it’s faster braindead. That’s what I spent most of the weekend on: buying myself some headroom for the future. We’ll see how long that lasts.
Fixed the XSS problem that was found. As I mentioned above, I spent a lot of time auditing code and I think that I found the problem areas. If someone else finds something, let me know.
Fixing broken HTML that was on the site. There were some missing closing div tags on some of the objects on the site. Frankly I’m amazed that things rendered at all, but those are fixed now. Also added a background color for the page for those crazy people who change that setting.
Added an error message so that if you go to the follow page and the people you’re following don’t have anything posted it lets you know what’s going on. This is that 500 that a lot of people were seeing. Lots of people added one person and went to the follow page. Bam, 500. Whoisi doesn’t show you stuff that is in a person’s timeline when they are first added. (This would cause an explosion on the everyone page, for example.) So you have to wait for them to start adding things before things start showing up on the timeline. So I added a page that explains that.