Category Archives: BlaBla

Active building blocks: Nepomuk

BlaBla

As said by the title of my last post, one of the things that we are trying to do with Active is “humanizing electrons”… make devices behave how people think instead of making people think like the implementation details behave.

To do that, it is necessary to phase out or better, demote and have in a less prominent way some of the concepts that always been with us, but not because they were good, because for tone technical reason or another 20 years ago we were forced to do this way.

Here we aren’t forced to follow the legacy, and the acquired skills that limit what can be changed on the desktop, on this kind of devices we have almost no legacy. (don’t worry, there won’t be a fresh start in the desktop, only continuous evolutionary changes)

  • Why I have to care what is a “file” and what it isn’t aren’t pieces of information all the same? i couldn’t care less if a contact or a bookmark are stored in a different way than a pdf.
  • Why I have to organize my things in a weird tree structure, data type that in the human brain simply doesn’t compute?
  • Why I see arcane names like /usr, /etc and /dev that are simply pointless in my day to day work?
  • Why if i subdivide my files by project, a file can’t be in two projects unless i do a copy that will go out of sync?
  • I want to be able to annotate every thing, to be able to remind me what this is about and why is there (informations that would be unwanted in the file itself tough)
  • Why if the mail application has informations about a contact, this information is buried in this application and everything else can’t have it?

nepomuk

This list could go on for many more points, but i think the concept is clear: while tools like the filesystem are awesome if well used, but aren’t enough anymore for the amount of data nowdays (yes i know, there will always be people that won’t need this, but this is true for any tool in existence).

In Plasma Active we base our graphical representation as much as possible on activities and on what “things” belong to an activity.

We try to make as less difference as possible between what is a file and what it isn’t.

This was only possible because one of the pillars of KDE: Nepomuk.

Nepomuk provides a metadata storage that is abstract enough to do almost everything you please with it. Everything can be a resource: being files, contacts, urls, places or activities. And everything can be related to everything, and here we have things related to activities, or between themselves (who sent to me this file as attachment?)

Sadly, in the desktop is still not used much, apart some pieces of ui to expose its features here and there (good news, getting better here too), but as Plasma Active shows, if the whole UX has its capabilities as the foundation, it can change the way the device is used in a way that surely wouldn’t be possible without it πŸ˜‰

Another good news, is that while some pieces of Plasma Active are specific of a device UX, some other parts, like the enhancements to the activity manager are shared with the desktop, so should be easy to expect some of those features, like an UI for connection between resources and activities soon in the desktop as well.

Looking back on Plasma on devices

BlaBla

Last week has been pretty hectic, i can’t really believe that we are so near to the very first release of Plasma Active.

ONE

This is the platform that will be the basis of the pursuit of our vision about the device spectrum, is the platform we will use to build not only a very good user interface for tablets, but to go from there colonizing many other kind of devices.

This has been kind of a mirage for me from the last (two? three already?) years, we are playing with this concept and playing around a workspace for mobile devices since years.. there was plasma-mid, a first prototype designed to run on devices like the venerable n810, that was around 2008.

Then we worked on the first workspace of the KDE project that was not aimed to a strictly traditional desktop machine, KDE Plasma Netbook.

We had to go deeper..

At Tokamak4, we started a new shell, this time oriented towards mobile devices, way more customizable than the previous ones, because it was more heavily based on QML. as a demo state it was made run on cell phones and tablet devices, it learned how to make phone calls, it had many user interfaces looking completely different each other.

Fast forward to the beginning of this year, also thanks to basysKom that seen the potential in it, this shell was improved and merged with a really interesting project: Contour.

It aims to bring some really innovative concept to device UX: deeper use of activities, gathering of usage statistics for useful recommendations (watch out for Plasma Active Two πŸ˜‰ and in general diminish the importance of the “App” blending all in an uniform seamless “Workflow”.

Plasma Active was born, and became something way bigger than it was expected in the beginning. Bigger than just a tablet interface, that is the “visible” part that will be released tomorrow.

Bigger than just the source code that will be released: it’s a new way to approach to the development of components (not even saying “apps” anymore;) for an user experience composed of more than a single device. It’s the first really fully open stack for devices, bringing an open (as in open process, not only code) system in the closest sector of computing to date.

It’s also the manifest of commitment and reliability of an opensource community: we said over half a year ago that the release was going to be 9/10/11, and 9/10/11 is, showing how serious our intentions are.

What a ride has been, and what a ride will be from here, gonna be fun πŸ˜€

Active play and test

BlaBla

Those last months have been a lot of hard work in the march towards Plasma Active 1.0, or PA1 in short

Now I can’t already say an exact day and time of the release, but we are sure that’s near, and i mean really near πŸ˜‰

Every one of you can help making the first release as good as possible, how?

The current pre-release images are downloadable from the usual place, test the hell out of it, it’s fun πŸ™‚

If you find something that is still a bit problematic, you can go to bugs.kde.org, and in the report bug form, there is the “Active” product among the others.

So test it, play with it, have fun and help us to make PA1 as good as possible πŸ™‚

Wireless on Plasma Active MeeGo image

BlaBla

Since MeeGo uses Connman instead of Networkmanager to handle network connections, that means there is not (yet πŸ˜‰ an user interface to control in right from the KDE workspaces.

If you happen to have one of the Desktop summit Exopc with the Contour user interface that there has been installed on several devices, here are some easy steps to get the MeeGo tablet Connman ui installed and be able to connect to a wireless network.

Ingredients

  • A device running the Contour MeeGo ui
  • An USB keyboard
  • Either an USB ethernet adaptor (preferred) or a thumbdrive

recipe

After having installed everything on the device, start the settings application with meego-qml-launcher –app meego-ux-settings. After it connects to your access point, it will automatically reconnect on next startup, so no need to launch the settings app again until you want to change access point.

Don’t forget the two getting started IRC session that will be held this week, where we can help on this and other issues

A plasmoid that can manage connections using Connman is planned shortly πŸ˜‰

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.

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 πŸ™‚

Meego summit and Mobile sprint

BlaBla

It’s always hard to get a real firm impression on something at the first shot of an unfamiliar new thing, but i can say that it has been a really good conference, at least the impression was of a warm and friendly community even if the organization was on an huge scale (having a *stadium* all for us was kinda a weird feeling, as the meego commercials at the sides of the playing field during the football game, geekiness in the most ungeek place :p) and the netbooks/tablets are quite sweet too πŸ™‚

As the KDE side, I am seeing quite a lot possibilities of collaboration. So far most of the problems seems to revolve around one thing. Awareness. I’ve seen many times real interest after a quick chat explaining what KDE actually is.
Unfortunately KDE is seen as that big monolithic project completely desktop specific…

As soon we started to talk about the kde-mobile modularization effort of kdelibs, the multiple shells of Plasma (Plasma as a building block set to make greatly customized workspaces for any kind of device and/or simple fullscreen applications that can dynamically load a different ui for each profile)

So, in the end was quite educational for everybody. It did let us discover more about what MeeGo, how it works, and what their parts are, and many of the MeeGo community find out about what KDE is. Two communitites encountering without colliding. Great!

Today I’m in Berlin at the KDAB office. They were so kind to host an happy bunch of KDE people to discuss and develop with a mobile target in mind.

Given that almost everybody here has that tablet, expect nice demos and videos of some surprising use of that tablet later this week, alongside (finally!) real packages to make easy for everyone to try KDE on MeeGo.

Wanna some teasing?

Plasma tablet UI prototype:

OGG version

KDE games: Palapeli

OGG version