Shirky On Umbrellas, Taxis And Distributed Systems
There's a good article from Clay Shirky talking about the similarities between umbrellas, taxis and distributed computing. And if you really want more P2P than you can shake a fork at, the folks at ORA have also released an excerpt from the upcoming Dornfest and Brickley book.
Modern world.
Distributed computing allows finer weather predictions, which in turn tells you when you won't need to bring an umbrella, hence saving the energy it takes to carry an umbrella. Unfortunately, all these distributed computations suck enormous power from the power grid, hence the need for taxis when the subway is out of power.
--
Firstly, the algorithm must be parallelizable. This means that it should be possible to split an algorithm which normally takes N time, across a number of, say P processors, and have it take less than N time, and ideally N/P time.
Secondly, the algorithm must have minimal communication requirements. Rendering, for example, is parallelizable, however in most modern rendering applications each computer would need an entire description of the scene being rendered. This could be a huge amount of information, running into gigabytes, yet it would need to be distributed to every participant in the rendering process. Recall that in most distributed computation applications connectivity will be limited to a 56k modem which is only connected to the Internet intermittently. Even if you limit users to broadband, communication bandwidth is still a problem.
Thirdly, the algorithm must be robust, if someone decides to screw things up, and hack their client to send back malicious data (as happened with Seti@home) they must not be able to invalidate the work that everyone else has done. Ideally there would be an easy way to validate the work done by each client in the system.
Now, I am not saying that there are no applications which do not conform to these criteria, for example, cracking crypto algorithms and processing information from space telescopes in search of intelligent life clearly work quite well - however neither of them can really be used to make vast amounts of money. The only other thing I can think of are genetic algorithms, but again, whether there is a revenue stream there is an important question.
Perhaps some of these distributed computation people have found a killer application for this technology, some of them certainly claim that they have, but I really wonder whether such applications will stand up to scrutiny on the grounds I outline above.
--
I'm presenting a talk at the O'Reilly p2p conference entitled "Attack Resistant Sharing of Metadata".
It's based on an idea of Raph Levien's, somewhat similar to the Advogato trust metric. Basically, you only trust meta-data from your friends, or from people whose meta-data has been good in the past, and then to a lesser extent you trust their friends, but you dynamically adapt if someone starts distributing bad meta-data. We can't really prove that it will work, but it has some promising characteristics.
We are going to implement it on top of Mojo Nation.
Regards,
Zooko
Fair cop, and I actually had a couple of paras in there to go a little further down that road, but I stopped because I was really doing 'order of magnitude' calculations.
For starters, the numbers were chosen to make the math come out nicely -- the average box less monitor is actually less than a grand, and the average machine is in service longer than 20,000 hours, which makes the nickel figure high.
Furthermore, if PopPower et al wanted to build a cycle farm, they'd use multi-CPU boxen, so the calculations get even more complicated. Finally, as we've seen in Cali, power requirements differ between consumer and business regimes.
So there are a lot of variables pulling the number this way and that, wiht an increasing degree of speculation, but sinece the real point I was trying to make -- your use of your PC has variable value to you between the hours you are and aren't using it, and that if you're using it, no pro-rate fee will induce you to stop -- would have been accurate even if the nickel number is low by a factor of 5, I left the back of the envelope calculation and went on.
-clay
True, but they can also save on multi-cpu boxes, paying less than $1000 for a chassis, and running a bok for more than 20K hours, so the nickel an hour is more a back of the envelope calculation designed to illustrate the gap between what they'd pay and what you'd take.
I made a similar point in another thread on this topic.
-clay
How does wanting a song create supply of it on Napster? Once you get the song, I get it, because in the future you will supply the song. But if there are k songs available on Napster and you add your m songs, there are still k songs available to you, not k + m, because you already have the songs on our computer.
Switch the . and the @ to email me.
I think that's precisely the problem. The things that we've found lend themselves well to distributed computing (SETI, cracking encryption) don't lend themselves as well to making money. What company wants to pay for either of the above two, let alone a lot of money?
That's not to say that P2P is already doomed though. I don't think that it's a technical problem at this point, I think it's a business problem. Someone has to figure out a problem that has two attributes: It must lend itself to being more quickly solved via distributed computing, and it must be something with such a high demand that someone is willing to pay big money.
It's very possible that P2P could take off...but I'm not holding my breath. Even if they solve the issue of "what problem is worth the money", there's still the problem of "who will let us use the cycles" and "how do we keep from getting cheated".
-Jer
I don't understand how the author came to the nickel per hour number.
Sure, the cost of the machine boils down to (by his math) a nickle an hour, but that's not the same cost as the company would have to take on.
A company would have to buy the system, hire the IT personnel, cover their benefits, store them, pay for the electricity, pay for the heating/cooling, pay for maintenance, parts if they break, warranties, etc. These (and more) are little things that a home user might not even consider when determining if it's "worth it", and makes the "break even" point much higher than a nickle per hour.
I'd like to see the same breakdown done with some more accurate math.
-Jer
I don't know about the rationale of umbrellas being small...I've walked through the financial district and seen a few people carrying beach umbrellas, I swear. They could cover a taxicab with these things, honestly. :)
www.HearMySoulSpeak.com
The ocean is full of gold, but no one has made a fortune off of it because the cost of collection exceeds the worth. The gold is dissolved in the water, and to get it you have to find a way to precipitate it out without getting all the other salts.
There are a lot of unused cycles out there, but they are cheap and so finely dissolved that the extraction process isn't viable.
Aah, change is good. -- Rafiki
Yeah, but it ain't easy. -- Simba
what does the Robotech Defense Force have to do w/ music? hmmmm
O you mean Resource Description Framework....
i always mix the two up..
nmarshall
The law is that which it boldly asserted and plausibly maintained..
nmarshall
The law is that which it boldly asserted and plausibly maintained..
--Colonel Burr 1783
Dornfest and Brickley are the authors of *that chapter*, see http://www.oreilly.com/catalog/peertopeer/author.h tml for a full list.
I think the article makes lots and lots of interesting points, but I don't really see how a company can expect to make enough money off of these spare cycles to say double my DSL capacity and pay my electric bill. If they get paid a penny an hour, and they get 21*24 hours, that's still only around 5 dollar, which is nowhere near enough to pay for what they want to give as an incentive.
Q:Doctor, how many autopsies have you performed on dead people?
A:All my autopsies have been performed on dead peop
One of the models of payment described in the article ( where you can bid for computer resources ), was described in a novel by Greg Egan called "Permutation City". In it there is a central exchange where you can bid for computer time for intensive tasks. At one point a woman who is using a simulation requiring extra computer cycles gets "bumped off", 'cause a consortium has out-bidded everyone at ludicrously high rates.
A good book (for other reasons as well). Unfortunately I managed to leave it in a Sydney hotel room.
Cheers,
SuperG
Although it doesn't rain as much in SF than NY, I find that when it does, I don't have an umbrella or a cab. Blows...
-Moondog
it strikes me as paradoxical that the line for a company to pay for time vs. buy themselves a new machine is so low (roughly a nickel/hr). No one would sell time for a nickel/hr, but companies still pursue this as an alternative to buying more boxes. perhaps i'm missing something, but this seems like an economical oddity.
--
fight global cooling
MusicBrainz aims to be an RDF schema for all kinds of music metadata, complete with unique identifiers for tracks, artists, albums, etc. It solves the "various artists" problem that tends to plague other systems. The main thing I don't like about it is the fact that it uses a custom protocol and query language, which shouldn't really be necessary since RDF is RDF is RDF.
I agree that "cycle-borrowing" apps are unlikely to be profitable, but there's a lot more out there. In particular, I think P2P content-distribution networks like Freenet and Mojo Nation have the potential to save lots of money.
Isn't this what the cue cat people did when they embedded serial numbers into their scanners?
It allowed them to start creating a metadatabase on you!
No search engine can work on a system of shared trust. A trust web can only be applied to smallish (in the hundreds) groups of publishers. Spiders hoping to index the entire web must take each page at face value, and hence are still spoofable.
Added to which, once we actually start paying for music downloads (its inevitable), there will be demand for reliable downloads. Hell, if I'm paying real money per song, timeouts and crappy connections are unacceptable. Once money enters into the equation, I want the media in a timely and efficient manner.
None of this matters in a future where everyone has fiber to the home, but we're at least fifteen years away from that being a reality for most citizens.
This is why search engines that work off of metadata typically give you porn links for almost anything, and why Yahoo can't be spoofed (their surfers actually visit the site to see what its about).
hmmm.. somehow my numbers got off there. 1. should have been that my numbers on RC5 give me bragging rights along the lines of "mine's bigger than yours."
Be ot or bot ne ot, taht is the nestquoi.
This hits the nail on the head. I'm willing to install the RC5 client on my machines for several reasons: 2. It's a project whose goals I more or less believe in. (SETI would be an even better match, but I ended up installing the dneet client first.)
3. I already installed it. Once it's been configured and set to run on my FreeBSD and linux boxen I can forget about it. More trouble to disable it or find a new distributed project, install that, configure it, and get it running on all my computers.
I think this article gets it right. The returns for me contributing my spare cycles as well as the effort to install and set up the clients is not worth whatever change they are paying. Like the article says, if they pay a nickel per processing hour, that takes roughly 2.28 years to earn a thousand dollars if my system is running the client 100% of the time at full processor speed. (I have no idea how much these systems actually pay, I'm just quoting the articles example.) The actual amount earned would actually be much less as I do various things with my system: burn CD's, play quake, write papers, etc. The long term return of pennies, or less than pennies on the hour makes me say that it's not worth it. And I suspect that without some higher incentive, like distributed.net crunching keys has been turned into a competition, most people just aren't going to take the trouble to signup for these paid distributed services. To have enough computers to make some serious money, you had to have enough money in the first place to make whatever they pay you small change.
Be ot or bot ne ot, taht is the nestquoi.
Therefore, I propose that projects such as Popular Power, etc., abandon the idea of paying individuals a few nickles for some amount of cpu processing, but instead pay the charitable organization of the individuals choice.
For example, you could sign up your machine on, i.e, Team FSF, and for every X number of opperations your machine computes for these distributed projects, a dollar would be donated to the FSF.
but the idea of someone paying my electric bill....
I gotta admit that I can see the potential for abuse on this one.
On the other hand, this comment tossed in at the end gives me the shivers:
As a moment of paranoia sets in, I can see MS adding this element to thereI do not know what it is, but I always seem to have this moment of distrust whenever I read something involving MS.
Then again, maybe the MS marketroids read Slashdot, checking it out for this kind of thinking, in order to get new marketing ideas that they can use.
;-)
"It is a greater offense to steal men's labor, than their clothes"
Are these guys ready to pay for foreign processing power too ?
If so, which companies ?
Dodge this !! --Trinity, The Matrix
It's worse than that from where I'm sitting. A cab is a form of transportation. People don't necessarily take cabs simply because it's raining. If people don't need to be somewhere, they won't take a cab, period. An umbrella is more analogous to a portable form of shelter rather than a form of transportation. I'm sure there's no shortage of shelter in New York when it rains. I think the cab thing is a matter of perception. If you're looking for a cab in the rain and you're getting wet, it pisses you off. but a cab isn't really like an umbrella.
Sorry this is a bit off topic, but I don't think the analogy works. Everyone instantly fills up the cabs yes, but nobody actually buys an umbrella because they already have one at home, and are too stingy to go and buy a second one just because they forgot it. So maybe in fact it does work but not in the way they intended it to...
Can't wait till they distribute chocolate this way...
Lousy facepalm.
I disagree with the basic premises of the analogy presented. The corporate buyer isn't buying the computer as such, rather, they are buying the processing cycles. Contrary to the article,a cash discount for the computer would be inappropriate given the nature of the good. Economists assume that producers (ie sellers of computer cycles) make decisions based on future costs and benefits; in this case the cost of the computer is a sunk cost (and a factor of production), and it has no bearing on the amount the "seller" of cycles should expect to receive. The "nickel per hour" model is invalid based on simple economics. A far more suitable model would be one where the price of computing cycles is not fixed, but floating, similarly to any other marketable commodity you'd care to mention and traded through an exchange. Any first year microeconomics student knows that in a free market, supply and demand interact to determine a fair price. So if I had to use my computer to write a report (or play Quake :) the price that would tempt me to stop and sell my computing cycles to a P2P company would have to be very high, however if I wasn't using my computer at all, I wouldn't mind selling cycles for a very low price.