Egg Drop Soup

Introduction / History

Here’s a guilty pleasure: http://dragcave.net, a “click to grow” adoptables site.  It’s a somewhat pointless and spammy website where users click on colorful pictures of eggs to collect them, then repost those images on other websites to gather unique views from anyone else who sees them.  After enough views, the egg hatches and grows up into a full-sized dragon.  So it’s got kind of a viral effect – the eggs get reposted to forum signatures etc. where other people click the eggs to find out just what the heck is the point, and then some of those people stick around to collect eggs and spread them even further.  It grows itself.  There are a ton of adoptables sites out there – Dragon Cave is just the one my wife found first, and by extension it’s the one I joined.

Somewhere in the history of adoptables sites, a user figured out that there was an easier way than spamming message boards to gather a large number of views: simply set up a huge “egg dump” area on a dedicated fan site, and ask users to come view the eggs and post their own.  For Dragon Cave three or four popular fansites had cropped up by mid-2009, designed by budding webmasters with varying degrees of aesthetic and coding skills.  That’s about the time that I decided to set up my own, just to see what was involved and how successful it would be.  So: Egg Drop Soup was born.

http://greg-kennedy.com/dragcave

The entire site is coded in PHP, and the earliest version screen-scraped everything from the bare HTML code to do the work.  It all felt like a hack, with the site design geared fully towards functionality and a minimum of flashy web content.  For whatever reason the site caught on .  A few whiz-bang features, plus the fact that several big-name fansites folded when an unannounced API change came through, boosted the site to about 5000 users at its peak.

Recent Progress

I’ve spent the past few days on a mild resurgence in EDS development.  Dragon Cave has an officially supported API which makes screenscraping obsolete, but I hadn’t ever ported over the pages to use the new features.  Since the HTML had changed in the meantime, this meant a lot of annoying bugs had crept in.  So step 1: port the code to use the API.  Once that was complete, I added a long-missing “Emergency Room” feature: this prioritizes the eggs in danger of expiring at the front of the rotation, so they gain a massive infusion of views and hopefully promote to adulthood (and immortality).  There are a couple of other features in the works, but I feel I’m nearing the end of what I set out to do with this project, and it’s going into maintenance mode unless some inspiration strikes me.

Okay, so this is a pretty boring post, but I wanted to make it for a couple of reasons.  First, it helps me to keep track of what I’ve been working on – this blog exists to categorize my projects, and since I’ve sunk a good number of hours into this one, it warrants a mention.

Second, I’m seriously considering open-sourcing the code to the site (BSD 2-clause license).  I don’t feel there is much danger in userbase loss to clone sites, because being an established name in the DC community is as much (if not more) a driver as features.  People simply gather where everyone else gathers, because that’s where the views are.  So if someone throws out “EDS 2” on stock code it’s no real threat to me.

Instead, I think this would help out a lot of struggling devs on the site by dropping a full-featured codebase on them.  I’ve seen at least one forum post where people are discussing the technical details of setting up a hatchery.  I think EDS is a perfect “skeleton code” example, because it really focuses tightly on making things work, and leaves the web design to the imagination… or the future adopters of the code.

Leave a Reply

Your email address will not be published. Required fields are marked *