Thursday, June 18, 2009

Social Desktop

A few people have blogged about what's up at Social Desktop and Open Collaboration Services already, including Frank Karlitschek, Luis Villa and Henri Bergius, but I think it really can't be talked about enough.

Why? Well, today's crop of online services really disappoint the user in all sorts of ways, namely:


  • They tend to lack freedom. The user should have rights to their data (escrow services, downloadable in useful formats without loss of information) and choices in hosting (which implies open standards and open implementations). This is something that even people outside the tech industry understand: talking with a financial advisor recently who was quite enthused about the possibility of things like Google Docs, I was impressed when he noted he couldn't ever seriously use them because of a lack of guarantees to his data and privacy.

  • They are usually stuck in the browser. The social networking crew wants us to use the web browser (or a browser on our phone) because it's convenient for them. Not because it's a great experience, but because it's easy. Those are the wrong priorities.

  • The innovation essentially stopped at "things I used to do on paper". I want to do more than just have an easy place to dump my embarrassing photos of others from last night, keep up a public journal, read an annotated map or exchange small blocks of text with othes. I want the network to make my computing life more interesting, more immersive and more useful. The innovation has all but dried up in social networking, however, and what we have is an electronic version of the library and post office. A really freaking cool library and post-office, but that's about it. We can do better than that, can't we?



There are very few shining stars that buck this trend, and even then they often fall down by not offering things like data escrow or a richer user experience. They do deserve credit, though: Wikipedia, OpenStreetmap, identi.ca .. (does Gitorious fit in here? Hmmmm.) They should only be our beginning, however.

This is where an opportunity for Free software lies. Our strength is community. We understand it, we are driven by it, we eat and breath it. We don't need to find financial justifications for trying new things out and we have an entire stack of software (that goes waaaay beyond "stuff I used to do on paper") to play with. There are only two companies I can think of that come even close to breadth we have there, and neither of them can match our agility, freedom to experiment or respect for the values that make social groups thrive.

We have all the pieces coming together to create computing experiences that take into consideration the context of the person's location and concentration, their social/professional lives, their personal and shared information and reflect that in a myriad of ways in all of our interfaces, not just the web browser. Imagine being able to take your netbook into the lecture hall and have it switch to the "right" activity on screen, broadcast a widget to the class room and locate which students aren't there (maybe including a note from them explaining why). Imagine being able to walk into a train station and grabbing the train schedule on the device of your choice, finding you're stuck for the night, asking who that you know is in the area and then prodding one of them for a ride or some company to pass the evening hours away. Imagine being able to recommend a friend on one social network to a friend on a completely different social network without any interoperability weirdness. Imagine being able to sync your online data, leave with it (maybe working on it a bit), then re-sync it back later to a different provider.

In this world, I see our computers becoming helpers rather than mildly frustrating tools; I see services becoming a true web of interacting greatness rather silos with the occasional rickety handmade (and often one-way) rope bridge between them; I see "social networking" and "personal rights and freedoms" being mutually supporting at every level.

This is the "Social Desktop" that Frank spoke about at last year's Akademy, and which many others have been buzzing about in one form or another for some years. It was high time that we stopped talking about it and started doing it. So Frank started with outlining a set of Open Collaboration Services (OCS) and then implementing them in his popular *-look.org and *-apps.org community websites. Those specs are open: people can implement them, people can use them client-side and people can help evolve the specifications and implementations.

Cornelius implemented a KDE library to access them, as he's had a long standing interest in socializing software. (I believe this was one of the reasons he began working on KOrganizer waaay back, in fact.) Then Sebastian and Marco got to work, and now we have a budding set of applications for people to use. You can geolocate people near you in your network (or who are publicly available), you can browse and interact with an online knowledgebase that's very wiki-style and more.

This is very early days, however, and I fully expect this world and Nepomuk's local information stores to start intersecting in applications in interesting and fun ways, our geolocation systems to be come ever more useful/integrated, more devices and more possible opportunities with fewer compromises (e.g. "I want to work collaboratively on a slide presentation .. but I can either use a good rich client app or a far less powerful and useful web app. *sob*") and a User's Bill of Rights to emerge much as the GPL did for software code bases.

