Social Desktop integration in KAboutDialog

23 Aug

A few years ago when I still wasn’t an Amarok developer, the development team appeared to me like a bunch of uber-l33t geeks with mad sk1lls locked up in some ivory tower, performing their arcane incantations. Obviously it’s not the developers’ fault, the issue was that no matter how hard you try to reach out to the wider community, there is always a not so blurred line between users and developers, and this social distinction raised the barrier to entry for me probably even more than my lack of coding skills did.

I’m trying to change this, by bringing the Social Desktop to one of the most prominent places where users learn about the development team of a program: the About dialog. By tying some profile data into a modified KAboutBox, it’s much easier to convey the message that the project is developed by real people, with a new potential channel of user-developer interaction right inside the app. For users, the advantage is that developers are now easier to reach, and I also hope that this might increase the quality of the communication by making some potential trolls realize that they are not talking to nameless nicks on IRC. For contributors, this might also be a nice recognition of their accomplishments: many of us do this unpaid, for fun and for love, and it’s nice if at the end of the day one can at least get a pretty dialog with a picture and a few rows of credit.

But what does “integrating Social Desktop features” really mean? Well, it can mean everything and nothing, in this case it means a new dialog called ExtendedAboutDialog for lack of a better name. Contributors have additional extended entries with data downloaded from that can be viewed if the user has internet access and an account. The About dialog becomes a small social desktop client.

The implementation is currently based on Amarok, but I’m keeping it as generic as possible. It uses the OpenCollaboration Services API, through the Attica library. Attica is a library, not yet independent, as I understand originally developed for the OCS dataengine and currently in kdeplasma-addons. Though the dataengine with Attica is already in 4.3, the Attica library may land into KDE 4.4. Until then, I have crudely copied over libAttica into Amarok’s source tree.

This dialog is already integrated in Amarok’s master branch on Gitorious, and my work on this about dialog can be tracked on my Gitorious page

What follows is a screenshot of the dialog on startup. We can’t try to download data right away because the user has to sign into openDesktop first. So we just show the old style credits, with a button on top.


When the user clicks on “Connect to openDesktop…”, a login dialog appears and the data is fetched from Meanwhile, authors who don’t wish to use are already added to the list.


Finally, when the data has been downloaded, the list is completely populated.


This works for contributors without author status too, with the profiles being shown in a thinner format to save space.

Social Desktop integration in KAboutDialog

This dialog is still a moving target, and I’m posting quite regular updates and screenshots on its entry.


Posted by on 23/08/2009 in Amarok, KDE


Tags: ,

16 responses to “Social Desktop integration in KAboutDialog

  1. Matt Williams

    23/08/2009 at 17:07

    That’s really cool, I approve of making developers look more like real people (if at all possible!).

    One comment though, perhaps the “Connect to …” bit at the top should be made to look more like a real button. Otherwise it looks more like the dialog is telling you to do something rather than it being a possibility for you to tell the dialog to do something.

    Again, a really good idea and well presented so far 🙂

  2. suy

    23/08/2009 at 17:45

    About the feed: I administer one planet-like site, and I had always problems with wordpress feeds. The fix is add “?mrss=off” to the end of the feed URL. At least this works with the planetplanet software, don’t know about rawdog, but uses the same feedparser, so it probably is the same. You can fix it yourself changing the config in SVN (check

    • TĂ©o

      23/08/2009 at 17:50

      Thank you 🙂

      • icwiener

        23/08/2009 at 19:04

        .. or use the ATOM feed. 🙂

  3. Dion Moult

    23/08/2009 at 17:58

    This is a really good idea! Well implemented, but with one problem. This is a characteristic of open-source software that we are trying to showcase, but we hide it in the “help” menu, something I doubt many people click on. There needs to be somehow some way to differentiate this so people realise its there.

  4. Tsiolkovsky

    23/08/2009 at 18:18

    I like this. Everything that brings developer and user communities closer is much appreciated. BTW culd it be possible to somehow integrate the Connect to openDesktop into the KDE login so that it works right away for all the applications and plasmoids that could use this feature. I can’t imagine if I would have to click it in very app and plasmoid seperately. Also what about the social data for the Translators tab in the about dialog? Is this also handled?

    • TĂ©o

      23/08/2009 at 18:28

      Well I’d really like to push this about dialog to kdelibs some time soon, maybe even for 4.4 if I make it. So I’d integrate the data into KAboutPerson and KAboutData (and simplify a lot of the workaround code I currently use in Amarok). What you’re proposing is an awesome idea which also depends on the integration of libAttica into kdelibs. It should all be much easier then, right now Amarok and the plasmoid use two copies of the very same library which is not a very optimal situation. The Translators tab is not currently handled but after a commit I pushed today to Amarok’s master branch which refactors the list widget, I can estimate that it should be very easy to add translators data.

  5. Eleftherios Kosmas

    23/08/2009 at 23:01

    That’s seriously awesome. I thinks it’s a great concept not only for our beloved media player but generally for all KDE applications. Way to go Teo.

  6. Sir Sane

    23/08/2009 at 23:07

    Any word on possibly integrating a field for microblogging sites like

    • TĂ©o

      23/08/2009 at 23:12

      Well it is possible but tightly integrating the whole thing would be overkill imho, that’s what microblogging apps and plasmoids are for. I’d rather add links to the developers’ feeds, the same way I add icons for email, homepage and profile.

      • Sir Sane

        24/08/2009 at 02:47

        That’s what I meant, sorry. :s

  7. litb

    25/08/2009 at 07:16

    I really like that things!

    btw, what is that widget style called? It looks really neat

    • TĂ©o

      27/08/2009 at 18:25

      The widget style is QtCurve, and I like it more than Oxygen because it’s
      1) much more configurable
      2) less wasted space on thick borders and
      3) unlike Oxygen, QtCurve doesn’t ignore some important QStyle features such as setFlat() or QFrame::StyledPanel.
      So yeah, the only thing I miss in QtCurve is rounded menus 🙂

  8. Seabstian

    04/10/2009 at 10:46

    The integration is a great idea!
    I think it honors the developers…


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: