As the Web 2.0 bandwagon continues its rapidly accelerating path downhill towards the inevitable crash we find ourselves at another turning point in the development of the networked world. Ten years ago we were faced with a choice between the controlled homogeneity of the ‘information superhighway’ or the many and various …
Bad metaphor applied to a wilful mis-characterisation
I am no fanboy for Web 2.0 as a term, but you seem to think it is all about AJAXy interfaces, which is clearly false. O'Reilly talks about an architecture of participation in pursuit of collective intelligence, and his recent business-friendly exposition of the subject was, I think, intended to counter-balance the consumer start-up build-to-flip direction that most "Web 2.0 companies" have taken.
The Communist analogy is also a bit weird given we are talking about distributed systems and collective intelligence. If anything, existing enterprise software is closer to the Communist (well ... Stalinist) model and Web 2.0 is structurally closer to political movements such as Al Qaeda, unpalatable as the comparison may sound.
Tito, aside from being an extremely impressive leader, will be remembered as somebody who held together a diverse set of national interests with a powerful set of ideas under a clever collective brand. It worked wonderfully well during times of plenty, and within the context of a wider conflict between major powers, but became harder to maintain outside of this context. Perhaps the Yahoo CEO might want to bear this lesson in mind, but I think you are stretching the point by comparing Tim O'Reilly with Tito.
Thanks for a sane viewpoint
It's refreshing to read some logical analysis of "Web 2.0" (although couched in very hyperbolic language). Personally, I regard myself as an _engineer_ who works on state machines and distributed architectures. The whole AJAX business seems like nothing more or less than an attempt to work around the HTTP paradigm with smoke and mirrors; sure, it creates a better illusion than we currently have (and I'd rather use a "Web 2.0" interface than a "Web 1.0" one), but it doesn't address the real problems.
To give a concrete example - the Microsoft Atlas ^H^H^H^H^H AJAX for .NET framework is based around performing a normal request to the server, but doing so as a second thread^H^H^H^H^H^H an AJAX request. As such, the processing load on the server is increased, and the processing load on the client is also increased. It's likely (though I don't know and am open to correction) that other systems work in a similar way.
Frankly, I don't claim to know the answer; but I do think that Web 2.0 isn't it. From a UI perspective it's better than what we had, but from an engineering perspective it's a disaster.
The Way Forward
How can we begin A constructive thread to propose a way forward? How about if we begin a wiki. Please reply to:
At least get your facts right
I don't mind criticism, but I do mind misinformation. Bill, you clearly don't understand much about how I've defined "Web 2.0." Ajax and mashups are two small parts of a very big picture, and in fact, I've often noted that Ajax in particular is an insignificant part of Web 2.0. Web 2.0 is ultimately the move to the internet rather than the PC as the dominant computing platform, and what I've tried to do is to outline some of the "rules" for success on that platform.
These are rules like: "It's a network, stupid. So be sure to harness network effects." (That's "harnessing collective intelligence.") And I point out that the mechanisms for that harvesting can be as simple as Amazon's relentless pursuit of user annotation, clever hacks like Google's PageRank, which understood that watching user behavior (in the form of links) was as important as the content of the documents themselves, to business models like that of craigslist, which relies so heavily on user self-service, to P2P architectures like those of Skype, which allows them to service millions of simultaneous users without any large central infrastructure.
I also point out that "data is the intel inside." That is, we're moving from a software-centric business ecosystem to one that is data-centric. And I point out that failure to understand that fact will leave many companies holding the short end of the stick.
I do talk about lightweight programming models and techniques, of which Ajax is one, but that is only a small part of the move to server-based, database-backed computing, where the software infrastructure is the foundation for a much lighter weight presentation layer.
I'd suggest that anyone who wants to criticize my ideas about web 2.0 at least read my paper, What is Web 2.0? (http://www.oreillynet.com/go/web2), and respond to what it says (rather than what they imagine it says), and perhaps follow some of my more recent comments on my blog, The O'Reilly Radar (http://radar.oreilly.com).
DUDE! Its just a UI framework...
Okaaay, step away from this guy very slowly. No sudden moves. Just maintain eye contact and go nice and easy.
Have you ever heard of MVC? Model View Controller? Its a fundamental design pattern which most developers strive for when designing interactive systems - it keeps our design clean because it separates the data model from the user interface and the business logic.
When I say STRIVE thats because, business logic is a hazy line to delineate when you design a user interface. If the interface is truely interactive then if the app does more than hello world - its probably inherently using aspects of business logic tied in to the user interface when responding to user events. How well you separate these apects of model, view and controller equates to how cleanly engineered the design and more resuable and maintainable the code.
OK; so now first problem I have, this dude is clearly not getting the point of the *evolution* of the web application being coined Web2. To my chagrin it has been blessed with a version step but in reality AJAX is just lipstick on the pig of the Document Object Model. But AJAX is simply the enabler. It could just as easily be Avalon! The point is its moving from a static, stateless form to an event driven UI model (towards a true MVC!) but dude, Web2 != Ajax
This Web2 hype is about the social IMPACT an event driven UI can have when dispersed amongst zillions of users who can share stuff with each other and what that can do. Thats pretty cool when you think about it.
This social 'revolution' doesn't imply that Web2 is a solution for distributed systems - its not - go and play with those SOA crackheads who are busy wrapping APIs around their COBOL server which was the mutts nuts circa 1968; and are still trying to justify what they paid for the damned thing. But I digress...
O'really is not an innovator, he's a phrase coiner - but he always has been.
A lot of investors and fund managers are plain old stupid and don't get it but need somewhere to stash money - and thats why recessions happen... Its not limited to the internet - go have a look in biotech, pharma, jeez - anything that requires half a brain to understand the true concept behind the investment.
Now quit your whining and get back to writing that Atlas-enabled, Google Earth-Mashuped, MySpace page.
This is not the revolution you're looking for
Bill Thompson is correct in saying the Web 2.0 is not a cure for all the online world's woes. Scalability, non-proprietary APIs, etc are all desirable. And he is disappointed that "Web 2.0", touted by some the next step in web technology, does not address these concerns at a nuts-and-bolts level.
But he's slightly missing the point.
Web 2.0 is not really about low level technology, any more than the craze for moving from personal websites to 'portals' was. It is about the use that technology gets put to. "Adhocracy". "Long tail". "User generated ratings". There is nothing there that couldn't have been doing in basic HTML and perl cgi. It is not about the low level technology. Its about the thinking.
Now you can argue that mashups are new and would benefit from design at levels below the presentation layer, and I'd agree. But that doesn't invalidate the 'people can generate not just more content than companies, they can generate or find more compelling content' idea.
Now, if you want to talk the next revolution beyond (or perhaps in parallel with) Web 2.0, which we all pray will not be called Web 3.0, you need to start looking at trust, the ownership of the data on who trusts whom, and truely scalable ways of distributing and making usable such data without relying on any centralised power or authority.
Who exactly is asking the wrong question here?
I'll make my comment brief:
You continually throw in "computer science" terminology into the picture, as if that's everybody's ultimate goal. You're the one asking "how can we solve these computer science problems on the web and make distributed systems ultimately work?"
Isn't *that* the wrong question?
The "how" is not what is ultimately important. "how" is something for a researcher to consider, not an application designer. As an developer, the job isn't to answer the how, but to use the tools available to get solutions that work. It's also about serving some end-point, be it those infatuated by cool AJAX effects on digg or those who feel the need to share their video content on YouTube. There's no need to bother them with "computer science", they don't know or care that your servers run on a "distributed system".
I think the most proper analogy is: You seem to think that web developers should invest their time solving the problem the same way a biologist will research a disease. But remember, no biologist has ever made, marketed and sold a single bottle of pain relief medicine. You're confusing two completely separate fields: research and development. They're two fields for a reason.
Well I'm a great believer for having a vision of where you want to go. I'm also a great believer in the bazaar being a tool for certain areas and the cathedral for infra-structural issues.
However, when something is new or fledgling - imposing or desiring to impose a method of operation rather than allowing a standard to emerge is almost always folly.
So have a vision, don't impose operating restrictions, allow the melting pot of human creativity compete with different ideas and then support the emergent standard if a standard is necessary or beneficial.
This is what is happening with web 2.0. A melting pot of ideas, from which standards are being rapidly created or adopted, for example REST over SOAP, Mapstraction etc
Of course this is a nightmare for any purist or committee that wishes to control or impose their own idea of how things should operate. Such evolved behaviour or evolved standards bypasses the need for committees or imposed computing standards.
You can almost hear the nashing of teeth as the purveyors of what is "right" discover they are irrelevant.
So we come to your tirade against web 2.0 and your description of Tim "Marshall Tito" O'Reilly.
Tim's vision or collection of concepts into his vision does nothing to state how things will operate. It is more a description of important concepts (from open data to commodisation of operating environments to social participation to rich interfaces to new business models to a data centric view) and describes a progression to a different type of web. It subscribes to the view that this is not dictated to but is emergent.
A "real" application is one that is used and is useful and has no bearing on language or transport protocol. As for supporting messages between distributed objects - well those are standards which will emerge rather than be dictated to.
Your general thesis is we should stop all this, as there is the real chance of it turning into a nightmare. That's a mantra against creativity, against the melting pot.
So is this a case of the kettle calling the pot black?
It's not Tim who is Tito ...
It's Perfectly Obvious
Even to a NOP like me it's perfectly obvious Mr. Riley wants his flying car, and, quite rightly, Mr. Thompson has reached out to grab the ignition keys from him. Mr. Thompson wants to know who going to pay for all the flying cars and he's damned if flying cars are going to swoop in over his garden unrestricted and uninvited.
Mr. Thompson, no doubt, thinks Mr. Riley should contemplate the error of his flying car ways. Critically important is the need for Mr. Riley to contemplate his waywardness in Milan's famous Cathedral,the Duomo, which was built especially for such occasions.
If I'm not making sense, well then, all I can say is it flowed naturally from reading the articles and quotes.