We can, by taking advantage of the Social Desktop concepts in our server, web and rich client software, take the whole social networking world to a new plateau that includes more invention, less lock-in and lock-out, better user experiences and freedom. This is a vision that has something in it for everyone in F/OSS: server, infrastructure, web, embedded, desktop ...

Ok, enough of the excited ranting from me. This is potentially big stuff and I'm happy that we are finally at the point that we are moving to implementation. There is so much to do and so many more ideas to be had and then realized.

To help push this all along a little bit further, Frank has initiated a contest for OCS implementations which you can read more about on his blog. I can't wait to see the entrants, and I'm extremely excited that the jury panel is so diverse: KDE, GNOME, OpenOffice and OpenDesktop are all represented.

Help us build the future of social/contextual computing by co-imagining it with us: enter the OCS contest and let's get to making the social networks and contextual computing experiences the world ought to have .. and lots of them. :)

13 comments:

kiberlynx said...

YYYEEESSS... WE... CAN!

lol

seriously, I've also been expecting this from Desktops/laptops/pda's/bluetooth/... since several years now, and wondered why oh why didn't it happen yet!

Well it had to bee the free society to save the day, finally and thankfully!

I cannn't wait!

tell 'em aseigo ;)

Pierre said...

Does Google Wave (witch uses an open protocol : http://www.waveprotocol.org/) is one side of such "Open Desktop" ? Does someone work on doing a KDE client for this ?

AIM said...

"They are usually stuck in the browser."

With all due respect, you underestimate the browser, which KDE heavily lacks(Konqueror is inferior to Firefox,Opera and even Google Chrome).

I know this will sound a little bad at first, but maybe the KDE Desktop should focus on having a good browser first that has all the features in the world that all other major browser have, and maybe than you can say it's stuck in the browser.

But let's just pretend I haven't said that, is it really better for a social application to be stuck in KDE than the browser?

I think the solution is for a service to have an external API done with SOAP, JSON or whatever they choose and a browser UI, that way everyone is covered. And last but not least a good documentation.

skierpage said...

The social networking crew wants us to use the web browser (or a browser on our phone) because it's convenient for them. Not because it's a great experience, but because it's easy.

But it is a great experience. My favorite apps are now all browser-based. They gain consistency and features through running in a top-notch browser: e.g. zoom, universal text selection, form field memory, sophisticated URL handling, View Source/View Selection Source, etc. Browser enhancements and extensions potentially benefit all those apps. And the browser's Back-Forward-Bookmark-History addition to the user experience still has a lot of headroom, and works BETTER than most desktop apps. And those browser-based apps work on a variety of devices and are O.S.-independent.

KDE is neat, Nepomuk has real potential, but don't bet against the browser.

frerich said...

'The social networking crew wants us to use the web browser (or a browser on our phone) because it's convenient for them. Not because it's a great experience, but because it's easy.'

I believe the good thing about "it's convenient for them" is that it means "it's likely to happen in a year or two". I would like to see something entirely different, too - but that's just too much change at once. IMHO it's fine to start with browser-based applications, since you can gather some experience and - in case you do a mistake - you can easily take a step back.

Aaron J. Seigo said...

@Pierre: no, Google Wave is not part of Open Desktop. having something branded like that is a pretty stupid way to get it into wide adoption, to be honest.

i'd love to see a KDE client for it, but i think Wave is a great example of how Google no longer really "gets it". good technology? sure, very cool. any chance of replacing email? not likely.

right now the industry is busy repeating the silyness of the 1980s (and early 90s) with all the proprietary or "open-but-branded-and-controled" protocols and concepts in networking.

@AIM: "With all due respect, you underestimate the browser,"

the browser is a fine tool; it's just not the tool for everything. or as they say, just because you have a hammer ...

"which KDE heavily lacks"

because the browsers you mention don't run well alongside KDE apps? you're starting to miss the point here ;)

"KDE Desktop should focus on having a good browser first that has all the features in the world that all other major browser have"

i don't think that's a pre-requisite to anything i wrote about.

"is it really better for a social application to be stuck in KDE than the browser?"

for utility? yes. rich client interfaces are stupidly better at most application interaction than the limited capabilities of even the most advanced browser + Ajax (or whatever) frameworks i've seen out there.

for usefulness? no. that's why it needs to be _open_ and implemented across web services, web sites, various desktop apps.

