Updates on Plasma land!

August 28, 2010

During the first semester of this year I’ve been playing with the idea of creating a “Share” dataengine that would support scriptable plugins. This idea came from the fact that there were a lot of hacks on the pastebin dataengine that at the time were the only “fast” solutions to the problems I was facing. I was also motivated by the amount of bugs/wishes on bko regarding new services.

I started to hack on this new dataengine and now it’s ready! Since some weeks ago I moved from kdereview to kdebase and now you can write plugins for your favourite services using any of the scripting languages that Kross supports today. Later I will enable GHNS on the pastebin applet so if you have a special service that you want to write a plugin you don’t have to wait for a KDE release (that’s what happened with the old dataengine), you will just write it using JavaScript/Python/Ruby/etc and upload to kde-apps.org . Neat! πŸ˜€ I hope that a lot of users will use this feature and that this dataengine will be specially useful for mobile devices.

To complete the cycle, yesterday I finished the port of the pastebin applet to use the new dataengine and I advice everyone out there that is using the “pastebin dataengine” (I really don’t think there is anybody, but….) to change your plasmoid to use the new one. People running trunk are already experiencing the new dataengine πŸ™‚ Ah, almost forgot: now it supports remote files because I use KIO for all the file operations. So just grab your samba/nfs/webdav files and share them using your favourite text/image service!

Playing with dataengines I started to hack on another topic: sharing of articles on Akregator. I started to feel too much dependent on Google’s infrastructure and decided to move some of my stuff “out of the cloud”. I started with Google Reader and put all my feeds on Akregator. Kudos for Google for allowing me to export my list of feeds and kudos to Akregator that imports the file. Everybody is happy and Google is not evil trying to hold my data.

The next step was the “share” feature of Google Reader that I like very very much. First, to read my friend’s shares I could just get the URL from their “details” on Google Reader and put the URL on Akregator. Kudos for Google again for using rss feeds into this “share feature”. It made my life easier and I could subscribe to my friend’s shared items.

The missing bit was my shares! How could I share with my friends articles that I wanted? I started playing with Plasma’sΒ  Microblog dataengine and successfully started sharing articles using my microblog account on identi.ca. Thanks to identi.ca the shares also went to my twitter and could also go to facebook!!!!! When I shared an article it made a post with the title of the article plus the URL to access the article and the tag “#share”. People interested in reading my shares can subscribe to my dents or tweets or go to http://identi.ca/morpheuz/tag/share or even subscribe to http://identi.ca/morpheuz/tag/share/rss on their feed readers. Identi.ca did a great job here providing feeds for everything. I couldn’t find the feeds for my tags on tweeter but maybe it was just me lacking knowledge. By the way, thanks to Lydia for helping me to figure out this URLs. I couldn’t have done without her hehe πŸ˜›

Update: to have feeds synced between my different computers I’m using automated scripts with unison. Every time I login and logout unison syncs the feeds with a server. So I just need to login on a different computer of mine and I have the same “status” for my feeds.

Right now I started to move all the code to a proper Akregator plugin and I hope that soon it’s finished and merged into trunk so everybody can enjoy this feature!

As I was playing with dataengines I decided to fix some bugs on the weather dataengine as one of my friends (Aloisio) just migrated to KDE and faced this annoying bugs related to network and retrieval of the weather. There were a lot of small issues here and there but at the end of the day (after a lot of hours hacking and not so much lines of code =/) I could fix the problems and some others that I found on the way.

Summary: 5 pastebin bugs/wishes closed + 3 bug fixes on weather that were not reported yet (I couldn’t find them at least).

Busy, busy, busy day!!

Next post: a little surprise that I received for joining the game πŸ˜‰


Applying transformations to your bugs

July 16, 2010

Today there was this presentation from Apple to talk about the famous iPhone4 antenna problem. I’ll represent this problem (bug) with the picture below made by one of INdT’s designers (Patricia Montenegro) some time ago:

