Julien Genestoux

From Space, to Time

This post is the text version of a talk I’ve been giving at several conferences (and I plan to give it a couple more times). I have spent many years observing and building things on the web and this is one of the main trends I’ve been seeing over the last 10-15 years.

Space

It’s no secret that we tend to organize and build things as we perceive them. In the early days about the web, the most common definition of it was that it was a network of networks. And networks are mostly perceived spatially.

People actually drew maps of the web

This is pretty obvious when we think about the words we use. The word web itself describes a topology (topos is place in ancient greek!). Do you remembers the Netscape Navigator browser? How odd is it that the browser has a home button, an address bar? That we talk about URL (Uniform Resource Locator), that we talk about sitemaps? Of course, all of these are metaphors that helped apprehend, describe and build the web.

Even when we look at the icons of browsers, we have clear indications that these tools are about space: a simili-earth for Firefox and a compass for Safari.

It also used to be true of our usage of the web. Many homes (including mine) had an “internet room”.

Bottom-up

Yet, as the web became more popular, quickly, the vast majority of its users were not its builders: they were designers, artists, salespeople… and other people for whom the internals did not matter and for whom the metaphors might not have make as much sense as it did for us.

The smartphone also completely changed the way we are connected. I’m not sure we’ve seen 2 pictures taken 8 years appart, in the same place, about the same ‘event’, highlight such a behavioral difference.

Time as the new metaphor

It’s now obvious that timelines have replaced our portals. We could also argue that the race for the social graph of the mid 00’s has eventually turned it into a commodity, while every social application’s goal is to increase the stickiness of its timeline.

Scroll vs. clicks

Back in the early days of the web, the mouse was the device of choice and its click was almost the only way to interract with web pages (no drag and drop, no double-click…) Today’s wining interraction is the scroll which lets us swipe, zoom, move forward or backward in our timelines. The click was highly spatial (you even got coordinates x, y of where it happened) while the scroll is highly temporal: duration and speed are its measures.

This one may not be obvious, but let’s consider this: links let you move from one place to another. They let you go from a page to another. On the other end, follow buttons, which are now everywhere are time machines. Clicking on a button won’t get you anywhere (most of the time it just changes the text of the button), however, it will determine the content you’ll get in the future. They’re a way to travel in time and tell your future-self: you’ll want this (or something from this).

These days again, we’re hearing about snapchat because they’re raising insane amounts of money at insane valuations: they’re clearly one of the most popular messaging apps. The most surprising thing about snapchat messages to newcomers is that messages have an expiration. They’re not placed in space with a permalink, but placed in time.

Notifications

At first notifications were barely a little red badge indicating the number of unread emails you had. Quickly they turned into their own UI element and, as the folks at Intercom put it, they may eventually replace the desktop analogy we’ve used for the last 30 years when it comes to the main interaction with our devices. They’re of course highly related to time: they show when things happen, disappear when you’ve acted upon them… etc.

And More

We could talk about ads, which used to be sold by space in the form of baners: the greater the square pixels, the more expensive the ad was. Now, they’re sold by time using the “X seconds until…” pattern. We could also talk about servers: the first website I created was hosted by renting a space in a rack 1U. I was litterally paying for space. Today, virtualization has changed the business model toward a pay-per-CPU-cycle model… and yes, CPU cycles are time, based on the frequency of our processors.

Rebuild the web

The changes I’ve described are so big and impactful, that they are slowly changing the internals of the web itself.

Ajax

This is probably the oldest one. The web was built do deal with static documents. Yet, in the early 2000, it became clear that relaoding documents to see changes was not going to cut it. That’s when XMLHttpRequest and Ajax were invented (but they feel so hacky!). Today’s HTML5 spec has things Websockets, Server Sent Events, PushState… and things like data-binding in the modern javascript framework are replacing static approaches.

End of State

The amount of data that our apps deals with has exploded. The storage needed has taken the idea of state away: the Bewer’s CAP theorem tells us that we can’t have Partitioning (that we need given the size of the dataset), Availability (that we need in order to keep users happy and hooked), and Consistency, so we dropped that last one, or at least we loosen up the requirement by saying that our databases need to be eventually (after some time) consistent.

As the databases became less static, and in order to spare them, applications are now built around log systems. LinkedIn described their architecture years ago and each component drinks and feeds from a stream of data. Systems like Kafka, Storm have replaced standards brokers to become the heart of our apps.

The Blockchain may actually be the most fascinating of these examples. It’s not so much a shared ledger than it is a shared transaction log. State and consistency are determined by history and let us build applications. When authority was space-based (where is the master server), it’s now time-based (what are the transactions that lead us to this state).

If you look close enough, I’m sure you’ll see more patterns (tell me about them!) and other ways to describe this. For example, Chris Dixon talks about the 2 eras of the internet: pull and push.

Liked this post? Make sure you don't miss the next ones by this site in your favorite reader.