I feel it's very important to note where we are coming from, and where we are headed with regards the web.
Generations One and Two
Historically we have been through two generations of the web so far, not web 1 and web 2.0, but rather the first round of mounting the presentation tier on the web (static publishing documents and media), then the second round of mounting the application tier on the web (from forms through to the current api's we see everywhere).
The next round, and what many are currently hacking at, is mounting the data tier on the web, mainly via the "Linked Data" movement which you may have noted.
This third round is critical for two primary reasons:
- By mounting the data tier on the web, it allows us to remount the application tier again, but this time properly, where HTTP is the API between the Application tier and the Data tier. (true REST)
- The "Internet of Things" is very much dependant on the "Things" speaking the same language and sharing a single Data Model, where the model remains the same but the vocabulary can change.
Generation Three
"Linked Data" is in many ways the solution to the above, because it has a Universal Data Model (EAV), a Universal API (HTTP), and Universal Addressing & Identification (the duality of http URIs) - more importantly though, "Linked Data" provides the means to mount and expose both ABox and TBox statements on the web - this is the key detail where RDF wins over other EAV based data models; the ability to store both the data and the vocabularies on the web, and both in the same manner.
Linked Data is currently tied (but not bound) to RDF. However, RDF still has very critical limitations, primarily it doesn't have any notion of Named Graphs or Quads. Trust and provenance are essential moving forwards (with quads you can select which data your application trusts, and which it doesn't, based on the source, the Named Graph - without it you can't), as is the ability to transfer data from multiple sources at the same time (update streams, batch operations, merged data with provenance - again needing quads).
The above means we need an RDF2 (or standardisation & adoption of N3+rules), and moreover we need standardized non-xml serializations of said RDF(+2), the most important being rdf/json.
This brings me to HTML5, the key here isn't the new HTML5 document format, the semantics, the ability to embed microdata or anything like that - it's the introduced (or implied) dependency on JS /ECMAScript via the JS APIs. This leads to JS being rolled out on to the majority of devices - it's also important to note the server side JS movement in this too.
Generation Four
We've had a "Web of Documents", we're building a "Web of Data", the next logical step is to have a "Web of Applications", for this we need two things: a Universal Programming Language (JS...) and an "Internet of Things" which support the universal data model and the universal programming language.
As far as I'm concerned HTML5 plays a critical part in the big picture:
- Short term, it at least unites the browser vendors to better support the techs which developers use.
- Presently (and from here on) it allows us to start hacking at the web of applications.
- In the future it's legacy will be it's introduction of JS as a Universal Programming Language.
Sides:
It stands to reasons that RDF/JSON (or whatever supersedes RDF serialized in JSON) will also play a major part in this round.
We may well see a shift from client-server, server-server to application-application; where each machine on both sides comprises of HTTP Client, Server and Cache.
Generation Five
Leading on from here we get to the fifth round of the web, remounting the Presentation Tier, but this time where the presentation tier speaks to the application tier through HTTP, the Universal Interface.
HTML (together with JS and CSS) again plays a critical role in round five, because up until this point it remains the only way for the hackers to create this fifth generation, notably it will be a lot more than we are have now, after years of maturity, hacking and support universally. Naturally then we can assert that HTML will remain the core of the Web's presentation tier so long as the Web exists.
Additional Shifts
Widespread adoption and understanding of REST, truly without this we'll never get past generation three.
Data transformation, for a very long time data transformation will be an everyday service we all require, for legacy systems, legacy data, proprietry systems, data model conversion and so on - the key isn't to be able to understand all kinds of data / serializations / models, but to transform it in to what you do understand, easily.
The enabling of the Semantic Web, Linked Data provides the means to do this, it is the enabler - each EAV triple we put out is also a triple that can be reasoned over, full machine understanding of all our data is an ultimate goal that will take many years. Generation three very much pushes the semantic web in to the realms of the real world, no longer for the strictly academic.
The great cleanse, all the data from generations one through three (and possibly beyond) will need cleansed - as primary universal vocabularies emerge the task will be to clean what's on the web and migrate it in to the new models, reasoning and cleaning it as we go.
Cross compilation and seperation of syntax from machine code - another movement that is gaining momentum, no longer are we tied to a specific syntax for a specific JVM - not far off is the day where we can program in our preffered language, and compile it to whatever target we need. This is all ready happening in many quarters (like haxe) and soon will be the norm.
Seperation of human readable data syntax and data storage/transfer serialization. This has long been understood, however with EXI comes a light serialization of XML for the machine & transfer; logically from there we can expect the same in the future for RDF(2) and most data moving forwards.
Much of the code needed for the Application Tier will disappear over time, typically most application code involves taking some data and turning it in to some new data, processing it - when you can do this on the fly via data transformations, rules, reasoning, inference, querying and similar, you remove the need for most f the code in between. It is entirely possible that most server side web applications could disappear.
End
It is testament to the strength and design of the web that it can support every incarnation of the web thus far and in the future all at the same time - All credit to Tim Berners-Lee, Roy T Fielding and the many, many others who contributed, evolved and continue to forge this thing we call the web.
Disclaimer
Obviously, this is all just my humble opinion, none of it is fact - but from stepping back a bit this is what I conclude, for now.
I've skipped loads of things, most of the techs I work on and think about daily, FOAF+SSL, web access control, read write web of structured linked data, loads more - the above is just a summary of where I think we're headed, primarily for my own reference :)
Universal doesn't necessarily mean universal - but it's a good enough word to convey what I'm thinking. Any other use of terminology you don't quite agree with, likewise, terminology is not the point of the post ;)
Best & happy to hear your thoughts and additions,
Nathan
