The Bug

The Bug - watch out the way it looks to you!

To be honest I wasn’t expecting anything “technical” in the sense that I wasn’t expecting a technical explanation to the problem itself (you can find it in numerous places on the web) or for a possible solution, but I wanted to watch how Jobs would deal with with the situation.

Being honest again, he did what he does best! At first, he acknowledged the problem as it couldn’t be denied. Then he said that actually they did a favor to the smartphone’s industry because there were other phones with the same problem (showed pictures of other phones having the same issue – what doesn’t prove much, but…) but instead of “hiding” the antenna and hiding the problem, they actually put a big “X” on the problem (see picture below).

iPhone4 antenna

iPhone4 antenna

From my point of view it was just what we would call a “n00b” mistake :). I mean, Apple is doing phones since not so many time ago. It’s their 4th device (iPhone, iPhone 3G, iPhone 3GS and iPhone4 now), and they just didn’t face this problem before and had the brilliant idea. The problem may show up on other phones? Sure, but I’m sure that the other manufacturers know about the problem and try to “fix” it, being that hiding the antenna inside the case or whatever.

The next steps were just the table’s “turn over” (not sure if this expression exists in English, but it works pretty well in Portuguese :P): some (small) numbers about the how many people were actually affected by the bug. It was less than 1 in a 100 users (a beautiful way of saying less than 1% hehe). They get these numbers from the people that actually complained at Apple Care about the issue so those out there that just reading Engadget and Gizmodo about the issue were not counted of course.

But besides the number being so small, Apple does care about it’s users. All of them. See the kind of words used here? This is the place to do the magic trick. This is the place where you say that you’re not evil or bad but you actually care. Just after stating that you human enough to make mistakes, you ensure your “human position” showing that you care about others. Genious! It’s a statement that just makes the others stronger ;).

In order to take care of those 1% Apple will give for free cases for the iPhones, what prevents the bug and users will even be able to choose colors! And if they do not want the case, then a refund is offered. In Brazil this would be something that they would need to do because of the law: if you sell something that doesn’t work, you need to refund. I’m not sure how this works out on US but anyway, he transformed the user’s “right” into a company’s “feature”. Points again for Apple and Jobs for playing nice with the words.

After that, it was just more slides about all the nice features of iPhone4, why you should have one and more and more statements that Apple loves it’s users (yes, the word love is used in all the slides).

Apple and Love

Apple and Love

Summary: from the technical point of view it was just “we don’t have a way to fix this as this is a hardware problem and it’s a huge problem then.”. But saying so is the same as pushing the picture of our fellow bug in every user’s face.

Instead of doing that, they will solve the issue by giving the users a rubber case that costs less than 1 dollar and then create a link between the users and the company that is: “we are all humans. have you ever made a mistake? this is our first mistake. sorry. take this gift. ah, by the way we love you.”. This creates compassion (every human did something wrong once in his life) and then people stop bashing the company and it’s product. This “love history” also reinforces that they are humans, enabling them to screw things eventually. So with a few minutes, Jobs got our fellow and dressed him properly transforming The Bug in a Feature:

The feature - not so ugly anymore!

The feature - not so ugly anymore!

From my point of view, the truth is that Apple is a company with a product that costs you some money and just like any other company in any other industry, the products should be properly tested and should not have this kind of problems that are not solvable (what if they didn’t have the luck of the case solving the issue?). The good about open source products is that at least from the software side we can fix stuff as quick as possible. So please vendors: pay attention to the hardware you manufacture and leave them as open as possible to software that we want to put into that! πŸ˜€


KDE calls 'home'

July 10, 2010

Yep, I didn’t have time to blog during aKademy as you may have noticed πŸ™‚ The main reason is that I had a lot of discussions and attended to a huge number of BoFs. This aKademy rocked just as the others that I went. Huge thanks to the organization team, KDE e.V and sponsors for providing ways to make this happen and to have a lot of KDE hackers there!

