From: Jay Levitt Date: 2007-10-05T09:30:05+09:00 Subject: Re: Recent Criticism about Ruby (Scalability, etc.) On Fri, 5 Oct 2007 06:41:13 +0900, Chad Perrin wrote: >> It isn't. Elsewhere in this thread, in fact, I was arguing that programmer >> productivity is far more important to orders-of-magnitude scalability than >> raw language performance. I agree with you on that. Where I disagreed was >> that it was realistic for "many purposes" to assume linear scalability. >> Show me any site design and I'll show you a dozen places it falls over at a >> few orders of magnitude. > > Show me where it falls over at a few orders of magnitude, and I'll show > you software that is being misused -- or, looked at from the other > direction, miswritten -- if it's being written well at all. If it's not > being written well at all, that's pretty much irrelevant to my point > anyway, since poor software development can kill anything. Then I'm afraid we just have to disagree. My experience scaling a site from five hundred simultaneous users to three million tells me that everything - *everything* - falls over at a few orders of magnitude. I would be curious to hear your experiences where it didn't. Now, granted, the state of the art has advanced quite a bit in the past decade, to say the least. So maybe you're just used to working with software that's already been rewritten to handle eBay-sized needs, and as far as you know, it's always just worked that way. But it didn't. When I was playing this game for real, instead of on a newsgroup, abso-freaking-lutely nothing scaled that way. I'm not talking toy software; I'm not talking homegrown software. I'm talking HP-UX. BIND. Sendmail. MMDF. Apache. Solaris. Cisco. Stratus. Tandem. Auspex. Network Appliance. EMC. Various TCP stacks. Various filesystems. Sybase. Oracle. Informix. In short, just about everything. We never ran an OS or a piece of software that we didn't have to modify, or get the vendor to modify, at least once to handle the load. If you want to just write off all that as "bad software" by definition - hey, if it didn't scale, it's bad software! - then you're missing the point. Even if it *is* bad software by today's standards, it certainly wasn't at the time. Which means software that we think is good today may, in fact, not be. Which means: You need more than pithy sayings about business plans to write scalable software. Again, I'm curious to hear your real-world experiences, since they differ greatly from mine. Maybe everything's changed now. Tell me some stories about what didn't break. -- Jay Levitt | Boston, MA | My character doesn't like it when they Faster: jay at jay dot fm | cry or shout or hit. http://www.jay.fm | - Kristoffer