Transitioning from a synchronous model to an asynchronous one?

I've been lately analysing how my habits have changed in some aspects of my daily computer use. This might not be the case for everyone, but in general I see it happening too to a lot of my friends.

Around 2001, when I started my computers degree at university, we were in the IRC/Chat boom, but it had some limitations, mostly related to how non-power users using it: Either you had to learn how IRC works and create private channels to talk with your friends, or you had to rely on web-based chats (this was a boom of Java Applets too, now almost forgotten because of Flash).
The Instant Messaging networks and clients got hype and they spread like a virus. I had an ICQ account, a Yahoo one, and a Windows Messenger one (later rebranded to MSN Messenger, and now called Windows Live Messenger). Everyone started to have at least modem connections (DSL lines were still spreading at least over Spain), so we started to spend hours and hours connected to IM clients (in my case, mostly Messenger) chatting with our friends. It was the cheaper substitute of phone/mobile conversations. Instant, synchronous communication.

Now, IM clients are still there and widely used, but both for technical constraints (proxys/firewalls blocking access, crappy protocols that at the minimum network loss disconnect, weak wifi signals,...) and time constraints (while working you have to concentrate on your tasks instead of on offtopic chatting), it is being moved to a second, less interest layer, in favor of social networks.

At Facebook, Tuenti, or whatever social network you use (even Twitter if we consider it like a micro-social network), there's a lot of activity. I have lots of friends with whom, having them on IM clients, I speak way more now via social networks. The few times I logged in into Facebook until I disabled the chat (I mostly only login to reply to comment or private message notifications) usually were a lot of friends connected/online, friends to whom usually if you send an email it takes from hours to days to get a reply. But if I comment on their walls or send a private message inside the social network, they reply sometimes instantly ;)

At first I thought it was curious, but it makes some sense, because in a social network, you don't need to reply at once if you don't want or you can't. In a IM client you must be synchronous, reply from time to time. On a social network, you decide when you do it, you have the control and the pace. You don't feel the same stress of real-time bidirectional communication.

Something similar happened to me with the news sources. In the past, I had lot of email subscriptions to various news.
Then, RSS came and transformed the way of receiving data to an asynchronous model. Data gets fetched when appears, but gets stored until you have the time to read it.
I now get stressed if I have too many pending emails (although doing a simple psychological trick of marking them as read on GMail after adding a "PENDING" tag to them works like a charm), but I don't feel pressure if I see +200 unread feeds.

Even in development we're switching... In the past, sockets programming was used for almost everything, even applications that didn't need instant responses. Now, excepting online multiplayer games and a few specific areas, the use of web services is so widely spread that for example in .NET Remoting has become a rare knowledge, but almost everybody knows how to create a ASP.NET Web Service or WCF layer. Everything that doesn't requires a synchronous communication it is created as an asynchronous one now by default.

So probably yes, we're moving from a synchronous communication model to an asynchronous one. Partly because this way time stops being a constraint factor, but partly too because with an async. model we have the control of when to pause and when to resume the flow of communication (at least to some extent).


Posted by Kartones on 2009-09-07