Instead of doing a technical blog today, I will just say that during this aKademy KDE ‘called home’ for the first time. This means that for the first time in history πŸ™‚ we had KDE running on a mobile phone and we made a call with it! This was AWESOME! Just a summary: Plasma-Mobile and a plasmoid that worked as a dialer did the work, using the phone API of Maemo5 on a N900.

As Aaron noticed, our first call was a little bit more “interesting” than Graham Bell’s one. The first words on a telephone in history are:

Mr. Watson, come here. I want to see you.

Interesting…..but you may think that the transcription below is a little bit more interesting. I will also omit some context that would explain some of the questions/answers during this talk as I think that it may turn this more…let’s say…special πŸ˜‰ Enjoy!

My phone rings (for the sake of curiosity, my ringtone is “Snow” by Red Hot Chili Peppers) and the ID of the caller is “+41”. I answer and the call drops. I tell Helio that it should be some company from Brazil during TeleMarketing. While we walk to the bus for aKademy’s day trip it rings again. Alexis Menard is the caller this time:

Me: Bonsoir! er, Bonjour Alexis!
Alexis: Guess what?!
hhmm, you’re going to miss the dray trip because you just woke up?
Alexis: NO! Guess what ‘amiguinho’!? (note: ‘amiguinho’ means ‘little friend’ in portuguese)
Me: Oh, I got it! You’re the guy! Your bed is warmer than it should be?
Alexis: What?! No, no, no! Come on! GUESS WHAT?!
Me: I don’t know then! Let me think….ow yeah! GREAT! This phone call was made through the Plasma-Mobile stuff that we did yesterday?!
Alexis: Yes!! Finally!! I’m turning off my computer and meet you at the bus!
Me: OK! See you!

And then I tell everybody that was by my side that it was the first KDE phone call in history! REALLY GREAT! πŸ™‚ The conversation above may seem non-sense but all the questions had a reason and the answers too πŸ˜›

Soon we should post some more technical bits about Plasma-Mobile and also I plan to talk a little bit about KDE-Pim-Mobile, the new Sharebin engine (that will support scripted plugins and GHNS) and if you want to contribute to some use cases of Plasma-Mobile take a look at this link.

As a kind of “sad note”, I would also like to tell you that the QEdje scriptengine was removed due (my) lack of maintenance of the QEdje project.


Finally some news….and more Akademy!

June 22, 2010

I’ve been busy with some “internal work” that was not that fun and due to that, it was not worth it talking about it :(. However during this time I wrote some KDE stuff and right now I’m busy with some awesome work and this one I’ll share with everybody πŸ™‚

During what I call “bad days” I focused on writing the new Plasma data engine for the pastebin services. Actually, I decided to call it “sharebin” as pastebin remembers about just one service and doesn’t mean too much for the end user, while “share” is a great word to describe what this engine actually does. Basically it will be plugin based and the plugins (backends for services) can be written using JavaScript.

The benefits? It’s easier to extend and support new services so no more bugs on bko asking for this or that service (you can *easily*Β  implement it and provide it through kde-apps.org). Because of that, applets using the new data engine will be able to use GHNS to extend the amount of services that it uses.

As soon as we unfreeze trunk, I’ll send the engine for review and then update the pastebin applet to support it. Ah, we are also using KIO inside the data engine now! πŸ™‚ So, we also have support for “remote shares” (remote as in getting a file that is in the network – samba share for example). Good news right?

Now, I started to help the KDE PIM dudes and KDAB with their mobile version of the suite and anything that is related to it. So, I’m really looking forward having a great PIM suite for mobile devices. It uses all of the KDE infrastructure and the brand new Qt technology for creating rich UI interfaces: QML. It’s important to say that everything is being done on the open and upstream. Take a look at kmail mobile right now:

At the same time I’ll be in touch with the guys working on the Qt Components project, to provide feedback and use the stuff they are getting done. This is a really important project for QML and if you ever played with QML you know what I’m talking about ;).

