Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • Hi, chromatic. I work on Delicious, and I've been with the site since before Yahoo! bought it.

    Delicious was not merely migrated. It was redesigned and rewritten from the database up. Several months of development were spent in design and QA (we were in limited beta since September [delicious.com]). The additional forethought and care were warranted since a lot of people rely on us every day.

    Delicious was originally designed for a relatively small number of people. It has been extended, patched, optimized, sharded

    • Why did you throw away everything, though? You could have fixed the architecture without changing languages.
      • by dngor (3383) on 2008.08.07 2:30 (#64246) Homepage

        Why did you throw away everything, though? You could have fixed the architecture without changing languages.

        Oh, sure. Everything is just a Simple Matter Of Programming. :)

        PHP on the front end was an administrative requirement. Switching the front end to PHP did not unduly extend our development time. I'm free to tell you this because our founder has already said as much in the surprisingly balanced reddit thread in response to James' article [reddit.com].

        We considered simply bolting a PHP front end onto the original site, but it was not practical. The original user interface was tightly coupled to the site's business logic, and we estimated that the effort to extricate them would be on par with redesigning them. Also, putting new lipstick on the same old pig would not have improved scalability. We still would have needed to rewrite the back end.

        Among other reasons, we chose C++ for the new back end because runtime performance was an overwhelming design goal. Perhaps a really good Perl implementation of the site could have changed people's minds, but we didn't have one to point at.

        Unfortunately I need to be writing this up for our blog rather than in bits and pieces around the web. Any further answers will have to wait, but questions are certainly welcome.