this is not a KDE initiative (perhaps you missed the bit about who's on the judging panel for thsi competition?) it's just an initiative in which KDE happens to be part of the leading edge of.

there's a significant difference there, and it's not about locking things into KDE, but finding ways to free information and services from one kind of implementation with a very limited vision holding it down.

Aaron J. Seigo said...

@skierpage: "But it is a great experience"

when people go "ooh aah" because drag and drop works inside of a web page, something we were doing in the 80s in desktops on the market (and earlier in research) i have to just shake my head at that statement.

just step back for a moment and realize that drag and drop between pages or sites is still black magic, and then look at the entirety of the rest of the possibilities with rich client software.

the browser, for most interactive events, ties my hands and slows me down.

it's a fine experience for certain kinds of interactions (mostly the kind that used to work well on paper, incidently), but it's hardly the tool for all tasks.

or, put another way, why are there all those microblogging clients out there? because the web browser based mechanisms are fine and work for casual use, but just don't do what can be done with rich client interfaces.

the fact that network services are often written for the browser only is the problem here. the browser should not be tossed aside, but the web needs to grow beyond it so that the browser is one mechanism.

we can do so much more with network services that are likely not going to happen in the browser world.

"And those browser-based apps work on a variety of devices and are O.S.-independent."

this is one of the two things that make it the "easy choice", the other being ease of development (though ajax stuff in the browser and easier rich client dev tools are helping ruin that advantage in the browser).

it's starting to come down to ubiquity. and the solution there is to make sure things are available in a browser as a fallback, but open them up to use in rich client experiences and then write those rich client experiences.

also, we need to get the web services talking with each other and giving the user more rights and freedoms when it comes to how they interact with the services and how their data is managed.

"KDE is neat, Nepomuk has real potential, but don't bet against the browser."

why is always either/or with people? think "both/and" and realize the strength _and_ challenges of each tool.

if we stick to "either/or" we end up with one tool that's ok but has lots of warts because we keep trying to shove every possible peg into its round hole.

back up, look at network services as things that should work together, respect user rights and be accessible from multiple interfaces.

then you begin to see that the emphasis on the browser is a real achiles heal to getting client side computing to where it should be.

dgaspary said...

On Your second point: "The social networking crew wants us to use the web browser (or a browser on our phone) because it's convenient for them"

you tell a true that a lot of people knows but nobody say. Even people that loves browser knows that.

The internet can reach and offer much more than HTML and Javascript over HTTP.

Great post. Thanks for the great work with KDE.

p.s.: Sorry for my english. :)

Chani said...

"Back-Forward-Bookmark-History addition to the user experience still has a lot of headroom, and works BETTER than most desktop apps"

umm... but most web2.0 sites completely *break* the back button. and a bunch of them go make bookmarks problematic too.

y907Et9ygPoUxlJIDIWdRDAR said...

Great post and great answers, Aaron! I hope this project will become as successful as it is promising. You guys are working on amazing things. :)

tahseen said...

I have always felt this whole web 2.0 movement and using browser as application is a serious way backward.
I feel that users want applications that are network aware. That can connect with services which provides option for collaboration with others, sharing of centralized data repository and complex computation on them (search, analysis and such) etc. It has nothign to do with browsers and so called web itself.

Every major, popular web application needs to made countless of gluecode solutions to deal with browser incompatibiltiy, limits of HTTP and browser as an application platform. Officially the whole session thing is a hack isn't it?


@skierpage
you mean like they have to hack around every browser issue?
Give me a good complex application that handle's browser bookmark and back button well .. I would really be interested to know.

When I think of the money and resources wasted (to me) over the years in making browser to an application platform using hacks after hacks rather than making something new, standard and powerful for it, I don't know what to think.

Don't get me wrong browsers definitely have their uses and importance but I think these days everyone is out there trying to misuse it.

biophysics said...

I wish FOSS will one day have something like this:

http://www.mendeley.com/

It would be great to integrate all these information in nepomuk. Universities would love it.

Thanks,

william said...

Thanks for sharing this article I also like website with flash designing specially the intro part of the website is so attractive and I agree with your view that flash presentation Increasing your web traffic and page views Add, add your website in www.directory.itsolusenz.com/