I’m also going to Akademy this year thanks to the help of the e.V. and it’s sponsors (special thanks to Claudia that helped me with the booking :P). I’ll have a talk there with my fellow Alexis Menard about Plasma mobile and I hope that everybody that will be there enjoy the talk and the paper that we are working on! I also recommend the talk about Qt Components from Eduardo Fleury! If you want to talk about KDE Mobile, any other mobile subject (MeeGo, Maemo), anything KDE related, just about soccer or say hello…just do it πŸ˜› I’m too small to prevent you from doing any of the above listed things πŸ˜›


The Mobile Concept

February 28, 2010

Reading this post you were able to watch a video about Plasma Mobile (actually, Plasma on all kind of devices) and see some screenshots. But if you don’t know the ideas and concepts behind that, you are just going to bash it as it’s just the bootstrap of the project and a lot needs to be done.

And if for some reason you are wondering about the future of the netbook project, don’t worry πŸ™‚ Plasma Netbook and Plasma Mobile, besides being oriented for smaller form factors than a regular Desktop / Notebook, have different concepts as they’re serving for different purposes.Β  Marco (notmart) and all the Plasma team will still keep working on the netbook shell and if you read this post you can see the netbook shell running on Intel’s Jax10 devices. This was done toΒ  give us an idea about how the netbook interface would behave on touchscreen devices and helped Marco to do a lot of bug fixing and improvements.

Back to the mobile shell, this interface presented here was created for the same Jax10 device but the architecture was designed to support different “Views” (as in MVC) for even smaller devices (N900 anyone?) , while still sharing the same concepts though. Even if the interface was not designed for the N900 for example, we were able to run it with great performance and the usability was very good. What means that we’ll just need to slightly tweak the view to make it perfect for the N900. And all of this can be done by designers as the View is 100% done in QML πŸ™‚

So our first step was to brainstorm about launching menus (and how regular grid views seems to be so boring) and how different contexts affects the way you use your mobile. I mean, we are making desktops aware of contexts more and more and it’s silly to think that you don’t use this concept on your other devices.

We thought about having regular activities so the user would be able to have different set of plasmoids for each context that he’s working on. However it still needs to be very easy to do some stuff like:

  • Going to your dialer if it’s a phone;
  • Change between activities (later we can make the shell location aware so it’s possible to auto switch);
  • Launch applications easily and context aware (presenting the applications related to that context);

In order to achieve these goals we came with this idea: having a regular containment and a kind of panel that auto hides itself after some seconds. Important to say that right now this panel is 100% QML and is not like the desktop’s panel (that is a containment in another view). This makes the shell use less memory and be faster as it’s just playing with pixmaps in the end. After hiding, it shows a collapsed representation of the panel at the bottom that the user can either click on it or drag it up to show back the panel. This makes it really easy to change between one activity to another one while keeping the user interface clean enough so the user can play with his applets πŸ˜‰

First Mockup by Nuno

The panel while in it's collapsed mode

But then you ask me: “I want to launch applications ? How can I do that ?”. One solution is to add an application launcher as one of the main activities and the other one is to enable context aware application launchers. So, looking at the pictures above think that you are at the “Internet Activity” and you want to launch your applications. You can always launch the application related to one plasmoid from it so if you have an RSS Feed plasmoid you are able to launch your feeds reader using this plasmoid.Β  But if the applications doesn’t have a related applet, in our concept you can just flip horizontally the current activity and you’ll find on it’s backside a context aware launcher that have shortcut icons for your applications and it’s size is proportional to the times that you launched the application and how much related to that activity the application is. This way it’s easy to find the most important applications for that activity.

Activity flipping to show...

...the context aware application launcher that right now is just a gradient πŸ˜›

It’s not there right now but the idea is that at the top we will have this small bar (that will be a containment) to show the status related widgets like battery, signals strength and other stuff very plasma, like clocks! It’s not there yet, but it will be!

