Tag Archives: kde

Contouring resources

Software

Unfortunately I haven’t blogged since a llloong time, my fault 😉

But this doesn’t mean the things in Plasma land aren’t moving, au contraire! Last months I have been busy as hell with the Contour project, and the results are starting to became evident.

A quite big amount of progress has been made on several fronts: the user interface, the infrastructure of the Plasma mobile shell and what is even down in the stack from it, like Nepomuk and the KDE mobile profile

Also on the system integration front things have changed a lot. Admittedly trying out the KDE mobile software on an actual device has always been a bit of a voodoo operation, but now there are two ready to go booting pendrive images, for MeeGo and OpenSuse, together of course always updated package repositories (further information on the Plasma Active wiki).

I now want to show, as often as possible short videos of the User Interface of Contour, a little teaser for each notable feature.

OGG version.

First thing first, the screen the user sees when the tablet is turned on: an usual workspace with a wallpaper… it has icons.. (and eventually widgets)

but, interaction-wide you see that has some improvements for small/medium touch screens: icons are not individual, but categorized in boxes (documents, music, contacts…).

Second, everything is always aligned to a grid, making the composition always “look good” and impossible for those boxes to overlap, but still possible to drag them around to give a personal organization that helps your spatial memory.

And the last important characteristic is behind the scenes: that’s not a view on some folder as the desktops used to be: but it’s all data coming from Nepomuk, meaning that can be any type of what in Nepomuk is a “Resource”, so not only a file but also more abstract data like a contact, an email or a geographical location.

Everything that you see there are resources that have been connected to the activity, so each one will show a different list of resources (this could also make possible in the future for instance to show those activity resources as default in a file open dialog for instance)

How those resources can be connected to activities.. material for the next video 😉

If you are interested to have a more in depth look at the Contour UX and you will be at the Desktop summit in Berlin, you can stop by at this talk :p

Desktop summit

Reminder on the wallpaper contest

BlaBla

Just a little reminder: since the release of the next version of KDE Plasma Workspace draws near, as usual, if you are a good photographer, you have the opportunity to get one of your photos in the default set of wallpapers of the upcoming release.

If you want to participate, those are the rules:

  • you must be the author of the photograph, you must provide your full name and you have to state the license (lgpl v3 is better).
  • entries must be at least 1920×1200 resolution and a copy of the photo in RAW format (if available) is apprecitated.
  • you must send your photographs to davide.bettio@kdemail.net before the 13th of june with the word “WALLPAPER” in the subject

Your wallpapers will be evaluted by some of the KDE artists and the best wallpapers will be released as part of KDE Plasma Workspace 4.7.

Activity config UI for Contour and Active

Software

This is a quick update on a feature that was still missing, but now we got it ;).

this short video shows the new ui for the configuration of an activity: right now you can configure the activity name and wallpaper, probably more options to come (even tough it will remain as simple as possible). It is accessed by a button on the activity switcher weel or from the activity itself (if the used Plasma containment provides a config button)

OGG version

This will probably be shared in the initial creation of an activity as well. In the near weeks it will be possible from the activity wheel to create and delete activities (including options to clone the current activity, or create one based on templates downloadable from the web), so, more to come, stay tuned 😉

Welcome Contour

BlaBla

This is a follow up of another good news that recently appeared on PlanetKDE.

Friday a new project within KDE was announced: Plasma Active. We explained that wasn’t a single project, but more an umbrella of many components, all of them are a piece that we think necessary to reach our goad of a creating a desirable user experience encompassing a spectrum of devices (and remember the date 09.10.11, just saying)

Today we are happy to announce another project that will be a pretty important piece of the puzzle: Contour

The problem

If we want to build a desiderable experience on devices, we have to look around on existing offerings to look not only for what we like, but also for what we don’t like.

What is the common factor of today’s tablet and handheld operating systems?

The center of how they work, are applications, so called apps (why trying to give a new word to a concept at least 40 years old still escapes me btw).

All the tasks that you can accomplish with the device are delegated to a single application (that maybe isn’t enough to do exactly what you want). That’s really a model not much different compared to the desktop one.

Now, having a different entity, with specialized logic and specialized ui to accomplish a particular task is a good thing, but the current problem is the lack of integration among them, especially on the mobile world

On the desktop side, in KDE we are doing pretty good integration wise, can we do as good in the mobile front?

And with integration I don’t mean (only) look and feel. This is important as well as there are also valid use cases to break it in some particular situations.

Contour

This new project is born from the collaboration between several KDE people, the Plasma and Nepomuk project, Basyskom and Open-slx, you can see a first concept video of the new shell here:

