This is the story of my first encounter with giving people what they want, marketing, the power of exponential growth, and providing the best service. It is also the story of how I learned to not depend on infrastructure that was controlled by people whose goals were not aligned with mine.
To Set the Scene
Let us take a trip back to my sophomore year in college. Napster had just gotten shut down, Kazaa was the file sharing equivalent of a war zone (where an innocent looking DIVX download of a file named something like “Gone in 60 Seconds.avi” might end up being a snuff film), and BitTorrent was a mostly un-used infant technology. What did exist, and worked pretty well, was a piece of file-sharing software named Direct Connect: http://en.wikipedia.org/wiki/Direct_Connect_(file_sharing). Direct Connect consists of client software, server software (called hubs), and some number of central servers which contain lists of hubs. The main list (at least the one I always connected to) had maybe 200 hubs and each hub contained anywhere from 0 – 500ish clients. The idea of DC is that a user signs on with their client software and rather than connecting to a central server, à la Napster, they pick a hub from some list. Once the user is connected, the hub handles search indexing, chat multiplexing, etc, etc.
In the Beginning
It was fall of 2001, I was 18, and after a summer of waiting tables for $7 – $10 hour (including tips) I decided that the $2000 I had left was burning a hole in my pocket. Naturally that meant that I should build a new $2000 computer. So, I started with a 1400 Mhz AMD K7 with 133 FSB, threw that in with an entire Gigabyte of “DDR” ram (WOAH a Gig!), added an ATI Radeon All-in-Wonder card w/TV Tuner & Video capture, bought a $400 20″ CRT monitor that weighed at least 50 lbs (while overheating my room), and then headed off to school. The previous semester a friend of mine from WPI had introduced me to Direct Connect. I thought it was cool, both the file sharing aspect and the community aspect, so I decided to spin up a hub on my new machine. For the first day or two I had anywhere from 0 – 5 people on at any given time and I was a little disappointed that I wasn’t getting more traffic. This wasn’t a business venture, I wasn’t trying to make money, I just wanted the community. So I said to myself: “self, how can I get more users?”. The answer I came up with was pretty simple: “Well, self, why don’t you make sure that your hub has the things that people want.” This was a very simple idea, and one that would turn out to be pretty powerful (once I got the word out).
So what did people want?
I fired up DC++ and spent a few hours spelunking around the DC server list. I took a look at the top hubs for trends that might indicate why they became popular. I went onto the chat rooms and watched what people were asking for. From this research I noticed that the hottest items were 3 pieces of yet-to-be released software.
- A release candidate developer preview of a cracked version of Windows XP
- The video game Aliens vs. Predator II
- and finally the game Civilization III.
So I took the time to find all 3 of the installers, download them, and verified that they all worked. This took me a day or two because the most popular hubs were capped at a certain number of users so it was hard to connect to them and it was hard to find these pieces of software anywhere but those most popular hubs. I then stuck the installers on my machine, connected to my hub, and waited for the flood. It never came.
Ohh, you need to tell people what you have?
With my new software offerings I was doing a better job of retaining users, but not a very god job of growing. Now the 2 – 3 new users who went to me hub each day would say, but after a week that rate of 2 – 3 new users had only climbed to 4 – 5 new users a day. The problem was the obvious oversight that I forgot to update my hub description after upgrading my service offering. So I put a “Guaranteed to have AVP2, CIV3, and Win-XP” in the description of my hub, connected to a few of the more popular hubs that didn’t seem to have AVP2/CIVIII/XP, threw a message out there that I had those things, and went to bed. The next morning I woke up with 50 users (the 25 I had previously, and 25 more). I was like “wow, cool… it worked.” I went to class, came back and had 50 more users. “Awesome, more then twice as many as this morning” By that night I was up to 200 users and noticed that this growth was progressing exponentially. After a day or two I had joined the other people are the top of the hub list with my user cap set at 500. I also noticed that this wasn’t smoking my machine, and I still had adequate network available to do more.
Sitting at the Top
I was on a college network, meaning my up/down rates were actually set by the hardware (a guaranteed 5Mbit) rather than arbitrary cable company caps (whose upload caps were, at the time, typically in the 1Mbit range … and not guaranteed) I had the network capacity available to beat the competition. I had also just build a new machine that summer (and no one on DC was sitting there with load balanced server farms) so I was able to handle more requests and index more clients than anyone else. After running at 500 users for a few days, with no noticeable degradation in service, I decided to bump it up to 600. Still no degradation, lets try 700. Eventually around 800 users I noticed that my machine still wasn’t slowing down, but I had taken up available network capacity. So I kept things at 800 and had what was, at the time, the largest hub in the world. As an aside, I just took a look at some current hub lists and the “Maxusers” attribute in the xml list files are set as high as 15,000 for newer machines with good connections.
Providing Better Service
Now that I was on top, I wanted to enhance my service offering so that my users were getting the best without having to leave and go elsewhere. We brainstormed a few ideas (I say “we” now because I had cultivated a set of about a dozen “ops” [think moderators] who would help me run the hub) and ended up doing things like recruiting other hubs to be part of the “UMT” network and handle overflow, coming up with lists of must-have software/divx movies, and making sure that discussion in chat was not going south or being overtaken by spammers. I like to think that our hub developed a pretty good reputation in the community. From there things got pretty ridiculous. I was an athlete in college and my coach asked me to supervised the varsity weight room at night. One time I was walking through there and I overheard a conversation where a couple guys were talking about how the umassthrower hub had all the best stuff on it. I mentioned that it was my hub and they both looked at me start struck. I guess that moment was my 15 minutes of fame.
And the Cracks Began to Show…
After my machine was accidentally shut down one afternoon while I was at class or practice, I came back to a ton of emails/IMs with my ops trying to get a hold of me. I rebooted the machine, everything was fine, and by the next day I was back up to 800 users. In the meantime, my ops were legitimately angry at me for the two hours of downtime. In fact they even insisted that I needed to give them my cell number so that they could call me if the hub went down when I wasn’t around. It’s somewhat astonishing how much people care about free services in which they have invested a significant amount of time. Thanksgiving break was where I saw the writing on the wall. I lived about 120 miles from school and went home for thanksgiving on Wednesday. Over the weekend the hub went down and I didn’t have any means of getting it back up. I went back to school on Sunday and my machine was off (must have been a powerfailure?) so I booted it up and watched as I went back up to about 200 users that night. But over the next week I only went back up to 400 users and never again reached that 800 mark. I knew that Christmas break was coming, it was December now so I was in season for track, and I knew that the hub wasn’t going to stay up through the 5 weeks I would be gone. I also knew that my parents cable provider was not going to be able to handle the upload rates necessary to index that many users. Finally, I had started to come to the realization that I could get royally fucked by providing this free service. There was some news of the first few college students getting hit with huge lawsuits… and loosing. My family was not well off and outside of a 1985 F250 that I had bought for $500, I had nothing of value to be sued for, but the idea of a $250,000 judgement against me for doing something as seemingly innocent as sharing a file was a little concerning. So I prepared for things to go away… and they did.
Half way through break my machine, which I had left in the dorm to give people the maximum amount of time they would have left with my hub, got disconnected. When I started my machine up that spring semester, for some reason, I wasn’t able to get on the network. I went down to OIT (Office of Information and Technology) and waited in line for help. When I got to the front the person asked for my student ID (still SSN back then, lol) and after punching a few things in asked me to step over to the side and he called a supervisor over to talk to me. They had shutoff my network access due to me using up too much off-campus network resources (surprise, surprise). Turns out I was the biggest offender on campus for eating up off-campus bandwidth, and I was responsible for 6 terabytes of off-campus data transfers that previous semester. At current rates that would have cost them about $750, but it was probably more expensive back then. I didn’t have to pay because I didn’t break any official rules. They hadn’t written the rules about off-campus networking until that semester, and the spring was the first time that they were going into affect. But, the paperwork I had to sign said I promised to stay under 1GB/day of off campus transfers. Faced with the prospect of having to pay real money, that I certainly didn’t have, to keep the free service alive and the possibility of being sued for providing that free service I closed up shop and resigned myself to the idea that “it was fun while it lasted”.
In case you were wondering I had nothing to do with i2Hub, the service launched by another UMass CS student. Wayne Chang
was a branch of direct connect that was closed to anyone who wasn’t on a whitelist of certain university IPs. I think I used the service once or twice, but I pretty much stopped filesharing after my hub was gone and students started getting sued. In the end it was probably best that my hub got taken down as a number of UMass students and Wayne himself ended up having to deal with a lawsuits related to file-sharing.