Regarding the transitions from one activity to another we thought about sliding the activities up and down so there is the idea that we are throwing the current activity somewhere else and bringing the new one.

Throwing away the current activity....

...bringing the new one and fading out the panel....

...and the switch is done!

\Basically this is the concept behind the Plasma Mobile shell and after this it was just a matter of thinking about nice animations that would make sense, tweaking it’s timers and polishing icons πŸ™‚ It’s clear to us that during the development we’ll find flaws in this ideas and we will need to fix them, as well as that the implementation right now is a little bit dirty due to time constraints (Tokamak doesn’t last forever unfortunately). Next steps ? Fix all the ugly code, finish implementing the launch menu, polishing and bug fixing…what means that we just bootstrapped!

Ah, if you are wondering: the Plasma Netbook project still keeps up to speed and is not sharing this backend (besides sharing a lot from libplasma). The deal is that the Netbook really needs it’s own concept and implementation while Plasma Mobile is really meant to be used on smaller devices than netbooks πŸ˜‰

Plasma Mobile before deploying

Plasma Mobile on Jax10

I would like to thanks all tokamakers for providing great ideas and also INdT’s designers that gave me great ideas along the last years that I could apply for this concept.


YATP: Yet Another Tokamak Post

February 24, 2010
Tags: , ,

So, I just prepared a nice post about the job we have been doing during Tokamak 4 and what happened this days but I really don’t want to spoil cool stuff before we can at least give you some screenshots and videos πŸ˜‰ Keep reading this blog as the next two posts will explain all of this and give some pretty and nice screenshots and videos!

First of all I would like to thank Will Stephenson, openSUSE and KDE e.V. (and of course everybody who supports the KDE e.V.) for hosting this developer sprint. It was awesome to put together people from three different teams that develop stuff that have a huge overlap area (Plasma + KWin + Oxygen). Really, thank you very much. I’m proud that you’re part of the KDE community!

Weather has been good (compared to Oslo and Finland where I was spending the last weeks) and the office is really good to work on. We have a lot of different devices to hack on (big computers with touchscreens, small devices from Intel and Nokia and the regular notebooks and netbooks) and we were able to expose a little bit more of our work to the local community (as well as see some old pictures of a sprint that happened at this same place in 2002).

From my side I was planning to bump the Pastebin applet with some new ideas and work on Plasmate and shell mobile but it seems that in the end I was able to just stick with one of these three targets. Anyway I hope that I can finish at least one more of then until the release of KDE SC 4.5.

Here is everybody that joined our developer sprint and keep watching this blog because tomorrow I’ll have some cool stuff to show everybody! Again: thanks to our hosts and to the Plasma, KWin and Oxygen teams for being so great!

The Desktop Konquering Germany

Tokamak Group Photo: Plasma, KWin and Oxygen teams


…not so long after all

February 3, 2010

After all the stuff that happened in my professional and personal life last month we can extract some technical bits πŸ™‚

First of all, during Camp KDE it was awesome to talk to people like Jos, Celeste, Alexandra, Till, Leo and Jeff (and many others). It’s good to share your thoughts with many people that you just don’t have this big bandwith for chat that you have when you’re physically together πŸ™‚

Our awesome dragons :P

Our awesome dragons πŸ˜›

I spent last month studying and working with QML, trying to get the most of it and I think that I (and the team that I work with of course) reached a very good level of knowledge regarding the new Qt’s declarative language. We have some expertise with declarative languages for some time now (started with Edje three years ago) and went through QEdje and now we have a proper Qt solution for this that will probably be released with Qt 4.7.

QML is awesome. Big tip: just try to avoid “leaking” code from your c++ controllers and models and you’ll get any interface that your designers want for free :). We achieved very good results working with this architecture for software and I really recommend it for everybody (I’m not talking about this right now as it can be a whole paper – hmm, maybe a paper for next Akademy ? πŸ˜‰ ).