web 1.0 = web of documents
web 2.0 = ajax / dhtml
web 3.0 = linked data
web 4.0 = web OS, read/write web, access control
web 5.0 = realtime web, html5
web 6.0 = the internet of things
web 7.0 = web of trust (digital/micro) trust reputation recommendations assets payments and transfers
web 8.0 = inferences rules and automation
web 9.0 = harmony collaboration interoperability, human interfaces
web 10.0 = war against the machines ;)
@melvin yup you nailed it!
web 4.0 == webos == web of applications, same thing
web 10.0 i can't wait for! hope arnold is still governor then.
Generations of the Web – an Overview: http://bit.ly/9tEyeZ a few thoughts on where we are and where we’re headed [new post]
This comment was originally posted on Twitter
Ponto de vista: “Generations of the Web” – http://webr3.org/blog/general/generations-of-the-web-an-overview/
This comment was originally posted on Twitter
Web Generations (or Dimensions of focus) overview post: http://bit.ly/be29CY — by @webr3. Very nice! #linkeddata #web30 #web20 #eav
This comment was originally posted on Twitter
RT @kidehen: Web Generations (or Dimensions of focus) overview post: http://bit.ly/be29CY — by @webr3. Very nice! #linkeddata #web30 #web20
This comment was originally posted on Twitter
Generations of the Web – an Overview. – webr3.org http://bit.ly/aZWAQw
This comment was originally posted on Twitter
#Semantic #Blogs Generations of the Web – an Overview. – webr3.org: The enabling of the Semantic Web, Linked Data … http://bit.ly/caGnto
This comment was originally posted on Twitter
#Semantic #Blogs Generations of the Web – an Overview. – webr3.org: The enabling of the Semantic Web, Linked Data … http://bit.ly/caGnto
This comment was originally posted on Twitter
RT @kidehen: Web Generations (or Dimensions of focus) overview post: http://bit.ly/be29CY — by @webr3. Very nice!
This comment was originally posted on Twitter
http://tinyurl.com/26w2mrl (Generations of the Web – an Overview.)
This comment was originally posted on Twitter