[FoRK] Who needs efficient code?

rst at ai.mit.edu rst at ai.mit.edu
Fri Jul 30 09:20:28 PDT 2010


Eugen Leitl writes:
 > On Fri, Jul 30, 2010 at 10:40:40AM -0400, rst at ai.mit.edu wrote:
 >
 > > The quoted paragraph was written by ex-Twitter API lead Alex Payne,
 > > who doesn't blog for The Atlantic; he was quoted by some other guy who
 > > does.  Payne's obviously talking about Rails, which his (former)
 > 
 > I wonder why they would consider Rails in the first place.
 > I'm just an egg, but I know I wouldn't be using it if I
 > expected the result to go places eventually.

They weren't trying to build Twitter at all.  It was a slapdash side
project of a company that was originally formed to do something else
entirely (Odeo --- Ev Williams's podcasting venture).  If they'd been
unwilling to deploy the thing until they knew how to scale it up to a
hundred million users, they never would have built it in the first
place.

 > > It's, of course, possible that Alex Payne doesn't know what he's
 > > talking about, but it's not obvious to me why you'd think so.  Was
 > > there something else in the Atlantic post that you meant to call
 > > bullshit on instead?
 > 
 > I definitely take offense at 
 > 
 > http://al3x.net/2010/07/27/node.html
 > "
 > In a system of no significant scale, basically anything works.
 > 
 > The power of today’s hardware is such that, for example, you can 
 > build a web application that supports thousands of users using 
 > one of the slowest available programming languages, brutally 
 > inefficient datastore access and storage patterns, zero caching...
 > simply because the hardware can move faster than your bad decision-making.
 > "
 > 
 > Stated so generically, this is not true.
 > 
 > He doesn't say how heavy-weight each user session is. ...

<daffyduck> Oh, I see.  Quantifier trouble. </daffyduck>

If you read the statement as "you can build *any* web application 
up to thousands of users with slow languages, bad datastores, and
so forth", then he's obviously wrong --- all the more so as he's
got real-world experience to the contrary (as he alludes to more
than once).

If, on the other hand, as saying that "you can build *some*
[real-world, useful] webapp on bad technology, and throw thousands
of users at it without the thing falling apart" --- well, I'm sure
we could both cite several real-world examples.  

(I'm tempted to risk a slight generalization: anything which can be
built on an rdb, under the constraint that each request reads at most
a few hundred rows, and writes at most a few dozen, has pretty good
odds at these scales, no matter what technology you choose.  There are
plenty of perfectly reasonable jobs that can't be done under those
constraints --- but plenty of others that can.)

I think it's obvious which looks to me like the more reasonable
interpretation, but even in context, I guess it is ambiguous.
But that's English for you....

rst



More information about the FoRK mailing list