Alexis showing QML mobile shell on N900

Alexis showing QML mobile shell on N900

Ok, so after studying QML and talking a lot with Alexis and others (like Helio) we had great ideas to try out on mobile devices (read N900 here). Let’s see what we can do during tokamak 4. Good to read Aaron’s post about it and to know that he’s excited with this possibility too. I talked about this during my talk at Latinoware conference and right now we can expand and make “my dreams” come true. We have really good use cases for this and we should really focus on this at first. We need help from designers (Nuno and oxygen team?) and usability experts (Celeste, here I am again – I know you should hate me every time I say your name under this circumstances hehe :P). The design of this kind of product should be the first step after studying technologies.

Talking about KDE: for KDE 4.5 I’m really going to change the pastebin applet. Feature-wise it’s really in good shape but it’s not very healthy code-wise and we can really improve it and it’s data engines to something more user friendly and also that can be easily improved with the use of plugins (anybody thinking about service providers and GHNS ?). First of all, it’s not user friendly to call it “pastebin”. My mom have no clue what pastebin is. For sure she knows what “Share it” means and we can make use of KIPI plugins to allow it to export things to Flickr and other services too. So, for 4.5 expect some big improvements on the developer side of pastebin. From a user’s perspective it should just have a better config dialog, interface and will have support for much more services πŸ™‚ (at least I hope so).

Just upgraded to trunk (KDE SC 4.5) and it already looks awesome: from the KDE theme to the new notification messages that Marco is working on. Amarok (as always) had (good) surprises for me and this “Photo” widget is awesome. It ties together the awesome experience of one of your senses (audition) to another sense (vision) and it’s awesome. Great pictures from my favorite artists and songs. Amarok++.

Amarok and new Photo Widget

Amarok and new Photo Widget

Right now, I want to work on so many cool stuff and I just don’t have the time. Probably work is going to consume most of my time for the next 2 months but I’ll make it work and will help KDE to get even better and to start working on Maemo for example. Konquer the world!

Ah, as a simple tip: if you own an N900 just install the “Angry birds” game, it’s awesome hehe πŸ™‚



A long time ago…

February 3, 2010

Well, it has been a long time since my last post and a lot of stuff happened during that, specially regarding work and that explains a little bit why I was so “offline” last days (month).

It all started when I received my N900 from Maemo’s developer program that is just awesome as it gives the opportunity for developer to have access to the platform and keep developing for it. Comparing to other options: for some fruit company’s platform you have to pay to develop for a closed platform and for other you receive devices to develop to an open platform.Β  Big kudos to Nokia for everything it’s doing with Maemo.

Regarding Maemo, I used my N900 in the last month on all business trips that I did and the vision of having contacts instead of accounts really made a difference. It was so easy to use Skype or my SIP provider (Inphonex) while I was out of the country that my mobile phone just worked as it should always work: as a personal extension of my home phone. Perfect.

So, the trips began with Camp KDE and I went to Los Angeles one week before the conference itself as I had some days to take as vacations. It was really great, from watching a live record of one of my favourite TV shows (Two and a Half men) to watching all the amazing talks during Camp KDE it was all great. I would like to also send some kudos to Camp KDE organizers. I know how hard it is to actually make an event like that happen.

The gate where the show was recorded

The gate where the show was recorded

After Camp KDE I just had three days at home and then went to Oslo/Tampere for Qt work and it was really great to actually see snow for the second time. First time I’ve ever seen it snowing actually (the first time I needed to go up to a mountain last Tokamak hehe – thanks Marius for the chance!! it was awesome).

During this trips I had some ideas regarding mobile platforms and discussed a little bit of it during my talk at Camp KDE and also with Alexis Menard (former Troll). I think that for Tokamak 4 we’re going to have some nice ideas to work on for mobile platforms. It’s important to say that this is all at “pre-pre-pre-pre beginning stage” and that we have a lot of work to be done on the Netbook effort for example that Marco is taking care in an awesome way πŸ™‚

