Clay Shirky Defends P2P
richard writes: "Clay Shirky has responded to Jon Katz's article, Does P2P Suck?, (and a WSJ article published the same day) in an article titled "Backlash!" on OpenP2P.com. Shirky says: "P2P means many things to many people. PC users don't have to be second-class citizens. PCs can be woven directly into the Internet. Content can be provided from the edges of the network just as surely as from the center. Millions of small computers can be more reliable than one giant server. Millions of small CPUs can do the work of a supercomputer. ... These are sloppy ideas, ideas that don't describe a technology or a business model, but they are also big ideas, and they are also good ideas.""
Part of the problem is the public's mindset of 'consumer'. The Internet has the ability to promote the average person to an active role, but is being strangled by those who believe it is nothing more than television with a keyboard.
A lot of the community oriented services such as IRC and email have begun to erode that image, but there really haven't been any new truly successful technologies stressing community in years. The public has been sucked into this thing called 'the web' and been taught that's all there is to this Internet thing.
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
The risk of pandemic infection is present in any environment without diversity. In the computing world, we have more diversity than I think any sane person needs.
Of course, with every major advance we make there is always an increasing risk of mass destruction. There is an end to all things. Do nothing and an outside force will destroy everything. Do something and at least you are in control.
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
I never particularly liked the term peer-to-peer. I'm not exactly sure who originally coined it, but it seems to cause a lot of confusion with other technologies which sometimes piggyback ontop of it.
P2P, Distributed Aggregation and Distributed Computing are three separate but related things.
Peer-to-peer is simply a type of network where all nodes on the system are on equal standing with each other. There are no dedicated server machines, no dedicated client machines, but rather everyone is both a server and a client and they communicate with eachother as equals.
This type of system lends itself to a very interesting change in the way someone finds information. Instead of going to a place (e.g. slashdot.org) to get information, you go to the information to get a place.
Distributed aggregation is a method of intelligently locating and well, aggregating resources distributed among nodes across a network. Whether these resources are files, CPU time or disk space, the method of aggregation should remain basically the same. This fits in very well with the peer-to-peer model to provide each node with a simple way of locating resources on other machines.
Distributed computing is a method of using resources distributed among nodes across a network. Distributed aggregation can be thought of a part of distributed computing as you have to be able to find the resources to use them, but not all distributed computing systems provide or even need a method of handling dynamic changes in the network. Of course, distributed computing systems are not typically peer-to-peer. Individual nodes on the network rarely communicate with each other to share information, but instead handle jobs in batch fashion and push the results up to a central server.
Many have argued that peer-to-peer has existed on the Internet since time began and that all things are basically peer-to-peer. This is quite true in some respects. At the protocol level, machines communicate with other machines in a manner that can be considered peer-to-peer, but historically at the application level there have been a very clear line between servers and clients.
We currently live in a world where the majority of computers are nothing more than glorified dumb terminals utilizing only a small fraction of their computing power. My hope is that one day, the average person won't "use" the Internet, but instead "be" the Internet.
Of course, that's just my opinion. I could be wrong.
The world is neither black nor white nor good nor evil, only many shades of CowboyNeal.
I like the last one in particular:
As a testement to that my main "workstation" is a K6 233. Workstation is an exageration. I use the 233 mostly for www, and email. I have a more powerfull machine, but it is for games. What do you mean by "be the Internet"? I thought at first that it mean that each person can serve information directly to others. I think that we are pretty close to that now. Many of those people who want to, run good presonal web sites. So I have decided that "to be" the Internet must be something greater. Something that the cyberpunk authors haven't predicted yet. I think that in order "to be" the Internet our interfaces (mostly www browers) have to change completely. In my mind "to be" anything is an active role. Currently I find much of the Internet to be passive in nature. I think our interfaces encourage that.just some random after bed time thoughts
IT's the normal everyday sheeple that don't get this. THe fact that it's true doesn't make them understand any better...
You and I and lots of others know how the internet works.. we don't like the 'centralized broadcast' way it's starting to be used.. and don't like how people insist that p2p is something 'new'.. but think about this.
For mom & pop jones out there.. it IS something new. Sure they could have always done it.. but are just now realizing it. To them, it's NEW. The applications are new... everything is new. So it'
s good to have articles like this....
P2P is a revolution in the making, and tradition businesses are trying to crush it... It's as simple as that.
It will succeed, however, simply because it's gained enough momentum that it cannot be stopped. And because it cannot be controlled.
I think one of the things people need to get straight in their heads wrt P2P is the difference between temporary and permanent roles. Obviously, if node A is always and forever a server, and node B is always and forever a client, and they're totally incapable of switching roles (e.g. neither even has the code to do so) then that's not P2P. Just as obviously, if there's not even a notion of client and server, if every node is necessarily able to perform in either role at any instant, that's about as P2P as you can get. (Note, however, that with respect to an individual transaction there is still one node acting as client/requester and another acting as server/responder).
The real battleground is the area in between, where a node may be a server one moment, or a client the next, changing according to the needs of the network (e.g. nodes entering and leaving). Is that P2P? The P2P purists ("peerier than thou", to use Dr. Shirky's term) would say no. More practical people would say yes, or close enough to yes that it doesn't matter. One trend that more and more people are noticing is that many P2P protocols/applications are developing ideas of "supernodes" or "reflectors" or "defenders" (my candidate for stupidest term yet) that, because of their superior resources, are given additional responsibilities. In other cases, certain functions have been partly or completely centralized within a mostly P2P framework, because nobody could figure out how to make that particular piece - usually a location, searching, or indexing piece - scale within a pure P2P paradigm.
The important thing about P2P is not "oh my god, there's a server, we must eliminate such heresy from our design!" What's important is decentralization and automatic reconfiguration, to avoid bottlenecks and single points of failure. Those are the problems we're trying to solve, remember? If the system is flexible so that work can be redistributed seamlessly from one place to handle either overload or failure, that's "P2P enough for me" even if a picture of the system at any one point in time shows some nodes in server roles and others in client roles. That generally means that each node must be capable of performing the different roles - i.e. the code must be present, the protocols must support it - but whether a given node actually does ever perform a given role doesn't matter.
Slashdot - News for Herds. Stuff that Splatters.
I don't think the author truly understands the issues or the words he is using. He claims that millions of computers will be more reliable than one big computer but what is his definition of reliable? Unless you are talking about non-serilizable or non-consistent clusters of computers, the point is mute. Consider a cluster of databases...are they more reliable? No, if one of the computer in the cluster fail, the entire cluster fails because of the basic unsolvability of group membership. And if he is talking about non-consistent clusters of computers, then how will answers be guaranteed?
Millions of CPU doing a job of a supercomputer...what do you think a supercomputer is? It is thousands of CPU clustered. Only difference is that a supercomputer is pre-packaged. To have million "regular" PC clusters, it simply won't be able to scale for most applications (with notable exception being SETI@HOME), since the cost of routing information quickly overwelms the useful information that is being passed arround.
He also claims that PCs are second class citizens and they need to be servers. But does he have any idea what this will entail? Think of the security issues...think of the privacy issues...think of the performance issue it will bring to the entire internet. Even if the cost of routing scales linearly, that still sucks because number of computers that are being connected is increasing exponentially.
I'm not here to dismiss p2p - I think p2p will have a great future for some applications. But I think the author needs to think hard about his statements - which I think has very little meaning at all. The article seems too much hot air religious fervor about p2p.
I really thought that his point about making PCs first-class citizens of the 'Net was the most important, and one that needs to be driven home as much as possible. I still think that true freedom for web users (who must always rely on corporate connection providers) will derive from widespread, mainstream adoption of something like Freenet. I argued this point in an article I wrote for freshmeat called the World Free Web. I had hoped that we could jump-start that process by integrating Freenet with web browsers, effectively using Freenet as a huge, decentralized backup to the web - on that was out of any entity's control. I'm still working on getting people to work on this idea, so email me if you are interested...
Can your IM do this?
Until P2P comes up with a solution to the NAT problems, it will continue to suck more and more. NATte home networks are going to become more and more commonplace, as handhealds and kid's computers get 802.11b in them and Airports or AirStations are sold to home consumers
-no broken link
I hate to be the bearer of bad news but PCs will never be first class citizens on the NET until everyone either has Cable, DSL or Fiber Optic running to their house and their PC is reliably connected to the NET. That is why up 'till now PC's have always remained second class citizens, its not the PC's fault. Processing power is not a problem here, it CONNECTIVITY. Imagine if your PC and everyone elses were connected to the NET reliably and 24/7, also each PC had it own unique IP address or someway of identifying it (pray for IP V6). Think of the power, the possibilities, that is where we want to be but until we get the reliable bandwidth and permanent "on-all-the-time" connections, this is nothing more than a pipe dream.
Nathaniel P. Wilkerson
Domain Names for $13
Nathaniel P. Wilkerson
www.haidacarver.com
Shirkey says "The invention of the image tag, as part of the Mosaic browser (ancestor of Netscape), brought a GUI to the previously text-only Internet in exactly the same way that, a decade earlier, Apple brought a GUI to the previously text-only operating system." History simplified to the point of almost being wrong does us no service. The image tag was neither a GUI nor invented for Mosaic. It came out of CERN where the physicists wanted to put illustrations in their documents. Mosaic was just an early implementation of a browser that could run in existing GUI OS's and that implemented the CERN standards.
A few paragraphs later his theme is "big, sloppy ideas." Yeah, fine, he gets big and sloppy about his ideas of the past, and then parallels that distortion to a present he doesn't begin to define, and this passes for analysis? In a really vague way he may be waving his arms in the right direction, but why are we even trying to listen to someone whose prattling skirts close to the edge of intellectual dishonesty? It's like those old "make millions from the Internet" spams. Sure, you could make millions back in the day, by not by following the advice in those missives. It's because the likes of Shirky have been listened to by too many VCs and editors that the tech economy is so shakey now - false intelligence is more dangerous than ignorance.
"with their freedom lost all virtue lose" - Milton
If you look at the internet as our collective brain, with each node representing a neuron (broad metaphor i know but go with me for second on this) then client-server is like the motor cortex - you can map out a direct link between certain neurons and a particular service of your body - the use of your left leg for example. Damage a particular part of your motor cortex, and your leg wont work. Turn off the slashdot server, and nobody will see the site. But things like memory and thought in the brain are more distributed, just like a p2p system - even if you kill off a bunch of the neurons, the system can still function and even relearn what it has lost. Even if you kill off half the gnutella nodes, you will probably retain more than half the info that was accesible on them. Since distributed processes like thought and memory are considered "higher functions" of the brain, I would state that P2P does not suck and in fact it is like a higher function of the internet (when you look at the net as an extension of our brains) and so of course it is only the intelligencia (the frontal cortex) that will find it of much use - so be it! If the rest of the world cant figure it out or doesn't want to, thats fine - more bandwidth for me!