OGG version

Right now I just want to present this user interaction prototype, then we’ll talk more about the actual details behind it, both UI-wise and what is the technology making it possible.

What I’m talking about is all the applications being deeply integrated in the workspace, for certain things there should be rally a central place, from which both workspace and applications could tap:

  • What I’m doing right now with my device? (yes, activities again!)
  • What kind of resources are now open? (can be files, contacts, urls, whatever)
  • What kind of resources are relevant to this activity? (so that i can get very quickly just to them, without having to worry about complex menus and submenus)
  • Somewhat related example on the above point: I don’t want 3 apps and the workspace having 4 different concepts and storage for “Bookmarks” for instance.
  • What kind of resources could be relevant to this activity? or what actions could be important? (could be publish this photo, answer this email, feed the fish, whatever 🙂

Now, In the last years of development in KDE, we have almost all the needed technology to do all of the mentioned points, just think about Activities, taking a more definite shape in 4.6, resource and ontology storage in Nepomuk, central PIM data storage in Akonadi…

It’s just somewhat harder to do on a desktop since here there are quite a lot of legacy constraints and a long “genetic memory” of the last 30 years that makes really hard for new paradigms to emerge, however I’m sure we’ll gradually get into it there as well 🙂

Mobile systems are still a white canvas where we still can experiment something new, and provided we have most of the technology for it, we’ll be able to have this resource centric, activity based system in a pretty good shape in a really short time.

Plasma Active

So how does it relate to Plasma Active and the current tablet user interface?

Contour is an experimental user interface based on Plasma, that does an heavy usage of Nepomuk and won’t be intended for everyday usage at first, but…

As the rest of KDE and Plasma as well, Contour is designed to be highly modular, so as soon as a part of it gets “ready”, the main Plasma Tablet user interface will immediately adopt it (and eventual other Active workspaces that will surface later).

Reactivate

BlaBla

During last week we spitted out some strange hints about something cool we are preparing. It was been obvious that it had something to do with Plasma and something to do with mobile technologies.

So, here we go with Plasma Active

Active

the active project starts from a simple vision: Create a desirable user experience encompassing a spectrum of devices.

What does it mean? The KDE tecnologies have quite a lot of potential, i think absolutely everywhere, but right nowwe are still mostly targeted on the desktop.

I think that with what we got as platform, is fairly easy, once the last building blocks are there to build both workspaces and applications that can adapt to the whole spectrum of devices computing is today.

An importnant thig comes already in the name: it’s Plasma Active and not Plasma Mobile: why?

What we are doing right now is exactly a mobile project: tablets to be precise, but stopping there would be a mistake.

The Active project is about taking a step further and build applications that have their user interface and implementation completely detached, is about forcing ourselves to not think about a small use case but always about the bigger picture.

Our goal is to be sure that if an application is “certified to be active” can run as well in a tablet, as in an handheld device, as in a set top box, as in a type of device we have completely no idea about, once an user interface module specific for its screen size and input method has been added.

Sounds crazy

But we have the technology, We have QtQuick and Plasma, that combined can provide a single package, that has diffent user interfaces for each supported platform, and the best available interface is chosen from the device. Hopefully the “just right” UI elements will be available, otherwise the best one from a list of preference will be chosen.

Current code

Most of the code for Active is developen in the Plasma mobile repository, with of course all the enhancements needed in the KDE libraries ending up immediately in the usual KDE repos, being immadiately available for the desktop as well.

We don’t only plan to work on the development of the software tough. It’s possible to test the current code from day one, pre packaged, updated continuously.

A bit of clarifications

After Sebas’ blog about it, there was a question on how the various things, Plasma-mobile, Plasma-tablet and the various mobile efforts in KDE relates to each other:

  • It’s not a different project compared to plasma-mobile and plasma-tablet
  • Plasma mobile and Plasma tablet are actually the same workspace, just a different UI loaded on top of it: that’s the direction we want in both the workspaces and the applications
  • It’s an effort to define a good user experience on the mobile, from the distribution all way up to the apps, of which the workspaces are a part of
  • Any application, any project is more than welcome to join, bigger the ecosystem is the better it is
  • It is now targeted to tablets, this doesn’t exclude phones, set top boxes and washing machines however, that’s the future ;).

Right now it’s available for OpenSuse, later.. who knows 😉

Let’s create the best possible tablet user experience first, then the world 🙂

KDE, what next?

BlaBla

Let me tell you a little story, a story about our vision since a while, a story about what happened the last week, a story about what will happen now and why it will matter for you.