Back to reality I have some work to be done and we are already setting things up for Bossa Conference. So I have Carnival, Tokamak 4 and Bossa Conference in a row. And still job to be done…well, I think I can handle that πŸ˜‰

Bossa Conference

Bossa Conference

So, this is all that happened last month (trust me, a lot happened) and next post will be a little more technical or at least more KDE related and for sure I’ll have some more Maemo related posts in the (very) near future (specially after Tokamak 4).



Qt 4.6: Ow!

December 1, 2009

So, Qt 4.6.0 is out! It’s really a “big” release: QAnimation Framework, Symbian Release, Qt Creator 1.3, Maemo 5 Tech Preview and Qt Mobility. Ow!

Basically we have been working with the trolls in this release for a year now and it was awesome to see how we got from 4.5 to 4.6. All the work done on the APIs, bug fixing, the release process and also making it more open. The LGPL license, the opening of repositories and bug tracker.

I’ve been advertising about a little piece of this game that is QGraphicsAnchorLayout that is where we spent most of our efforts for this release. We hope that this will help people out there working with rich UI applications and in the need of better layout classes.

Sometime ago I also wrote about some demos for the Maemo and Symbian platforms showing the power of Qt Animation Framework and Qt 4.6 itself as it improved a lot in performance (besides the fact of integration with the platforms as we have the same code for both platforms).

You can take a look at the demos at the video below and try on your mobile phones downloading the sis/deb files from this place. Remember that these are UI demos and some of them are not fully implemented like the Hyper UI not doing real phone calls or not being able to add items to the shopping list (however the Weather and My Budget are probably very, if not 100%, functional).

If you want to take a look at the demo’s code, be my guest and check gitorious for it :). Ah, for those that missed the link above for the download, here it is again: http://qtlabs.openbossa.org/mobile-demos/4.6.0/ . Summary of Qt 4.6 ? Ow !!!

Take a look at the official Qt 4.6 pages too:


Google Chrome OS. Or, how to miss the shot.

November 25, 2009

Recently there was a lot of noise regarding the new coolest guy on the street: Google Chrome OS. I was traveling and just today I could read all my feeds, emails and put everything on the right place πŸ™‚

Some people talked about it but I usually don’t pay attention or even read some articles but unluckily I was doing some reviews of Palm Pre, the new Zune and other devices and it’s software and for some reason I landed in the article of Free Software Magazine regarding Google Chrome OS and how KDE and GNOME shot each other on the head. I really don’t pay attention to any flame wars or trolls and usually just ignore these topics as they don’t take us anywhere. But this one got my attention (unluckily, again).

I’m writing about it for a few reasons: first the (lack) of technical background present in the article (I really don’t know the author and I’m not judging his technical skills besides the ones shown in the article), second due the fact of being a “Free Software” magazine (as it points out in the domain name at least) and third due the fact that people just love hype :).

First Act

Let’s talk about technical facts. If I remember correctly the author says that Chrome OS will use a “GNU/Linux” kernel. There is no such thing. The kernel is Linux: period. If it will use a GNU/Linux system is another history. Then there is this talk about Pulseaudio and this is a “hot topic” in the Linux audio system world.

There are people who like it and (from what I hear everyday in mailing lists and IRC channels) more people who doesn’t like it. Personally I don’t use it as I don’t have the need and my distro (slackware) does not ship it by default. The excuse of the author for the fact that Chrome OS was not using GNOME/KDE and/or GNU Linux was that none of them provides what Google wants and because there were too many options and none of them was good enough. If none of them is good enough I’ll let for the reader to decide about it but that is not why Google didn’t use it.

First of all Chrome OS will have the help of Canonical to build it’s stuff so probably behind the Webkit stuff that the user will see as the “workspace” it will just be a regular Linux distribution (probably Ubuntu based) behind the scenes. In the end it is a GNU/Linux based system.

One could argue about Android not using a GNU/Linux based system and people often confuse Android with Chrome OS (even Google doesn’t have an answer for it yet and Googlers says that probably in the future they will converge to the same thing). Android not using GNU/Linux is true and they don’t even use some common systems like HAL to handle hardware making some (ugly?) hacks to do what HAL would solve out of the box for them. But I understand their side and probably they had reasons to do that (dead lines, licenses, etc…).

Well, I’ll not talk about Google’s work right now. They are doing their job in the sense that they are presenting the world a new way of looking at the desktop. But some arguments like: “there are too many ‘desktops’ libraries” and this is due the fact GNU/Linux has two different desktop environments are just…how can I say…ah! these are arguments that comes from people with no technical background. I don’t write about economic stuff, do you know why ? Because I surely have an opinion, but I don’t have the technical background to write about it and I’ll probably just create more noise and confuse people instead of helping them understand something.

I’ll not extend myself more on this section as it can get too long: but arguments saying that applications have dependencies of .so and this is harmful to the user and proposing solutions that are already out there in ANY Linux distribution (bundle of libraries are packages and it’s dependencies if anybody has questions regarding this), etc.. just make noise and have no technical background.

Sometimes journalists/bloggers are the ones that write about everything without knowing anything and this leads to at least confusion.

Second act

I’m not sure if everybody knows that but Google is just arriving at Free Software world (as much other companies, like Nokia for example). The first approach of Google was being open source friend but not free software. And there is a huge difference.

Thanks to many people Google is changing this and becoming closer and closer to free software with initiatives such as Google Summer of Code, when they fund students to work on free software projects and much other initiatives.

But the point is that a “Free Software” magazine has an article attacking the free software community (I say attacking because there is no constructive feedback or review inside an article without technical background). Ok, you may be thinking that I’m beating too much in the “technical background” key, but even from the user’s point of view there are almost no valid arguments there besides the fact that we need to improve sound on Linux (big news here ;)).

So, we have a free software magazine, pushing a non free software initiative and talking about non sense stuff. Google has a great product on it’s hands and no doubt about it. But come on: if you want to compare KDE, GNOME and Chrome Workspace do it the proper way.

Third Act

Hype. It’s all about hype. Google Wave was the brand new silver bullet in the world. Everybody that is not a fan boy and seriously tried to used it know what I’m talking about. But the hype was so big because it was a Google’s product (and usually Google has great products) that everybody started creating use cases, theories and etc.. just due to that. No real use case, no real innovation. Just hype.

Again, Google has great products: GMail, Google Docs, Google Analytics, Google AdSense/AdWords, etc… But sometimes people start talking and expecting things just because of the hype. Trolls and fan boys are species that walks together in the world.

The same is happening with Chrome OS here. It’s not ready yet but people are already saying that it will be the best thing ever. Or even that very solid COMMUNITIES and the software around them are dead just because in one year somebody will bring a new product.

Examples from the past ? ‘Virtual reality’ (being used on browsers with VRML and videogames with those horrible goggles), ‘Java Applets’ (who don’t remember it being the final solution for dynamic web pages ???) or even ‘Director’ who was the killer application for multimedia stuff and would kill Flash ?

Final Act: Summary

Let’s just calm down and learn with each other. Gnome and KDE learned a lot of things with each other and with it’s own communities, Linux and the GNU/Linux distributions too.

Google has great products and can really create expectations on it’s users. Google search, maps, Android…all great products but all of them (as any other software) have problems and bugs (anyone using GMail’s imap?).

So please, for the next ones writing about the brand new thing that will kill all the others out there, calm down, write your opinion but just don’t start saying that projects are going to die if you don’t have any clue about it and don’t start guessing stuff. Want to write a user review ? Write it as a user review and about what is bad (maybe what is good too). But writing guessing articles tending to be a user review but pretending to be a technical article is not good for anybody.

Avoid shooting yourself in the foot.