Let’s start with a digression. I started to write this entry several days ago on the bus, from the Milan airport to Turin, after some days in Germany (more on that below) the return in Italy was so typical and so contrasting with the German aim for precision. The highway was closed in three different points, the bus had to take diversions that made the journey some hours longer. Max respect to the driver btw, he managed so well things that were going wrong in an epic way.

But in the end we arrived where we wanted, I decided to not get angry but take the occasion to think and write this lengthy blog entry…

This remembers to me some other story, that wasn’t always easy as well…

Uh, has it something to do with KDE?

14 years ago, the KDE community was born with a very bold vision: give to everybody a cool, attractive, easy to use desktop environment, now we are a worldwide community with hundreds of members, we provide a very strong foundation with the kdelibs framework, many apps, the Plasma Desktop workspace and the Plasma Netbook workspace.

In the end, why we work on the KDE software? Probably everybody has a different answer, in my case i can say, free software, done on top of what i think is the best technology available today is giving to people something that can make their lives slightly better, so the world slightly better as well.

But this to be true it must reach as many people as possible and be really useful on their today’s needs, otherwise it remains just a nice coding exercise.

Every now and then some group feels that a new kind of jump is needed.

  • How many expectations we did deliver?
  • Do we need something more to be able to be where we want?
  • How much the world is changing?

Sometimes in the arc of just one or two years, things are changed so much that you have to question your answers (pun intended?): are the questions still the same?

Many things happened in the last few years since the adventure of the 4th iteration of our platform started (that’s roughly when I joined this strange family: in retrospective I think one of the reasons was that it was one of those “dare to dream” moments).

Some of the things that happened have influenced the future of computing in general (the mobile shift that happening in recent years is only one of them), some others more near to KDE, some things happened were not so good, some were very good.

On the mobile

Not a lemonWhat didn’t change is my (ours) certainty on the goodness of the KDE platform, even when seemed a weight for some, it’s an amazing toolbox that I know it will be there in the whole device spectrum, giving not only a consistency in look and feel and behavior for the user, but also for the developer.

Some says that the desktop days are over, some says that the desktop world won’t change that much. There is truth in both. desktop is here to stay, there are so much tasks that simply can be done just there (this is confirmed as well by desktop sales going significantly up last year)

But there is as well another truth. often, and for more and more tasks, a more “human”, portable and ergonomic device is way more appealing, smartphones and tablets are an example, and that’s why all our efforts in this direction started.

We have several projects already in the mobile space, like the Plasma mobile workspace, Kontact touch, Marble, Calligra.

Can we do better? Can we have more mobile applications? But most important, can we provide a direction, an unified vision that would make KDE lead and be innovative in the mobile space?

In the end, have an unified, compelling story that would be interesting enough to make KDE the natural choice in the mobile world to both users, and who actually wants to sell a device and has to choose between the various platforms he can ship (and how much freedom he will have when he wants to build a customized, fine tuned experience)

I know what you did last week

Last week some KDE people did met up and started to discuss a bit about those very issues, challenging ourselves and taking a step back to see what we could do to improve our outreach

What we realized is that what is missing is for sure a lot, but on the other hand, we are so near as well.

So expect new entries about it in the near future, we are thinking on it 🙂

Build a device scalable user interface

Software

As previewed some time ago, the ongoing effort of porting the current stock Plasma Desktop widgets to QML isn’t not just recreating them and be done with it, but rather pushing QML a bit beyond of what it can usually do and give a platform to build user interfaces that can adapt to different kinds of situations and devices permitting of:

  • Shipping the user interface, graphic assets and JavaScript code in a simple package with a well defined and familiar filesystem structure: one single package that can adapt to any devices you want
  • For a given device, you must be able to customize and rewrite any part of the interface you want
  • But you should have to rewrite only the parts you need, nothing more, recycling all the rest

In QML plasmoids, we provide some mechanisms (plasmapackage:/ urls, plasmoid.file() function) that will load resources always from within the Plasma package (the single zip file you downloaded from Get hot new stuff, for instance) and always the proper one. What doe it mean?

Any resource you may need, that can be a qml file, a javascript file, an image, a sound… can be something shared between all possible platform targets, or something that is specific for a certain one. Not only this, you coul need as well for instance a file that is shared between a tablet and handheld profile, but not used in the desktop world.

this little video shows the rss news reader QML plasmoid (the usual guinea pig i use for this kind of experiments) loaded on a desktop, looking like an usual harmless desktop widget and as a standalone window, intended to be used on a tablet form factor device.

OGG version

And a blurry live action video here:

OGG version