Add your blog

If you are a KDE contributor you can have your blog on Planet KDE. Blog content should be mostly KDE themed, English language and not liable to offend. If you have a general blog you may want to set up a tag and subscribe the feed for that tag only to Planet KDE.

We also include feeds in different categories, currently Dot News, Project News feeds, User Blogs, french Language, Spanish Language, Polish Language and Portuguese Language KDE blogs. If you have a feed which falls into these categories (or another non-English language) please file a bug as below.

Planet KDE is kept in KDE's Git. If you have an account you can add or edit your own feed:

  • git clone kde:websites/planet-kde-org
  • Put your hackergotchi in website/hackergotchi/. A hackergotchi should be a photo of your face smaller than 80x80 pixels with a transparent background. git add the file.
  • At the end of the planetkde/config file add your details (the name in brackets is your IRC nick):
  • feed 45m http://path.to/my/feed.rss define_name Konqi Konqueror (konqi) define_face hackergotchi/konqi.png define_facewidth 80 define_faceheight 80
  • git commit -a; git push

If you want to add a Twitter microblog to the Microblogging sidebar add define_microblog true and follow your name with [twitter]. Currently only Twitter is known to work, please contact Jonathan Riddell before adding non-Twitter microblogs to check it works.

If you do not have a Git account, file a bug in Bugzilla listing your name, Git account (if you have one), IRC nick (if you have one), RSS or Atom feed and what you do in KDE. Attach a photo of your face for hackergotchi.

Blog Classes

The default class for blogs is English language personal blogs. Other classes are:

  • Spanish language:
    define_feedclass spanish
  • Portugese language:
    define_feedclass portuguese
  • Chinese lanugage:
    define_feedclass chinese
  • Polish lanugae:
    define_feedclass polish
  • Italian lanugae:
    define_feedclass italian
  • French lanugae:
    define_feedclass french
  • KDE User blogs:
    define_feedclass user
  • KDE News feeds:
    define_feedclass news
  • KDE Dot News:
    define_feedclass dot

Planet KDE Guidelines

Planet KDE is one of the public faces of the KDE project and is read by millions of users and potential contributors. The content aggregated at Planet KDE is the opinions of its authors, but the sum of that content gives an impression of the project. Please keep in mind the following guidelines for your blog content and read the KDE Code of Conduct. The KDE project reserves the right to remove an inappropriate blog from the Planet. If that happens multiple times, the Community Working Group can be asked to consider what needs to happen to get your blog aggregated again.

If you are unsure or have queries about what is appropriate contact the KDE Community Working Group.

Blogs should be KDE themed

The majority of content in your blog should be about KDE and your work on KDE. Blog posts about personal subjects are also encouraged since Planet KDE is a chance to learn more about the developers behind KDE. However blog feeds should not be entirely personal, if in doubt set up a tag for Planet KDE and subscribe the feed from that tag so you can control what gets posted.

Posts should be constructive

Posts can be positive and promote KDE, they can be constructive and lay out issues which need to be addressed, but blog feeds should not contain useless, destructive and negative material. Constructive criticism is welcome and the occasional rant is understandable, but a feed where every post is critical and negative is unsuitable. This helps to keep KDE overall a happy project.

You must be a KDE contributor

Only have your blog on Planet KDE if you actively contribute to KDE, for example through code, user support, documentation etc.

It must be a personal blog, or in a blog class

Planet KDE is a collection of blogs from KDE contributors.

Do not inflame

KDE covers a wide variety of people and cultures. Profanities, prejudice, lewd comments and content likely to offend are to be avoided. Do not make personal attacks or attacks against other projects on your blog.

For further guidance on good practice see the KDE Code of Conduct.

People Aggregated

FeedRSSLast fetchedNext fetched after
Rajko Albrecht (alwin) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Guillaume DE BURE (gdebure) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Christophe Giboudeaux (krop) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stuart Dickson (stuartmd) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anant Kamath (flak37) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Akshay Ratan (akshay_r) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Evgeniy Ivanov (powerfox/pfx) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Punit Mehta (punit9462) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Alex Fiestas (afiestas) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Łukasz Jaśkiewicz (ljaskiewicz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Arjun Basu (ultimatrix) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cristina Yenyxe González García XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Marc Mutz XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dan Leinir Turthra Jensen (leinir) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Petr Mrázek (petrm) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Philipp Knechtges (d1saster) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Roland Wolters (liquidat) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Michał Zając (Quintasan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dinesh (saidinesh5) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Diego Casella ([Po]lentino) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mojtaba Shahi Senobari (moji) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
A. L. Spehr (blauzahl) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Felix Lemke (HobbyBlobby) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adrian Draghici (adrianb) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dario Freddi (drf__) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Francesco Nwokeka (nwoki) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aakriti Gupta (aakriti) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Abhinav Gangwar XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Adam Celarek (adamce) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adam Rakowski (foo-script/efes) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aditya Bhatt (adityab) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrea Diamantini (adjam) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ahmed AbouElhamayed (TheMonster) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aike Sommer XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dmitry Ivanov (vonami) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Keith Rusler (comawhite) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anton Kreuzkamp (akreuzkamp) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Albert Vaca (albertvaka) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Alessandro Diaferia (alediaferia) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alejandro Wainzinger (xevix) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexander Dymo (adymo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexander Neundorf XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jeremias Epperlein XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alessandro Cosentino (cosenal) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alan Alvarez (clsk) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lukas Tinkl XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jos Poortvliet XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sri Ramadoss M (amachu) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Amandeep Singh (amandeepsingh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andras Mantia XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ana Guerrero (ana) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ander Pijoan (ander) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andi Clemens (aclemens) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas Demmer (ademmer) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas Schilling XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas Schneider (gladiac) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrei Duma (AndreiDuma) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrew Coles (coles) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrius Štikonas XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Andre Moreira Magalhaes (andrunko) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aniket Anvit (packo) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Timothee Giet (Animtim) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anmol Ahuja (DarthCodus) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Anne Wilson (annew) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anne-Marie Mahfouf (annma) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Antonio Larrosa Jimenez (antlarr) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Antonis Tsiapaliokas (kokeroulis) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anuj Pahuja (alasin) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Andreas Pakulat XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexander Rieder (arieder) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Arindam Ghosh XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Arno Rehn (pumphaus) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Arthur Ribeiro (arthurribeiro) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aaron Seigo (aseigo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ashish Madeti (madeti) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Friedrich Kossebau (frinring) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aurelien Gateau XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alberto Villa (avilla) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Allen Winter XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Paul Adams XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrew Lake (Jamboarder) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bart Coppens (BCoppens) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Behind KDE XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stephan Binner (Beineri) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Benjamin Port (ben2367) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Benjamin Kaiser (benkaiser) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Lim Yuen Hoe (moofang) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bhaskar Kandiyal XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Bastian Holst (bholst) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bhushan Shah (bshah) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Will Stephenson XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mohammed Nafees (binaryking) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Hamish Rodda (blackarrow) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jesper K. Pedersen (blackie) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jeff Mitchell (jefferai) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andres Betts (anditosan) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Sune Vuorela (svuorela) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Carlos Licea XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Agustín Benito Bethencourt XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Tatiana Gornak XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Mojtaba Shahi Senobari (moji) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mailson Menezes (mailson) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Michael Pyne (mpyne) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Wang Hoi (wkai) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adriaan de Groot (adridg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
C. Boemann (boemann) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lukas Appelhans XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jaroslav Řezník (jreznik) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Brad Hards (bradh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Simon St James (SSJ_GZ) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stephan Platz (paalsteek) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Bharath M S (brat197) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Brijesh Patel (erione) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Michał Małek (mmalek) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Călin Cruceru (crucerucalin) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Calligra News XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thorsten Zachmann XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Allan Sandfeld Jensen (carewolf) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Carsten Niehaus (carsten) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Remi Villatel XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Anselmo L. S. Melo (anselmolsm) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Detlev Casanova (Cazou) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Chandan Kumar (chandankumar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Chani Armitage (Chani) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrew Stromme (astromme) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexandr Goncearenco XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mathieu Chouinard (chouimat) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Christian Loose XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aracele Torres (araceletorres) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cies Breijs (cies) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Clarence Dang XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Claus Christensen (Claus_chr) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mauricio Piacentini (piacentini) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Igor Trindade Oliveira XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Daker (dakerfp) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andriy Rysin (rysin) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrew Manson ( mansona aka real_ate ) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sven Assmann XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Colin Guthrie (coling) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bjørn Erik Nilsen (bnilsen) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nick Shaforostoff (shaforostoff) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ryan Rix (rrix) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fania Jöck (fjoe) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stephan Kulow (coolo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas Cord-Landwehr (CoLa) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sujith H (sujith_h) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Somsubhra Bairi (somsubhra) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Mirko Boehm XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cristian Tibirna (Inorog) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Carlos Leonhard Woelz (cwoelz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cyril Oblikov (munknex) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cyrille Berger XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David E. Narváez (dMaggot) XML 10:06, Saturday, 20 September 10:06, Sunday, 21 September
Rolf Eike Beer (Dakon) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dan Vratil (dvratil) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Daniel Molkentin (danimo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Danny Kukawka XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Daniel Nicoletti (dantti) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dario Andres Rodriguez (Dario_Andres) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dario Massarin XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexis Menard (darktears) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Edmundson (d_ed) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Vignoni (davigno) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Florentina Musat (chrome) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vijay Dhameliya (vijay13) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Sander Koning XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Denis Steckelmacher (steckdenis) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dennis Nienhüser (Earthwings) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Luca Beltrame (einar77) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Josef Spillner XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Faure (dfaure) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Derek Kite (dkite) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dimitrios T. Tanis (diggy) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gilles Caulier (cgilles) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Sauer (dipesh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Jarvie (djarvie) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dimitri Popov XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dmitry Kazakov (dmitryK) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dominik Seichter XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ariya Hidayat XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Klaas Freitag (dragotin) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Daniele E. Domenichelli (drdanz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Simon at Facebook Open Academy XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Eduardo Robles Elvira (Edulix) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mihail Ivchenko (EgorMatirov) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Eike Hein (Sho) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Joon-Kyu Park XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pau Garcia i Quiles (pgquiles) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Elvis Stansvik (estan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Enrico Ros XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adrien Facelina XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kevin Ottens (ervin) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
kunal ghosh (kunalghosh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Constantin Berzan (exit) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Akarsh Simha (kstar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas Ramm (psychobrain) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fabrice Mous (fab) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Boudewijn Rempt (boud) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fathi Boudra (fabo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Filipe Saraiva (filipesaraiva) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Christian Mollekopf (cmollekopf) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Flavio Castelli XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nadeem Hasan XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fabrizio Montesi (fmontesi) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Diane Trout (detrout) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Frank Karlitschek (karli) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frank Osterfeld (fosterfeld) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frederic Coiffier (fcoiffier) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frederik Gladhorn (fregl) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frederik Gladhorn (fregl) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rafael Fernández López (ereslibre) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Siddharth Sharma (siddvicious) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frank Reininghaus XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Freoffice: KOffice based Open Mobile Office Suite XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Friedrich Pülz (fkpulz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Harri Porten XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frerich Raabe XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Koos Vriezen XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nicolas Lécureuil (neoclust) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Felix Rohrbach (fxrh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gokmen Goksel (gokmen) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gabriel Voicu (gvoicu) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Michael Gapczynski (MTGap) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bruno Coudoin (bdoin) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Ian Geiser (geiseri) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gerhard Kulzer (gkulzer) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Giannis Konstantinidis (giannisk) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Giorgos Tsiapaliokas (terietor) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Gregor Iaskievitch XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
George Kiagiadakis (gkiagia) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cédric Bellegarde (gnumdk) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Antonio Aloisio XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Inge Wallin (ingwa) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cezar Mocan (CezarMocan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Debjit Mondal (debjit) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Simon A. Eugster (Granjow) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Johannes Bergmeier (joselb) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
George Goldberg (grundleborg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Denis Kuplyakov (dener.kup) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Denis Kuplyakov XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Denis Kuplyakov (denerkup) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vedant Agarwala (vedu) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Siddharth Srivastava (akssps011) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Edward Toroshchin (hades) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Harald Hvaal (metellius) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Harshita Mistry XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Sebastian Pipping (sping) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Diego Iastrubni XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Helio Castro (heliocastro) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Henri Bergius (bergie) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Henrique Pinto XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Henry de Valence (hdevalence) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Harshit Jain (hjain) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Florian Graessle (holehan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Holger Foerster (foerster) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Loic Corbasson XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mathias Kraus (hias) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ozan Çağlayan (ozancaglayan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fabio A. Locati (flocati) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Guillermo Amaral (gamaral) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bartosz Wadolowski XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Boudewijn Rempt's Krita blog XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Fredrik Höglund XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gopalakrishna Bhat XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Petri Damstén XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sergey Kalinichev (klins) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Rafael Gomes (gomex) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Vladimir Prus XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Arnaud Dupuis (Arno[Slack]) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dani Gutiérrez Porset XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Weng Xuetian (csslayer) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Risto Saukonpaa (fri13) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nicolas Lecureuil (nlecureuil) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Francesco Riosa (riosa) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Angelo Naselli (anaselli) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Hubner (hubner) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Daniel Meltzer (hydrogen) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Robin Burchell (w00t) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andrea Scarpino (ilpianista) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ronny Yabar (ronnyml) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
William Viana (Liw-) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Niklas Laxström (Nikerabbit) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ivan Čukić (ivan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jean-Baptiste Mardelle (j-b-m) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
James Ots XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jan Grulich (grulja) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Jan Muehlig (janushead) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jan Gerrit Marker (jangmarker) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jarle Akselsen XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jarosław Staniek (jstaniek) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jason Harris (LMCboy) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Javier Llorente XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jens Muller (jmueller) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jan Kundrát (jkt) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Joseph Simon (jsimon3) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jörg Ehrichs XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
John Ratke XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
John Layt XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Johannes Huber (johu) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Jon Ander Peñalba (jonan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jonathan Thomas (JontheEchidna) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Avik Pal (avikpal) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Joseph Wenninger XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
John-Paul Stanford (jp) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ashley Winters XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jonathan Riddell (riddell) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Juan Carlos Torres (jucato) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Julien Narboux (jnarboux) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jussi Schultink (jussi01) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gaël de Chalendar (kleag) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Karan Luthra (luthrak) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Kashyap Puranik (kashthealien) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ekaterina Gerasimova (kittykat) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Adrian Lungu (lungu) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexander Neundorf XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Christoph Cullmann (cullmann) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Herberth (dav1d) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Diana Tiriplica (dianat) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dominik Haumann XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Emmanuel Bouthenot (bouthenot) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Erlend Hamberg XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Joseph Wenninger (jowenn) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kåre Särs (ksars) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marco Mentasti (mentasti) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Maximilian Löffler (max) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pablo Martín Cobos (pcobos) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Shaheed Haque (shaheed) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Simon St James (ssj) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Svyatoslav Kuzmich XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thomas Fjellstrom (fjellstrom) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
KDAB on Qt XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Laszlo Papp (lpapp) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kevin Funk (kfunk) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Shantanu Tushar (shantanu) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tobias Koenig (tokoe) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
John Tapsell (JohnFlux) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Baltasar Ortega XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Hugo Pereira Da Costa XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
KMix - the KDE Multimedia Mixer XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nuno Pinheiro (pinheiro) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Camila Ayres (camilasan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Wagner Reck (wiglot) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Wagner Reck (wiglot) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
KDE Sysadmins XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
KDE User Working Group XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jens Reuterberg (jensreuterberg) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Martin Bříza (mbriza) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
KDE Dot News XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Miller XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kdenlive team XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Christoph Feck (kdepepo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Egon Willighagen XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Percy Camilo Triveño Aucahuasi XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Kurt Hindenburg XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ramon Zarazua (_killerfox_) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Valerio Pilo (Amroth) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jasem Mutlaq (KNRO) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jigar Raisinghani (jigar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nikhil Marathe (nsm) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Wade Olson XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Konrad Zemek XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kevin Krammer XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Krita News XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sahil Nagpal (sahil) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mohit Goyal (mohit) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Vladimir Kuznetsov XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rafał Kułaga (rkulaga) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kubuntu Wire XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lamarque Souza (lamarque or lvsouza) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Johannes Wienke (languitar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Luca Tringali (lucatringali) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Leo Franchi (lfranchi) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lydia Pintscher (Nightrose) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Johan Thelin XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gabriel Poesia (gpoesia) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Valorie Zimmerman (valorie) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sven Brauch (scummos) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alex Raymond (alexraymond) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aracele Torres (araceletorres) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Filipe Saraiva (filipesaraiva) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Luiz Romário (luizromario) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sandro Andrade (sandroandrade) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tomaz Canabrava (tomaz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vinicius Azevedo (stdcout) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vito Chiarella (vitochiarella) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vitor Boschi (Klanticus) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alex Turbov (zaufi) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Luboš Luňák (llunak) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frederik Schwarzer (icwiener) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lucas Lira Gomes (MaskMaster) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lucijan Busch (lucijan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Luís Gabriel Lima (luisgabriel) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lukas Dzikaras (LukasLt2) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lukas Tvrdy (lukast) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tejas Dinkar (gja) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Piyush Verma XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mahfuz062 XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adam Treat (manyoso) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marc Cramdal XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marcel Wiesweg (mwiesweg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marcus Hanwell (cryos) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marco Calignano (marcuzzo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mario Fux (unormal) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mark Gaiser (markg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Markus Slopianka (markuss) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marco Martin (notmart) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martijn Klingens XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Küttler (mkuettler) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Klapetek (mck182) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Konold (Mortimer) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Gräßlin XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Klapetek (mck182) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Daniel Jones XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matthias Fuchs (mat69) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mateu Batle (mbatle) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matt Williams XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mayank Madan (mayankmadan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Michael Bohlender (mbohlender) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kenneth Wimer (kwwii) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mehrdad Momeny (mtux) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Benjamin Meyer (icefox) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pedro López-Cabanillas XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Pedro Lopez-Cabanillas XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Milian Wolff (milianw) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mirko Boehm (miroslav) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Magda Konkiewicz XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marijn Kruisselbrink XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mohamed Anwer (tootis) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Mohamed Malik XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ben Martin (monkeyiq) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jean-Nicolas Artaud (morice-net) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Artur Souza (MoRpHeUz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mauro Iazzi (iazzi) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rupanjana Mitra (mrupanjana) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Miquel Sabaté (mssola) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tony Murray (murrant) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Carsten Pfeiffer (gis) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Martyn Circus XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sven Burmeister (rabauke) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Maurizio Monge XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sayak Banerjee (sayakb) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ben Cooksley (bcooksley) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Srikanth Tiyyagura XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Myriam Schweingruber (Mamarok) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jason A. Donenfeld (zx2c4/jdonenfeld) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ingo Malchow (neverendingo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kubuntu News XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Patrick Spendrin (SaroEngels) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Abhijeet Nikam (nikam08) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Niko Sams (nsams) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nikolaos Chatzidakis XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nilesh Suthar (nil1511) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Juan Luis Baptiste (Maeztro) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jos van den Oever (vandenoever) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Guillaume Martres (smarter) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Oindrila Gupta (oini) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marta Rybczyńska XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dmitry Suzdalev (dimsuz) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Lucas Hermann Negri (lucashn) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Aaron Reichman (areichman) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kai-Uwe Behrmann (oy) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Francisco Fernandes (chicao) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Paul Mendez (paul_m) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Paul Pacheco (paulpach) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marc Pegon (mpeg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
José Luis Vergara Toloza (Pentalis) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Peter Grasch XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adam Pigg XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pierre Ducroquet XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rob Scheepmaker (pinda) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matthias Meßmer (pipesmoker) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kurt Pfeifle (pipitas) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pier Luigi Fiorini (plfiorini) XML 21:36, Saturday, 20 September 22:21, Saturday, 20 September
Ignat Semenov (isemenov) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Rene Kuettner (rku) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Peter Penz XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pranav Ravichandran (Pranav_rcmas) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Frans Englich (FransE) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Paulo Rômulo (promulo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pierre Stirnweiss (PierreSt) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Tomasz Olszak (tolszak) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Illya Kovalevskyy (tucnak) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Raphael Kubo da Costa (rakuco) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jeremy Whiting (jpwhiting) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Peter Simonsson (psn) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Randa Meetings XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Petr Vanek XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Mark Kretschmann (markey) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Reinhold Kainhofer XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alex Merry XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rex Dieter (rdieter) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Richard Moore (richmoore2) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Richard Johnson (nixternal) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Richard Dale XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rishab Arora (spacetime) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rivo Laks XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Robert Knight XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Robert Riemann (rriemann) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Robert Mathias Marmorstein (robertm) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Radoslaw Wicik (rockford_) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Roozbeh Shafiee XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Björn Ruberg (ruberg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jordi Polo (jordl) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ruediger Gad (rcg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ryan Bitanga XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rob Buis (rwlbuis) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Maksim Orlovich (SadEagle) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sascha Manns (saigkill) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Samikshan Bairagya (samxan) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Martin Sandsmark (sandsmark) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sanjiban Bairagya (fewcha) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Sascha Peilicke (saschpe) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Adenilson Cavalcanti (Savago) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matteo Agostinelli (agostinelli) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Scott Wheeler (wheels) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Gottfried (sebasgo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sergio Martins (sergio) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thomas Pfeiffer (colomar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rohan Garg (shadeslayer) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Shaun Reich (sreich) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bernhard Beschow (shentey) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Shivaraman Aiyer (sraman) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Simon Edwards XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Peter Grasch XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sinny Kumari (ksinny) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Casian-Valentin Andrei (skelet) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Smit Patel (smitpatel) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sam Duff (Socceroos) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alvaro Soliverez (Hei_Ku) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Holger Freyther (zecke) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Christian Ehrlicher XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Germain Garand XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Shawn Starr (spstarr) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stefan Teleman XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stefan Derkits (HorusHorrendus) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stephanie Das Gupta (stephdg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stephen Kelly (steveire) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matěj Laitl (strohel) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stuart Jarvis XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Claudio Desideri (snizzo) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sven Langkamp (slangkamp) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Swair Shah (swair) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Romain Pokrzywka (kromain) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Prakash Mohan (praksh) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Dörner XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexandr Akulich XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Teo Mrnjavac (Teo`) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Bart Cerneels (Stecchino) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Hayri Bakici (thehayro) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Peter Schiffer (aceton) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Cornelius Schumacher XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Danny Allen (dannya) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jeffery MacEachern (jaem) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Matt Broadstone XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Andreas K. Hüttel (dilfridge) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Roopesh Chander XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Stefan Majewsky (majewsky) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Roney Gomes (roney) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Theo Chatzimichos (tampakrap) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Ahmed Ghonim XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Yuvraj Tomar (yuvrajtomar) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Kaushik Saurabh (roide) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jussi Kekkonen (Tm_T) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Gary Greene (greeneg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jan Hambrecht (jaham) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Jonathan Schmidt-Dominé (The User) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Luke Wolf (Luke_Wolf) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Harald Sitter (apachelogger) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Aleix Pol (apol) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Janet Theobroma (theobroma) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thiago Macieira (thiago) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Philip Rodrigues (PhilRod) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Emmanuel Lepage Vallee (Elv13) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dion Moult (Moult) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thomas McGuire XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Thomas Thym (ungethym) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Till Adam XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Duncan Mac-Vicar (duncanmv) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tina Trillitzsch XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Raymond Wooninck (tittiatcoke) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Torgny Nyblom (tnyblom) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Torsten Rahn (tackat) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Agustin Benito Bethencourt XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Konstantinos Smanis (ksmanis) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Olaf Schmidt-Wischhöfer (ojschmidt) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Eva Brucherseifer XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Alexandra Leisse (troubalex) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Trueg (trueg) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Trueg XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Albert Astals Cid (TSDgeos) XML 21:36, Saturday, 20 September 21:51, Saturday, 20 September
Albert Astals Cid (TSDgeos) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Till Theato (ttill) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Davide Bettio (WindowsUninstall) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Björn Balazs XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Utku Aydın (utku) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Valentin Rusu (valir) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Vishesh Handa (vhanda) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Sebastian Kügler (sebas) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vlad Codrea XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Vyacheslav Tokarev (vtokarev) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Pradeepto Bhattacharya XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Tirtha Chatterjee (wyuka) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Floris-Andrei Stoica-Marcu XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Laurent Montel (mlaurent) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Smit Shah XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Hans Chen (Mogger) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Nikolas Zimmermann (WildFox) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Dirk Mueller XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Wojciech Kosowicz (wojak) XML 21:36, Saturday, 20 September 22:21, Saturday, 20 September
Daniel Kreuter (xardas008) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Matthias Klumpp (ximion) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Xavier Vello (xvello) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
YANG Qiao (yangqiao) XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Yash Shah (yashshah) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Philip Muškovac (yofel) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Zack Rusin (zrusin) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Rafał Miłecki (Zajec) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Zanshin Announcements XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
Marcin Zieminski XML 21:06, Saturday, 20 September 21:51, Saturday, 20 September
Waldo Bastian (zogje) XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September
David Nolden XML 21:06, Saturday, 20 September 21:36, Saturday, 20 September

Microblogging from KDE

September 20, 2014

Sinny Kumari (ksinny)

During Akademy 2014

I came back from Akademy last week and would love to share my experience with you all :) This year also Akademy was great with lots of fun, shared/gained information, met old  friends and made some new.

Pre-registration

https://farm6.staticflickr.com/5552/15296119221_5e02d5c155_m_d.jpg        https://farm4.staticflickr.com/3835/15112671248_49aa324f00_m_d.jpg

This year, pre-registration was at the shiny new Red Hat office in Brno on 5th September. Most of my friends whom I know and going to attend Akademy were present there. It was very pleasant and happy feeling to meet everyone after an year.

The Talks

Akademy was two days of main conference which were on 6th and 7th september.  This year our keynotes speakers were Sascha Meinrath and Cornelius Schumacher .

 

https://farm4.staticflickr.com/3844/15237090746_ba04259a32_m_d.jpg        https://farm4.staticflickr.com/3902/15073262180_3ea2b2703a_m_d.jpg

            Sascha Meinrath                                                    Cornelius Schumacher

 

This year there were lot of fast track (10 minutes) talks on different areas around KDE. All of them were quite interesting, some of them are:

  • Bruno Coudoin talked about how and why GCompris moved to QtQuick with the support of KDE. What all challenges project faced while moving from GTK to Qt.

  • Daniel Vrátil talked about his one year journey with Akonadi

  • Martin Gräßlin gave  an overview of current state of Kwin in adding Wayland support and future plans.

  • Kevin Ottens talked about KDE craftsmen where analysis was on the way we handle our software production, how can we make our software even better.

  • Kai Uwe Broulik  talked about current status of  Qt port on Android and iOS. Currently, 3 iOS apps in Apple store and 8 Android apps in Google play since December 2013.

Among all long duration talks, an interesting talk which I attended was A Tale on ELFs and DWARFs by Volker Krause . He explained about:

  • How to understand linker errors which we come across while compiling an application

  • How to debug weird runtime behaviours which may occur while running application

  • Way symbols are mangled for C++ created binaries on different platforms like windows, iOS, linux

  • Tools which can help us to read and understand binaries file like readelf, objdump, nm from binutils on Linux, otool on Mac and Dependency walker on Windows

  • gcc options like -g[0-3] to add level of  debug information into binaries which can be further used to solve program issues using tools like gdb.

Akademy conference ended with sponsors presentation followed by Akademy 2014 awards

 

https://farm4.staticflickr.com/3915/15237078096_2d552aa83d_m_d.jpg         https://farm4.staticflickr.com/3880/15236890456_46c1b97479_m_d.jpg

  GCompris talk by Bruno Coudoin                                               Akademy awards

Workshops

I loved attending workshop on visual design and QML by Andrew Lake .  I have already seen awesome mockup design which Andrew created for Plasma Media Center. It was fun to be in his workshop and learning the way mockups can be created using QML. You can also try that by following this wiki.

I say “send email” and kmail opens mail compose for me, interesting right? This is what  Peter Grasch did in speech recognition workshop. He showed how easily you can configure rules in simon to make your application voice controlled.

BoFs

BoF is one of the the main part of every Akademy which continues for  5 days after main conference gets over. Anything which needs discussion, help or feedback gets sorted out by scheduling a BoF for that particular topic.

https://farm4.staticflickr.com/3902/15187314916_94a1c1ab08_m_d.jpg       https://farm4.staticflickr.com/3869/15023556909_7cf0ab5d14_m_d.jpg

 

    Plasma Media Center BoF                                               KDE edu BoF

(Image CC by Sujith Haridasan)                                  (Image CC by Sujith Haridasan)

 

  • Plasma Media Center BoF:  Every year PMC team schedules a  BoF which helps us to get feedback on how application looks currently, what should be done next to make it more better.  This year we discussed on

    • Vision of Plasma Media Center which we finalized to “To offer an immersive, rich and easy-to-use media experience crafted by KDE for you”.

    • We discussed on PMC integration workflow with plasma5

    • Repository structure i.e whether to split  PMC into libs and backends as two separate repository or keep it in same repo. Finally, we agreed on keeping into single repository.

  • KDE Edu use in India : This BoF was about FOSS community in Hyderabad, India which  have started to use KDE Edu apps for teaching children in government schools with the help of ThoughtWorks. They are creating an interesting app called Human-atlas which will help children to learn about body parts in interesting way and can take Quiz to test what they already know.

  • KDE India Future Plans: This BoF was to give an overview of  what all KDE events happened in India, what problems organizers faced, what all fruitful results came out of various events. Suggestions on how we can improve to attract more people to attend conference and bringing them to FOSS world.

  • KDE Windows: This BoF was for asking questions and help regarding KDE on windows. I attended this because I was curious to know what all KDE apps work on KDE windows and if Plasma Media Center could be run on windows. It was great to see efforts KDE Windows team have done to compile various KF5 modules. Kudos to them from my side!

Fun!

Being around with KDE  people is always fun. I also find fun in collecting different FOSS related goodies. Oh, yes! This year too I collected some of them from different sponsors booth including Red Hat.

https://farm4.staticflickr.com/3898/15300211842_d9bb45263e_m_d.jpg        https://farm6.staticflickr.com/5555/15073361519_cb5299fd66_m_d.jpg

 

              Lots of goodies                                                  KDE logo by 3D printer @ Red Hat booth

 

Akademy day trip is always fun intended. This year we went to see Brno Reservoir. We explored surrounding for sometime and further we went for Ferry ride which was amazing. Through Ferry, we reached to Veveří Castle . After seeing castle, to reenergize we took some rest and light snack/drink. After that we returned back to reservoir via bus and further headed to restaurant for dinner.

 

https://farm6.staticflickr.com/5558/15073544680_cd833e75ac_m_d.jpg     https://farm6.staticflickr.com/5571/15073129388_7015a67866_m_d.jpg

 

While writing this blog, I felt like I revisited Akademy. These are awesome moments which will get remembered throughout life. You can find some awesome pictures taken during Akademy here . Thanks to KDE eV for sponsoring my travel and accommodation. Also many thanks to all sponsors and volunteers with the help of which this year also  Akademy was superb.

Cheers!

20:43, Saturday, 20 September UTC

Baltasar Ortega

Disponibles las presentaciones y vídeos de Akademy 2014

Del 6 al 12 de de septiembre se celebró el mayor evento KDE: Akademy 2014 de Brno. Lamentablemente, el que escribe estas líneas tampoco estuvo presente pero ha seguido de cerca el evento y va a poder disfrutar de su primer fin de semana de charlas gracias a que ya estan disponibles las presentaciones y [&hellip

13:15, Saturday, 20 September UTC

Björn Balazs

Vote for your Keyboard Layout Switcher plasmoid

Please vote for your favored design and workflow of the KDE keyboard switcher plasmoid.

Keep on reading: Vote for your Keyboard Layout Switcher plasmoid

10:29, Saturday, 20 September UTC

September 19, 2014

Baltasar Ortega

Recordando la Sombra del Helicóptero

Esta entrada es un poco especial. No voy a hablar de ningún lanzamiento de KDE, ni de su futuro ni de la Comunidad. Tampoco de alguna extraordinaria aplicación, de algún tema de iconos  ni de ningún evento. Hoy hablaré del mundo de la blogsfera, un mundo al que creí que nunca formaría parte y del [&hellip

21:09, Friday, 19 September UTC

Thomas Pfeiffer (colomar)

Simple by Default, Powerful When Needed

KDE (back when it was still the name of the desktop environment) and our applications historically stood for powerful features and great flexibility and customizeability. This is what our users love about our software, this is why they choose Plasma and KDE software instead of one of the other Free desktop offerings. And it is also something they would fight tooth and nail for if we wanted to take it away (as many a KDE maintainer who dared to remove a feature he thought was unnecessary can tell).

On the other hand, this power and flexibility at times leads to user interfaces that intimidate especially new users if they expose all the features they have to users at once, leading them to avoid our applications altogether. This keeps them from ever experiencing the power which they might enjoy later on, as they use an application for more advanced tasks.

With KDE4 (back then, Plasma as a brand was not born yet), the aim was to keep the power, but do away with the scariness, as the KDE4 Vision states:

“Anything that makes Linux interesting for technical users (shells, compilation, drivers, minute user settings) will be available; not as the default way of doing things, but at the user’s discretion.”

In the design vision and principles section of the KDE HIG, we condensed and evolved this goal into a simple guiding principle:

Simple by default, powerful when needed.

How do we reach that goal?

As the first step, it is necessary to define the target audience and use scenario for an application. Only if we know that, we can define which goals users should be able to reach using the application.

The next step is to define for each goal how likely our target users in the target scenario are to actually have that goal, and how regularly. As an example, when we planned KMail Active (aimed at tablet computers) a year ago, we categorized the tasks we wanted to support in three groups: common, uncommon, and rare.
Only the common actions would be accessible directly in the main user interface. Since the usage scenario we had in mind for KMail Active was “Quickly checking up on new mails on the go or at home on the sofa and occasionally reply”, only those functions relevant to that scenario were planned to be placed in the main UI.
This is how we achieved the “Simple by default goal”:

Tablet email client mockup

Early-stage mockup for an email client for tablet computers, to be used in Plasma Active, applying the “Simple by default. Powerful when needed” philosophy.

We optimized KMail Active for users who would rather use KMail Desktop to actually organize their emails by sorting them into folders, or try to retrieve old emails in any folder. However, we recognized that sometimes users may need to retrieve an email from some otherwise rarely used folder or tag or move an email to a certain folder in order to find it more easily later, but don’t have access to a desktop or laptop PC. Therefore a UI to browse through the whole folder hierarchy and the tags (not mocked-up yet) was included in the design, though only visible if users scrolled the view to the left.

The same goes for writing new emails. The default UI for that won’t include things like HTML formatting or adding attachments (since writing longer and more complex emails is not convenient on a device without a keyboard, and users are less likely to have documents they want to send to people on their tablet), but they, too are only presented on demand, not by default. This is the “powerful when needed” part.

This philosophy will guide the designs provided by the VDG, so you will see more examples coming up, soon!

UPDATE: As I’ve seen in some discussions of my post on the Internet (not the comments here) that people apparently thought the screenshot represented the next KMail desktop UI, I’ve updated the screenshot and the caption to make clear what it is.

UPDATE2: Now that this post has become quite popular (2.394 unique visitors so far today!), I felt the need to make clear that – as always with Free Software – all this is a team effort. The original version of the design principles Wiki page was written by Andrew Lake, the user stories for KMail Active were co-written with Heiko Tietze and Michael Bohlender, the design of the mockup was done by Michael Bohlender with my help, and Michael also contributed to the philosophy tagline, by replacing “complex” with “powerful”.


Filed under: KDE, User Experience

16:36, Friday, 19 September UTC

Frank Reininghaus

Recent developments in Dolphin: Improvements in Dolphin 4.14, and change of maintainership

Dolphin-4.14.1

 

Recently, Dolphin 4.14 has been released, and in this post, I will tell you about the improvements that are included in this release. This is my last “recent developments in Dolphin” post – I have stepped down as maintainer recently.

Maintaining Dolphin has been a very pleasant and rewarding experience. It went a lot better than I had expected when I took over from Peter a bit more than 2 years ago: Dolphin has been improved in many ways, and I am grateful to everyone who helped to make this possible.

I cannot continue to spend as much time on Dolphin as I did during the past two years, so I have asked Emmanuel Pescosta if he is willing to take over. I am very happy that he accepted because he has made an impressive number of contributions to Dolphin, and I am sure that he will keep Dolphin in good shape and improve it further.

This is not a “good bye” post though – I am still planning to contribute to KDE in general and Dolphin in particular in the future.

Dolphin 4.14.1

  • Bug 323077: Hide an error message (which is shown above the view) before showing a new one. See git commit e7ef1cb8, review request 119401.
  • Bug 338549: Fix the problem that the context menu and the Delete key do not work after restoring a session with split views. See git commit 13efd595, review request 119961.
  • Bug 333078: Make it possible to open archives via the command line. See git commit 421e7ea4, review request 119877.

Dolphin 4.14.0

  • Bug 334271: Improve the drawing of the status bar widgets on high-DPI displays. See git commit 1b6ce8a9, review request 119701.
  • Bug 332629: Use a shorter icon text for the “Previous” and “Next” toolbar buttons. See git commit 03f7f20b, review request 117794.
  • Bug 327708: Make sure that the “free space” information, which can be shown in the status bar, updated in all visible views. See git commit de197075, review request 118208.
  • Bug 337104: Fix wrong text eliding in some corner cases. See git commit a203c271, review request 119546.
  • A small visual improvement in the Places Panel, which was motivated by a post in our forum and a comment on a Visual Design Group report: Do not underline the current item (or draw a dotted rectangle around it, depending on the style). The “selected item” highlighting is sufficient because the selected item is always the current one in the panel. See git commit d329e0ed, review request 119019.
  • Bug 304643: Include not only the item text, but also the icon in the selection rectangle in Compact/Details View and the Places Panel. Moreover, do not tint the icon of the selected item. See git commit 1f69714a, review request 119018 (also for information why removing the icon tinting in Icons View is not so easy).
  • Fix a runtime warning (“QPixmap::scaled: Pixmap is a null pixmap”) that was caused by the Information Panel on startup. See git commit b28f9628, review request 119553.
  • Bug 329377: Fix incorrect selection of items when expanding a folder in Details View in some corner cases. See git commit 1c9a92da, review request 119703.
  • Start a refactoring of the rather huge DolphinMainWindow class. This will make bug fixes and other maintenance efforts easier in the future. See git commits 58ac6a46, 6a98d833 and review requests 118805, 118964.
  • Make opening URLs via the command line more efficient by avoiding that a tab is created for the Home URL and destroyed immediately. See git commit e4705292, review request 118966.
  • Save memory and CPU cycles by not storing the item width (in Icons View) or the item height (in Compact and Details View) for every item. Since it is the same for every item in the view, it is sufficient to store it once. See git commit d8c078eb, review request 118454.

The frameworks branch

Alexander Richardson ported the entire code base to Qt 5 and the KDE Frameworks – many thanks for that! If you want to test it, use the “frameworks” branch from our git repository, or check if your distribution provides packages that are made from this branch. It works quite nicely already, but it still has some rough edges. If you find some, please file a bug report, or even better, dig into the code, try to figure out what’s going wrong, and submit a patch to Review Board.

Thanks to everyone who helped to make the improvements in Dolphin 4.14 possible, and also to those who contributed the first patches to the frameworks branch: Alexander Richardson, Alex Merry, Arjun Ak, Christoph Feck, Christophe Giboudeaux, David Faure, Emmanuel Pescosta, Frederik Gladhorn, Hrvoje Senjan, Kai Uwe Broulik, Laurent Montel, Luca Beltrame, Lukáš Tinkl, Mathieu Tarral, Michael Reeves, Renato Atilio, and Scarlett Clark.


15:20, Friday, 19 September UTC

Sujith H (sujith_h)

Akademy Days 2014

This was my first akademy and it meant a lot to me icon smile Akademy Days 2014  I would love to share the snaps I had taken before I write down further. Here is the link from flickr(https://www.flickr.com/photos/sujith-h/sets/72157646981723648/). It was my immense pleasure to meet many people around the conference. I remember the first day where I was so shy to talk to people gathered around at RedHat office in the evening. And Adriaan de Groot helped me out :).

First two days were amazing with with good enlightening talks ( as I wont be writing too much about that because they are already described in dot(https://dot.kde.org/2014/09/11/akademy-wednesday-and-thursday-wrapup, https://dot.kde.org/2014/09/10/akademy-tuesday-wrapup, https://dot.kde.org/2014/09/08/akademy-2014-day-2-talks and https://dot.kde.org/2014/09/08/akademy-award-winners-2014)). Then on the BoF’s started. I got an idea to implement something new for PlasmaMediacenter. Once implemented and changes pushed I will share the blog post for the same.

I thank a lot to e.V and sponsors for this good event.

14:55, Friday, 19 September UTC

Björn Balazs

Intermediate results of the icon tests: Humanity

With a series of icon tests we currently study effects on the usability of icon design. This article however does not focus on these general design effects but presents findings specific to the Humanity icon set.

Keep on reading: Intermediate results of the icon tests: Humanity

11:06, Friday, 19 September UTC

Stephen Kelly (steveire)

Grantlee 0.5.0 (codename Auf 2 Hochzeiten tanzen) now available

The Grantlee community is pleased to announce the release of Grantlee version 0.5 (Mirror). Source and binary compatibility are maintained as with all previous releases. Django is an implementation of the Django template system in Qt.

This release builds with both Qt 5 and Qt 4. The Qt 5 build is only for transitional purposes so that a downstream can get their own code built and working with Qt 5 without being first blocked by Grantlee backward incompatible changes. The Qt 5 based version of Grantlee 0.5.0 should not be relied upon as a stable interface. It is only there to assist porting. There won’t be any more Qt 4 based releases, except to fix build issues if needed.

The next release of Grantlee will happen next week and will be exclusively Qt 5 based. It will have a small number of backward incompatible changes, such as adding missing const and dropping some deprecated stuff.

The minimum CMake required has also been increased to version 2.8.11. This release contains most of the API for usage requirements and so allows cleaning up a lot of older CMake code.

Also in this release is a small number of new bug fixes and memory leak plugs etc.


09:29, Friday, 19 September UTC

Krita News

Interview with James Abell

BIOSPHEREWHITE

Would you like to tell us something about yourself?

I’m a designer/artist and tutor. I’ve worked with 3ds Max and related tools for about 14 years since graduating from Edinburgh College of Art many eons ago, in 1999! Recently, I’ve been running 3d graphics workshops and teaching online and making my own artworks. I’ve also worked with a lot of clients mainly in the offshore renewable sector for visualisation projects in 3ds Max.

Do you paint professionally or as a hobby artist?

Professionally, as well as 3d work, I’m putting together a solo show for my most recent work. I have sold artwork in the past but not recently as I am waiting until I present it all in my own solo exhibition. It is a big project for me!

When and how did you end up trying digital painting for the first time?

I am 38 now, I remember trying digital painting when I was about 9, I had a ZX Spectrum Plus 2, these were popular in the 1980s in the UK and I am sure I used a black Microsoft mouse I got for a birthday present. My attempts weren’t good, I went back to traditional drawing. I started digital painting a few years again to edit and also enhance my scanned traditional drawings and also 3d renders.

What is it that makes you choose digital over traditional painting?

I don’t! :) I am passionate about mixing the two, either starting off with traditional drawings, or starting with 3d graphics. The final process I import into a 2d package, in this case Krita. I found a term online for this: it is called ‘tradigital’.

How did you first find out about open source communities? What is your opinion about them?

Not sure when, I first heard a radio programme on the BBC radio about it. As a 3ds Max user, I was a bit snobby about the whole thing, I was wrong. I now see the great work produced in the Krita and Blender communities that matches what is done with expensive tools. Also, as the work is often not constrained by big budget production houses, the Indie approach for many who use these tools allow for more experimentation away from just commercial concerns.

Have you worked for any FOSS project or contributed in some way?

I haven’t as yet!

How did you find out about Krita?

Someone I know who was interested in a Blender meetup showed me. No one else met up! However, he showed me a video of the blender and krita work by William Thorup, Thieve’s Cross. It looked great, I wanted to try it myself!

What was your first take on it?

I also use Sketchbook pro. I found Krita matches up well with its GUI etc. I always found GIMP annoying to use so was really pleased that Krita seems more inclined towards artists.

What do you love about Krita?

Well, it is free and open source but at the same time very good and a great user interface, much more than say GIMP. It feels as if the overall interface in Krita has been considered when its programmers made it. I also like the fact that as well as Blender, it does not require licenses to teach it and run workshops, whereas 3ds Max that I use requires people unless they are pirating, to pay for the software even when learning.

What do you think needs improvement in Krita? Also, anything that you really hate?

I like Krita overall, what I hate was that it seemed to slow down a bit when I added quite a lot of layers. A bit more so than Sketchbook Pro. Mind you, it was for an A3 print at 300DPI!

In your opinion, what sets Krita apart from the other tools that you use?

It is free, but at the same time intuitive and capable of professional results. It compares very well with Sketchbook Pro which I also use a lot too. Some aspects of Krita I prefer more than Sketchbook Pro.

If you had to pick one favourite of all your work done in Krita so far, what would it be?

My Montreal Expo 67 project. The whole point was to make a project with a series of artwork using my ‘tradigital’ style. record it and make a Youtube tutorial from it using Blender, Krita and traditional drawing. I used the Habitat 67 and the
Biosphere in Montreal Canada, as the source material, amazing buildings, visit them if you get the chance.

ARRAYHABGREY

What is it that you like about it? What brushes did you use in it?

I like the fact that I originally wanted a retro type graphic design poster feel, a bit like something from the 60s or 70s with slight influences from the designer Saul Bass, you must look him up if you have not heard of him! :) I like how Krita enabled me to carry out my plans and get a result I was pleased with.

The brushes I used in it were the smudge soft, the erasers and then different paint brushes to make the original scanned drawing more clear.

Would you like to share it with our site visitors?

Sure; I would also like to share the tutorial I made along with it.

Anything else you’d like to share?

I would like to say what an amazing time we live in with great free tools that are now more and more stable, like Krita and Blender. As artists, designers, enthusiasts, we can push our own boundaries without breaking the bank or piracy laws!

My artworks can be found at www.jamesabellart.com

I would also be happy if some of my youtube tutorials help you in some way. ­

08:19, Friday, 19 September UTC

September 18, 2014

Baltasar Ortega

Software Freedom Day 2014, nueva edición

Un año más llega el Software Freedom Day 2014, es decir, el Día del Software Libre. Un evento mundial especial en el que simpatizantes del Software Libre se reúnen para promocionar los Proyectos Libres que pueblan nuestro planeta.   Software Freedom Day 2014 Aunque supongo que muchos de vosotros lo sabréis nunca está de más [&hellip

22:01, Thursday, 18 September UTC

Călin Cruceru (crucerucalin)

Moving to a New Website

I moved to http://www.calincruceru.net. It is my new personal website where I’m planning to post regularly mostly about CS-related topics. There is also a section where you can find a list of projects I am/have been working on.


16:18, Thursday, 18 September UTC

Björn Balazs

Understanding Icons: Participate in final survey

We finally reached the 10th and last of our icon tests. Please, again, participate and help us to learn more about the usability of icon design.

Keep on reading: Understanding Icons: Participate in final survey

15:08, Thursday, 18 September UTC

Aleix Pol (apol)

Mathematics that you can touch

These last months have been intense, so intense I needed a bit of a distraction. I’ve always felt some kind of curiosity for the world of 3D printing and, as I’ve said in different occasions, I always push KAlgebra to the limit when I have the occasion.

I had been researching, I’ve never had a 3D printer and I probably won’t have one in years, but I still wanted to figure out how to get do something there. First, I went through many 3D printing services and looked through the different supported formats. To be honest, I implemented the one that looked the simplest, it happened to work quite similar to how OpenGL works internally, so it seemed like a safe bet.

Once I had a working export algorithm, I chose an extremely good looking plot (thanks Percy ;-)) and then I uploaded it over to one of those 3D printing services. The website showed me a preview, it seemed like their software understood the format, so it looked like my job was done. I fiddled with it to get it printed in a reasonable size and submitted it to print and send. For the curious, here’s the formula I used:


piecewise { x^2+y^2+z^2<35 ? 2-(cos(x+(1+5^0.5)/2*y)+cos(x-(1+5^0.5)/2*y)+cos(y+(1+5^0.5)/2*z)+cos(y-(1+5^0.5)/2*z)+cos(z-(1+5^0.5)/2*x)+cos(z+(1+5^0.5)/2*x)), ? 1 } = 0

A couple of weeks later a box arrived to our office. To be honest, it was a bit weird. I was very excited, but then nobody else was when I showed it. Because it's math I guess, and it's boring. I felt a bit like when I used to spend my nights hacking KAlgebra around then show it around. Anyway, I'll say it. A 3D plot, in my hands, to play with them. How cool is that? :D

** crickets **

 

Now I'm sure you're excited and willing to try it. It will be available in the next version of KAlgebra, that will be released in the KDE Applications 2014.12, which by the way will be the first KAlgebra release based on Qt5 and KF5, and will be featuring many other new features.
And of course, it's free software developed in an open community! If you're feeling adventurous or you just know how to build KDE software, feel free to pull analitza and kalgebra repositories and give it a try! :)

00:47, Thursday, 18 September UTC

September 17, 2014

KDE Dot News

LaKademy 2014

From August 27th to 30th, 2014, nearly sixteen KDE lovers met in the 2nd LaKademy - The KDE Latin America Summit. The sprint took place in the Free Software Competence Center (CCSL) at University of São Paulo (USP) in southeast Brazil.

A little bit of history

Since 2008, a bunch of initiatives have been taken towards the fostering and spreading of KDE community and technologies in Brazil and Latin America. Even though at a slow pace sometimes, such effort have yielded good results in disseminating the motivations and benefits of get involved in such a vibrant free software community, mainly in a region where the tradition of sprints is not yet fully consolidated.

In 2010 the 1st Akademy-BR (Brazilian KDE summit) took place at Praia do Forte, Bahia, northeast Brazil. Nearly 20 participants met in a three days meeting where some of current active Brazilian KDE contributors made their first steps in contributing with coding, translation, and promotion. Some people have come and gone, but some of them got vastly seduced by the idea of coming together in the pursuit of sharing knowledge and making world better with high quality free software. Those remain pushing KDE in their universities, companies, and in high visibility meetings such as FISL and Latinoware.

After Akademy-BR, we focused on trying to better integrate KDE people from other countries in Latin America. Some contributors from Peru and Argentina were invited to present their work at previous editions of Latinoware, meet the Brazilian fellows, and help deciding on actions to narrow KDE relationships in Latin America. Such an effort culminated in the 1st LaKademy, held in Porto Alegre, south Brazil, from April 27th to May 1st, 2012. Sixteen participants from Brazil, Argentina, and Peru were involved in artwork, translation, promotion, and development activities.

Two years have passed again until the time for the 2nd LaKademy, held at the Free Software Competence Center (CCSL) at University of São Paulo (USP) from August 27th to 30th, 2014. USP is one of the most important and prestigious universities in the world and CCSL is a two-storey building entirely devoted to free software projects, quite close to IME (Mathematics and Statistics Institute) - where Computer Science, Mathematics, and Statistics courses are offered. Motivated by an expected audience of potential KDE newcomers, we've decided on a schedule with KDE talks on the very first day, an introductory Qt short-course on the second day, and the usual contribution sprints happening in the last two days of LaKademy 2014. Sadly, the number of guests was lower than expected. In spite of that, the talks allowed us to better know each other's work in KDE and the Qt short-course was a place to clarify common doubts and providing an initial support for the KDE newcomers specially attending LaKademy 2014.

LaKademy 2014 - Group Photo

LaKademy 2014 Group Photo

What we have done ?

The first day of LaKademy 2014 began with the Lamarque's talk about Eduroam and Plasma Network Management. Afterwards, Rafael Gomes presented his KDE SysAdmin talk - which provided some interesting information about KDE infrastructure and all the work undertaken behind the scenes in order to support KDE technologies development and community communication. The next talk was about KDE Connect, presented by Ronny Yabar, where the most exciting features of KDE mobile-desktop integration were presented, followed by a brief discussion about its architecture. At the end of the day, Filipe Saraiva presented a talk about Qt and KDE applications on Android, with a special note to the GCompris case.

Rafael's talk about KDE SysAdmin

A Qt introductory short-course was presented by Sandro Andrade in the second day of LaKademy 2014. Given the limited time available, the focus was on the essential aspects underlying the Qt-ish way of developing cross-platform applications: signal/slots mechanism, (dynamic) properties, meta-objects, moc and uic compilers, event loops, and basic design of interfaces using QtWidgets and QML. In the audience: some newcomers invited to attend LaKademy, translators trying to get a grasp on programming, veterans helping to make some points clearer, and three guests from USP.

The third and fourth days were dedicated to hacking sessions and a BoF about KDE promo. Among the development outcomes, we managed to port Bovo to KF5 (pushed in 'frameworks' branch of bovo repository) and Filipe started porting Cantor to KF5. Ronny has also submitted some changes to review, regarding KDE Connect. Filipe also started the creation of a meta-package for KF5 in Mageia. Boaglio and Sandro (two old-school geeks with an inexplicable passion for MSX) started the development of QMSX - a GUI front-end for the openmsx emulator:

The QMSX frontend to openmsx

The BoF about KDE promo lasted about two hours and raised a number of questions, evaluation of strategies, and seventeen tasks were recorded in todo.kde.org ('KDE Brazil' project), including the development of promotional material, webinars, KDE presence on social networks, and financial aspects. Filipe helped in fixing the web bots for spreading news in Facebook e Twitter. The next LaKademy was also one of the exciting discussions during the KDE Promo BoF. In general, we agreed on having the 3rd LaKademy happening already in the first half of 2015. The venue is also almost confirmed.

As for the artwork outcomes, Adriana (who joined the group at the very last minute), Viviane, and Wagner produced some amazing stuff in those days. What about these new Konqi and LaKademy wallpapers ? A LaKademy commemorative KSplash theme was also developed.

    

Wallpapers developed during LaKademy 2014

Finally, Aracele, Camila, and Bianca were involved in translation activities. They focused on techbase translation, which got from 18% to 24% during those days. At the end of the third day, we had a beer-and-pizza lovely night at the Garoa Hacker Club, with a lot of lightening talks, KDE keyrings getting out of a 3D printer, and other nerdiness.

We would like to say a big 'thank you' to the KDE e.V. for the financial support, to the Free Software Competence Center for hosting LaKademy 2014, to Viviane Notato for the artwork support, and to Aracele and Filipe for the local arrangements. We hope to meet each other again soon, at LaKademy 2015, with a 4-5 days of sprints only. No talks, no short-courses :). After all, where can we get the most of fun from when contributing to KDE ?

LaKademy 2014 flickr photoset

This article first appeared on KDE-Brasil

Dot Categories:

14:25, Wednesday, 17 September UTC

September 16, 2014

Gilles Caulier (cgilles)

digiKam Software Collection 4.3.0 released...

digiKam-OSX-Notifier

Dear digiKam fans and users,

The digiKam Team is proud to announce the release of digiKam Software Collection 4.3.0. This release includes some new features:

read more

21:43, Tuesday, 16 September UTC

Björn Balazs

Reprise of Akademy 2014: KCM for network manager

Based on a BoF workshop and discussions during the Akademy 2014, we present a proposal for discussion how to integrate the network manager settings into KDE's system setting.

Keep on reading: Reprise of Akademy 2014: KCM for network manager

19:22, Tuesday, 16 September UTC

Thomas Pfeiffer (colomar)

Sitting on the Shoulders of Giants

I could write a whole series of blog posts about my Akademy 2014 experience, but

  1. I’m not motivated to do that
  2. You might get bored half-way through

Therefore I’ll try to summarize some of my impressions (and provide insight into the “rusty trombone conspiracy”).

The Talks

First of all, the talks: The two keynotes were both awesome!

Sascha Meinrath told us about the strong connection between Free Software and political activism in the opening keynote, and how crucial our work in Free Software is for a future where citizens are still free instead of constantly being watched and manipulated by companies and governments. I found it very inspiring, because its political implications are one of the major factors that draw me to Free Software.

Cornelius Schumacher‘s community keynote taught us how we all benefit from our involvement with KDE and why he and other long-time KDE contributors are doing what they’re doing. It’s always great to hear the stories of “the elders”. It’s a bit like grampa telling stories from WWII. ;)

Of course there were countless other great talks, too (see also the summary of day 1 and day 2 on the Dot, and the program for video recordings and slides).

The Story Behind the Rusty Trombone

Those of you who have attended Akademy or watched the talks by Àlex Fiestas, Björn Balazs or Jens Reuterberg and myself may have wondered why a certain term came up in each of them: rusty trombone. This sounds innocuous at first, but a quick trip to your ever-helpful Urban Dictionary will reveal that, while “harmless”, it isn’t a term you should utter at a dinner party if there is a chance someone at the table might know what you are referring to.

So how did this term enter our talks? Well, it happened as follows: On Thursday morning, yours truly boarded a train in Langen, suspecting nothing. I had read about a group of Akademy attendees organizing a trip from Berlin to Brno that day, but since my connection did not go via Berlin itself, I thought I’d have nothing to do with them. Therefore I was – of course pleasantly – surprised when I saw Mirko Boehm and Patrick Spendrin at Dresden train station. I then learned that there were quite a few more fellow KDEians on that train, among them Paul Adams. Paul always has an odd story or two to tell, one of those was about a contest which was once held to find a combination of two words which, when entered into Google, would only yield Urban Dictionary or pages linking to it as the top results. One of those was “rustry trombone”. None of the other people in the cabin new what it meant (or at least pretended not to know), so Paul explained it to us, in a vivid-enough way.

Fast forward to Saturday night. We had planned to have dinner together with everyone from the visual design and usability groups (namely Andrew Lake and his husband, conveniently also named Andrew, Jens, Björn, Heiko Tietze and myself), and Àlex decided to join us, too. When I told the others about my trip to Brno, the “rusty trombone” story came up, too. Nobody had heard the term yet (or at least pretended not to have heard it) and of course they wanted to know what it meant. I found just telling them to be too easy, so instead we turned it into a quiz. It took the group quite a while to find out what rusty trombone means, and of course the most fun part were the ideas people came up with what it could be.

After the mystery was solved, someone from the group had the idea that since most of us were giving a talk the next day, we all should try to incorporate “rusty trombone” into it. Andrew chickened opted out because – as his husband confirmed – he would not be able to continue his talk afterwards with even the least amount of seriousness. All the rest promised that all our talks would contain the magic words at least once.

I don’t want to spoil the fun for you by telling you how we (or actually everyone but myself, because I thought that having Jens mention it in our combined talk would be enough, to Björn’s utter disappointment) managed to integrate “rusty trombone” in our talks. Just watch the talks (linked above) and look and listen carefully. Àlex, Björn and Jens really mastered the art of injecting the words into their talks in a way that people who didn’t know what they meant (there were fewer and fewer of those with each of our talks, of course) probably wouldn’t have noticed anything suspicious.

Tales from the User Interface Design Room

For Monday and Tuesday, we had booked a room specifically for user interface design topics. The idea was that anyone could come to us to get input on their user interfaces from visual and interaction designers.

Three people used that opportunity: Jan Grulich for the Network Management System Settings module, Michael Bohlender for his email client which we now codenamed “NextMail”, and Friedrich Kossebau for “Workspace-wide services on non-file objects”. All three design sessions were very productive. In all of them, we aimed at striking the best balanced between “as simple as possible” and “as complex as necessary”, which isn’t easy when dealing with complex matters such as setting up a VPN or dealing with multiple email accounts each with a complex folder hierarchy or with mailing lists vs. regular email conversations, or with a theoretically unlimited number of services which can be offered for dealing with any object (such as an address in a text, or an image in a PDF). More details about the results of these sessions will surely pop up somewhere on Planet KDE over the next weeks.

Another very interesting session was “Human-Centered Design for the KDE HIG”: In that session, we applied one of the standard methods in human-centered design, the usability test, to the KDE Human Interface Guidelines. We had two developers (Frederik Gladhorn and Kai Uwe Broulik) test the HIG as its users. They could choose a task for which they would consult the HIG and then try to complete it live, while the HIG team observed them and then discussed with them why they got lost at a given point and which information they could not find. Friedrich Kossebau offered additional input.

The results from this are very helpful for optimizing the usability and usefulness of the HIG for developers. Some of the findings were that our users would prefer visual examples for first orientation, and text only for details which cannot be well communicated visually, that the structure of the main page should be optimized, and that more cross-linking between related articles would be helpful.

Community from the Perspective of a Temporarily Walking-Disabled Member

One of the most memorable experiences from this year’s Akademy has to do with an injury I suffered there. At some point during my travel to Brno, I got a small graze at the back of my right foot. Nothing serious, I thought, so I didn’t pay much attention to it. Unfortunately, some germs must have entered the blood stream through that graze, causing a serious inflammation. The foot got more and more swollen and walking started to hurt. It got better with each night, but worse during the days. On Sunday evening, I decided to stay in the hotel and visit a doctor the next morning. When I told Dan Vrátil about my inflamed foot the next morning, he had to laugh at first, because the exact same thing happened to Jan Grulich during last year’s Akademy. Last time, Jan had to be taken to the hospital and elsewhere by car, now he was the one driving me around.

At the hospital, the foot got bandaged and I was told not to walk. Not the ideal condition for a conference. This is where I experienced first-hand the helpfulness of our wonderful community. Whenever someone from KDE was near, I was supported while hopping about, and Àlex even carried my through the venue like like a bride over the door sill. We also found that office chairs can be repurposed as makeshift wheelchairs (including the fun of pushing someone around on one, of course).

The most difficult part, though, was the day trip to the water reservoir on Wednesday. Originally, I had thought I’d stay at the hostel during the day trip because I couldn’t even get to the reservoir without walking too much and Jan was not available to drive me there.

When asking on the mailing list whether it was possible to get there without much walking, I got two replies from people willing to give me a ride (Martin Klapetek and Teo Mrnjavac). In the end, it was Martin who took me to the reservoir (and also to the tram station the next morning). I was happy that I could take part in the day trip and take the ferry together with the group, but I had already accepted that I wouldn’t be able to get up to the castle we were visiting (castles are not exactly known for being easy to reach, right?).

When the ferry landed and I said I’d wait there for the group to return from the castle, Frederik Gladhorn said something along the lines of “No, we won’t leave you behind, we can get you there!”. I couldn’t really imagine how, until I found myself first on Frederik and Martin’s arms, then on Friedrich Kossebau’s and then Frederik’s shoulders. There are some KDE members which, due to their compact size, might be relatively easy to carry on one’s shoulders. At about 1,85m in height, though, I’m not exactly one of those, so it must have looked really funny when a fully grown man sat on another’s shoulders. I’ll add a photo as soon as I get one. The foot is now better, though it will take a few more days of rest and antibiotics to fully heal.

This was an example of what KDE means to me (and surely many others): We always help each other out, and even if something seems impossible, together we find ways to make it happen.

Thank you all for making Akademy 2014 such a wonderful experience!

UPDATE: As promised, here is a photo of me sitting on Friedrich’s shoulders and trying to avoid being slapped by a branch


Filed under: KDE

15:00, Tuesday, 16 September UTC

Timothee Giet (Animtim)

Back from Akademy 2014

So last week-end I came back from Akademy 2014, it was a loooong road, but really worth it of course!
Great to meet so much nice people, old friends and new ones. Lots of interesting discussions.

I won’t tell again everything that happened as it’s been already well covered in the dot and several blog posts on planet.kde, with lots of great photos in this gallery.

On my part, I’m especially happy to have met Jens Reuterberg and other people from the new Visual Design Group. We could discuss about the tools we have and how we could try to improve/resurrect Karbon and Krita vector tools.. And share ideas about some redesign like for the network manager…

Then another important point was the BoF we had with all other french people, about our local communication on the web and about planning for Akademy-Fr that will be co-hosted again with Le Capitole du Libre in Toulouse in November.

Thanks again to everyone who helped organize it, and to KDE e.V. for the travel support that allowed me to be there.

PS: And Thanks a lot Adriaan for the story, that was very fun.. Héhé sure I’ll think about drawing it, when I’ll have time.. ;)

10:04, Tuesday, 16 September UTC

September 15, 2014

David Edmundson (d_ed)

KDE Telepathy 0.9-beta

We have released a beta of KDE Telepathy 0.9, and libkpeople 0.3.0

Features include:

  • OTR
  • Improved group chats
  • Modernised video chats, now based on GStreamer 1.0
  • Lots of fixes and speed improvements

Tarballs are available here and here.

If you're interested in developing and contributing follow our quick start git installation guide

Please report back any bugs so we can make 0.9.0 a great release.

20:49, Monday, 15 September UTC

Pier Luigi Fiorini (plfiorini)

What's coming to Green Island: part 1


I want to share with you some of the progress I recently made.
This is not all, more will come in another post.

Multi output support: part 1

Green Island now supports multiple outputs.

QtCompositor only support one output so in order to do this I did a little abstraction to enumarate outputs and played with QML to show them in the compositor window.

How does it work?

It's pretty simple: it has a ScreenModel that provides data such as name, primary boolean flag and geometry. The main QML file has a repeater using this model to create an OutputView for each output.

Every OutputView has layers to stack different kind of windows (panels, lock screen, workspaces), one of the layers is HotCorners which contains 8 hot corners.

During test and development one often need to fake outputs to test several different configurations without having real monitors, but this requires a dedicated backend and a configuration format.

So ScreenModel has its own backend code, one of the backends is based on QScreen and the other is for fake outputs.

Studying the problem and doing some prototype made me realize that QScreen has a very limited API (for example it doesn't detect when the primary output changes) and that this matter was already implemented with libkscreen.

It happens to be a framework that doesn't pull in undesired dependencies, so now Green Island is using it and I have to say it saved me a lot of work.

In the video below you can see a Green Island window with two 1024x768 outputs side by side, at some point the first one (which is also primary) is removed and all the windows are migrated to the other output that is now the new primary output.


Multi output support: part 2

A single big fat window for all the outputs is not such a great idea, it was good enough to continue the development keeping multiple outputs in mind but it's not the solution in the long run.

Such a solution may hit hardware limits pretty, plus outputs can have a different refresh rate so they really should not be done this way.

QtCompositor handles only one window so I patched it to be aware of multiple outputs with one window for each of them.
The patch targets the dev branch and at the time of this writing is in the review queue.

All the QML code was reused except for the Repeater and the logic to move windows when an output goes away was moved to C++.
This means that almost none of the code previously wrote was removed.

The hard part came when I needed to figure out how to show the same surface on multiple output windows.

Considering that QQuickItems cannot be shared between multiple windows I had to create a view for each output.

When a shell surface is created for a surface, the compositor creates a view that inherits from QQuickItem, the output is assigned based on the mouse pointer coordinates. No other view is created at this time because the position is calculated to be within output bounds considering the surface size.

More views are created on demand when the surface is mapped.

As windows are moved all views are moved accordingly, global coordinates are mapped to the output coordinates so that windows are shown only where they are meant to be.

Unresponsive applications

Wayland offers a ping/pong API that compositors use to know whether a surface is responsive or not, even with CSD (in the past there was some concern about this).

When a window is clicked, Green Island ping the surface and if it doesn't reply with a pong within 200ms it marks it as unresponsive and apply a colorize effect, draw some explanatory text, and intercepts mouse input. It also adds a couple of push buttons, one to wait for the application to become available again and the other to brutally murder the application.



17:28, Monday, 15 September UTC

Sven Brauch (scummos)

Snippets in Kate 5

Recently I spent some time to port and clean up the Snippets plugin and the underlying template interface for Kate 5.  It's now fully working again and more powerful than ever. The template code was originally written by Joseph Wenniger and most of what I show here is still working like originally implemented by him. Still, there were some improvements I would like to show; also, I'm sure many readers might not be aware of this great feature at all.

Classical snippets use case: insert a for loop witout having to type the iterator variable three times.
The template interface, which is part of the long-time stable KTextEditor API, was heavily cleaned up and now just consists of a single function
    bool insertTemplate(const KTextEditor::Cursor& insertPosition,
const QString& templateString,
const QString& script = QString());
which inserts a template into a view at the given position. It's very easy to use and still powerful -- if you write an application which uses KTextEditor, it might be worth to spend a moment thinking about how you might be able to make use of it.
I also heavily refactored the implementation of the interface. More than 1000 lines of code were removed while effectively enhancing functionality. 

Core functionality changes

I changed the language of the snippets a bit to make it more clear and easy to use. In the following, I want to give a short overview of how it works now.

The heart of the templates (or snippets) are editable fields (shown in green). They are created in the template string by writing ${fieldname}. They can have a default value, which can be any JavaScript expression. Pressing Tab jumps between the fields of a template. Whenever such a field is changed, all so-called dependent fields are updated. Those can simply be mirror fields (created by having a second field with the same name), or can do something which depends on the contents of the other fields in the template, such as perform replacements or concatenations. Again, you can have arbitrary JavaScript expressions doing that.
An example snippet (not very useful in practice) which has three editable fields (find, replace and sample_text) with a default value for each. Changing the values will update the result in the red "dependent" field in real-time.
Noticeable improvements over the previous functionality (from KDE 4 times) is that you can have fields with arbitrarily complicated default values which are still editable, and that the dependent fields can use all other fields as input (not just one like in KDE 4). It is now also possible to have inline JavaScript doing simple operations in the template.

The Shortcuts feature for the snippets now actually works in Kate.

Snippets now also have proper undo; in KDE 4, only a single character typed could be undone at once while editing a snippet. Now, undo grouping works like it always does.

User interface improvements

For easy testing of your snippets, the "Edit Snippet" dialog has a "Test snippet" button now, which lets you test your snippet on-the-fly.
The user interface was simplified by removing unneeded options, and an inline quick-help feature was added which introduces the user to the most important features of the snippet language. Just click the "More" button.
Inline documentation on how snippets work

An example: C++ Header guards

As an example for how this feature works, let's look at how to create a snippet to generate a C++ header guard. First, create a repository for your C++ snippets:
Open the Snippets toolview and click "Add Repository".
Then, enter a name and specify that you want this only for C++ files:
Create your new repository.
Then, add a snippet:
Add a snippet. Easy.

You can retrieve the document's file name from the editor, make it upper-case and replace dots by underscores automatically to get a nice header-guard-suitable format by using code like this:
Example code for how you can create C++ header guards fully automatically.
If you do not want the guard field to be editable, just create a function which does the upper(fileName...) stuff, and have three fields which call the function (like ${func()}) instead of the two mirror fields and one default-valued editable field. If you do that, the template handler will immediately exit and not present any editable fields.
The ${cursor} variable can be used to place the cursor after all fields were filled. When you type something there, the handler will exit.

Click Ok. Now, to use your snippet, either press the shortcut you defined (if any), click it in the snippets toolview, or use code completion:
Snippets appear in code completion.
Result after executing our new header guard script. A sensible default value was selected automatically. Pressing Escape or Alt+Enter will exit the template handler and place the cursor at the point marked with ${cursor} in the template.
That should hopefully equip you with most of the knowledge you need to write your own snippets. If you like, you can use the full kate scripting API to write snippet code -- it for example allows you to retrieve the text in the current selection and similar useful things.

Some more examples on what you can do

Here's a few snippets demonstrating the features of the engine while partly being of debatable practical relevance. I'm sure you can come up with better use cases for some of those things though.
Write a clean regular expression in a comment and have the snippet mirror it with added extra-backslashes and removed spaces in a QRegularExpression variable. Makes regular expressions even more write-only than they already are.
Get the file encoding from the editor and use it as the coding of a python file header.

Some base64 in the selection ...

... decoded by a snippet which takes the selection and inserts the base64-decoded result.

Next steps

My next step will be to make this plugin loadable in KDevelop as well -- which should be quite easily possible due to the awesome work done in kate to make the plugin infrastructure more generic. If you have further ideas on how to improve the snippets, let me know :)

00:49, Monday, 15 September UTC

September 14, 2014

Adriaan de Groot (adridg)

Takeaway from Akademy

[[ Way back in 2008 or so, at Akademy in Mechelen, most attendees stayed in a hostel with 4 bunks to a room, which meant that after a long day hacking we ended up talking. It may have been Kevin who first asked "Ade, tell us a story." This year, in 2014, at my first Akademy in four years, I received the same request. I've written down the story that I told this year. It was invented on the tram in Brno between Česká and Technologiky Park at 23:20 on the 9th of September 2014. When I got home I illustrated it. Text and illustrations licensed under CC-BY. If Timothéé feels like drawing it up better, by all means. This is a work of fiction. Any resemblance to people or rabbits, living or dead, is purely coincidental or a weak attempt at humor. ]]

The tale of Glenda the Plan 9 Rabbit

Once upon a time, Glenda the Plan 9 Rabbit was hopping through the forest. She was very happy, because she was free and hopping through the forest. The sun was shining and the birds were singing in the trees. Glenda was free because she had escaped from Bell Labs with a BSD license. That’s not quite as good as a license to kill, but you hardly need one of those as a member of the lagomorphidae, do you? Glenda hopped amongst the trees and she hopped through the bushes and she was very happy. There was a forest path and she ignored the crossing lights and just hopped straight to the other side. She nibbled some grass and hopped onwards, through the trees, under the bushes and over the grass. 

But then, suddenly, Glenda was stuck! She could not move her hoppy feet. She looked down, and there was a big black pool of tar. She tried to pick up her front left foot, but the tar was stuck to that. She tried to pick up her right front foot, but the tar was stuck to that too. Struggle as she might, her feet would not let go. Her left back foot sunk a little deeper into the tar. And then, with a glurpy sound, the tar made a great big tentacle that reached up and swayed in the crisp morning air. Glenda could still hear the birds singing as the tentacle squeezed her. With growing dread, Glenda realized that she would soon be stuck in a compressed tar archive. “That’s it!” thought Glenda, and she pulled out the “j” she still had left over from jay-walking that morning. But it was BSD tar, and it doesn’t understand the “j” option. Desperate now, Glenda the narcoleptic Plan 9 Rabbit (this is actually a useful power saving feature in all modern kernels) quickly fell asleep and with the help of those “z”s extracted herself from the terrible tar archive. She cleaned her feet on some chestnut leaves and hopped on through the forest. She hopped through the trees and under the bushes and over the grass. The sun was shining and the birds were still twittering. Glenda hopped over the grass again.

But suddenly, MROWR! A cat(1) ran out from the bushes towards her, with great terrible pointed teeth and sharp claws and Glenda jumped a foot in the air and turned and ran and ran and ran away from the cat(1) until she reached the edge of the sea and she ran across the beach and jumped into the water! Splash! The cat(1) could not get at her now, and it stayed on dry land, hissing and spitting. She swam and swam and there was a big red sailboat out on the sea. She swam until she got close and climbed up the ladder and there was a big man with a broad smile. 

It was Larry O’Liason, the Irish gourmand who had grown fat by eating all the animals in the sea. “Welcome to my boat, O’Coral. An Irish name of the sea, I’m sure you’ll see. Be welcome! Have something to eat!” And Glenda was very happy. There were no birds singing here, but gulls that screeched, and there was no grass to hop on, only 108 feet of teak from bow to stern. Still, Glenda was happy on board the O’Coral, and happier still because Larry gave her succulent grass to eat, and fresh crisp carrots. Soon Glenda was gaining weight, perhaps even becoming a little bloated. Her features, once sleek like a healthy forest rabbit, grew puffy. And Larry, she noticed, was watching her. Watching, while he sharpened a knife. But still she got her crispy carrots and succulent grass, and she hopped less on the teak deck. Until one day, Larry, with a grim smile, said “tonight, I dine on water-rabbit! I’ve not had that before.” 

And he pulled out his knife and gave out a cry and jumped at Glenda who shot a foot in the air and turned and ran and ran across the slippery teak deck and she ran to the bow and she ran back to the stern and she could hear Larry laughing behind her and he was gaining and she ran back to the bow and Larry was still gaining when THUMP! Another ship hove alongside! It was a crusty old galleon, and it had hoisted the black flag. The skull and crossbones! Larry gripped his knife between his teeth and turned to face this adversary. At the bow of the galleon stood a man with a long tangled beard and a wild look in his eyes. He held a scimitar in one hand and cried “O ho ho ho! I, Richard Boatsman, have come to thwart your terrible deeds, Larry O’Liason! And the railing rang as he leaped across and his scimitar was shining in the sun. It didn’t flash, though Richard did gnash his teeth. He bore down on Larry and the terrified Glenda, who regarded him with great big bunny brown eyes full of awe and relief. Richard faced the opposite captain, glanced at Glenda, and said “oh, hang on, you’re BSD licensed, aren’t you. Well, carry on then.” He turned and sailed off in his boat and Larry had Glenda for dinner and lived happily ever after.

THE END

06:48, Sunday, 14 September UTC

September 13, 2014

Kevin Ottens (ervin)

Akademy 2014: Aiming higher

I am back from Akademy and this edition was particularly interesting in my opinion. Somehow it looks like there was a common theme hidden in this conference... let's go through what I consider the most noticeable events of Akademy 2014.

Even before the official start of the conference, during the KDE e.V. general assembly we had something interesting happening. We had elections for three out of five positions in the board. During the questions to the candidates (thanks all for stepping up!), it was clear that the membership was looking for people aiming at a higher efficiency and then improved KDE e.V. organization. We will see if our new board will live up to those expectations. It sounds like a new cycle of radical improvements will start after a (needed) period of consolidation and stabilization.

Then, the first keynote by Sascha Meinrath was an excellent reminder that we should be more proactive on the political landscape. If we stay in reactive mode just producing software, we won't be able to prevent centralized infrastructure, opaque Internet of Things and the panoptic surveillance system. Only by aiming at a higher political involvement can we avoid the raise of a digital feudalism age.

After this keynote, during the three days of talks and workshops, a surprising amount of sessions were focused on quality in a form or another. I was obviously guilty there with my craftsmanship cycle but Albert too. Add to those the talks from the VDG, the workshop on profiling by Milian and the one on unit tests by Shantanu to easily figure out that there's quite a few people wishing to see our contributors aiming at higher quality.

Last but not least, Paul's talk on community metrics was likely the most important one to attend this year. If you didn't attend it: go and watch the video now! I'll wait... This talk is really a wake up call in my opinion. We lost something and we need to get it back. He pointed out a silent crisis going on in the community. We still have time to get back on the right track, but we got to find the root causes and act as soon as possible. What Paul proposes is to aim at a higher cohesion in the community again. That will require a better shared technical vision, a stronger focus on our mission toward our users and a stronger focus on getting better in our contributions.

By now it is clear that the common theme of Akademy 2014 was that we ought to generally aim higher. Overall, we are in a good position today. Unfortunately, that is also a very fragile one as the community metrics and the quality related talks highlighted.

We're likely at the crossroads now. The decisions we'll take in the coming weeks and months will lead us either to regress or to strive. In my opinion, we can only strive by improving in the areas mentioned above. In some way, that is very good news! We are mostly in control of those areas to improve. It means that success is reachable if we have enough collective willpower to do what's required to seize it.

22:13, Saturday, 13 September UTC

Milian Wolff (milianw)

KDevelop 4.7.0 Released

Hello all!

It’s my pleasure to finally announce the availability of KDevelop 4.7.0:

https://www.kdevelop.org/news/kdevelop-470-released

This is a special release, as it marks the end of the KDE 4 era for us in terms of feature development. We will continue to support this release in the long-term with bug fixes though. New things and fundamental changes will only happen in the frameworkified master branches from now an.

Many thanks to all contributors!

Cheers

18:50, Saturday, 13 September UTC

Dominik Haumann

Kate and KTextEditor 5 after Akademy 2014

The yearly KDE conference Akademy just ended, so it’s time to look at what changed in the holy Kate in the Frameworks 5 land.

KTextEditor Framework

  • silent reload of document: Switching a git branch, Kate always pops up a dialog asking whether to reload the document. With this patch, if the document is version controlled by git, the git hash of the file computed and then it’s checked whether the file exists in git. If so, the file is reloaded without asking you. This should be very handy for developers using git! Thanks to Sven Brauch for this idea!
  • new highlighting unit testing infrastructure
  • several new syntax highlighting files
  • cursor down in the last line in the document moves the cursor to the end of the line, same for the cursor up behavior, after just 8 years a bugzilla wish becomes true ;)
  • properly load/save the search & replace history
  • fix kateversion tags in all our >200 highlighting files, thanks to Martin Walch
  • as always: lots of improvements to the vi input mode

Kate Application

  • use native dialogs on all platforms, including OS X, Windows
  • split view: action to toggle splitter orientation
  • the toolbar is by default turned off (see screenshot), resulting in a very cleaned up interface. You can turn it on in the Settings menu.
  • new document switcher plugin (see screenshot) through Ctrl+Tab, providing quick access to the most recently used documents (similar to Alt+Tab in kwin), based on KDevelops code
  • improvements to the tab bar
  • revive, cleanup and improve the text snippet plugin by Sven Brauch
  • projects plugin: autoload project even if no .kateproject is found (configurable to not clash with the auto-generated cmake .kateproject file), implemented by Michal Humpula
  • the Plasma 5 applet to start a Kate session is back, thanks to the work of Josef Wenninger

Kate Document Switcher

A big thanks to the organizers of this year’s Akademy, and a big thanks to all our sponsors and supporting members. The location was amazing and the venue allowed us all to have a very productive week! Looking forward to next year! :-)

11:15, Saturday, 13 September UTC

September 12, 2014

Robin Burchell (w00t)

profiling is not understanding

When software goes slow, generally, the first reaction is to profile. This might be done through system tools (like Instruments on OS X, perf/valgrind/etc on Linux, VTune, etc). This is fine and good, but just because you have the output of a tool does not necessarily correlate to understanding what is going on.

This might seem like an obvious distinction, but all too often, efforts at improving performance focus on the small picture ("this thing here is slow") and not the bigger picture ("why is this so slow"). At Jolla, I had the pleasure of running into one such instance of this, together with Gunnar Sletta, my esteemed colleague, and friend.

As those of you who are familiar with Jolla may know, we had been working on upgrading to a newer Qt release. This also involved quite a bit of work for us, both in properly upstreaming work we had done on the hurry to the late-2013 release, and in isolating problems and fixing them properly in newer code (the new scenegraph renderer, and the v4 javascript engine in particular have been an interesting ride to get both at once!).

As a part of this work, we noted that touch handling was quite slow (something which we had worked around for our initial release, but now wanted to solve properly). This was due to the touch driver on the Jolla introducing touchpoints faster than the display was updating, that is, while the display might be updating at 57 hz (yes, the Jolla is weird, it doesn't do 60 hz) - we might be getting input events a lot more frequently than that.

This was, in turn, causing QtQuick to run touch processing (involving costly item traversals, as well as the actual processing of touch handling) a lot more frequently than the display was updating. As these took so much time, this in turn slowed rendering down, meaning even more touch handling was going on per frame. A really ugly situation.

Figure 1: Event tracing inside the Sailfish OS Compositor
Figure 1 demonstrates this happening at the compositor level. The bottom slice (titled "QThread") is the event delivery thread, responsible for reading events from evdev The peaks there are - naturally - when events are being read in. The top thread is the GUI thread, and the high peaks there are touch events being processed and delivered to the right QtQuick item (in this case, a Wayland client, we'll get to that later). The middle slice is the compositor's scenegraph rendering (using QtQuick).

With the explanation out of the way, let's look at the details a bit more. It's obvious that the event thread is regularly delivering events at around-but-not-quite twice the display update. Our frame preparation on the GUI thread looks good, despite the too-frequent occurrence of event delivery, though, and the render thread is coping too.

But this isn't a major surprise - the compositor in this case is dead simple (just showing a fullscreen client). What about the client? Let's take a look at it over the same timeframe...

Figure 2: Event tracing for the client (Silica's component gallery, in this case)
Figure 2 focuses on two threads in the client: the render thread (top), and the GUI thread (bottom). Touch events are delivered on the GUI thread, QtQuick processes them there while preparing the next frame for the render thread.

Here, it's very clear that touch processing is happening way too often, and worse than that, it's taking a very long time (each touch event's processing is taking ~4ms), not leaving much time for rendering - and this was on a completely unloaded device. In a more complicated client still, this impact would be much, much worse, leading to frame skipping (which we saw, on some other applications).

Going back to my original introduction here, if we had used traditional profiling techniques, we'd have seen that touch handling/preparation to render was taking a really long time. And we might have focused on optimizing that. Instead, thanks to some out-of-the-box thinking, we looked at the overall structure of application flow, and were able to see the real problem: doing extra work that wasn't necessary.

As an aside to this, I'm happy to announce that we worked out a neat solution to this: QtQuick now doesn't immediately process touch events, instead, choosing to wait until it is about to prepare the next frame for display - as well as "compressing" them to only deal with the minimal number of sensible touch updates per frame. This should have no real impact on any hardware where touch delivery was occurring at a sensible rate, but for any hardware where touch was previously delivering too fast, this will no longer be a problem as of Qt 5.4.

(Thanks to Gunnar & myself for the fix, Carsten & Mikko for opening my eyes about performance tooling, and Jolla for sponsoring this work.

P.S. If you're looking for performance experts, Qt/QML/etc expertise or all round awesome, Gunnar and myself are currently interested in hearing from you.)

18:06, Friday, 12 September UTC

Tomaz Canabrava (tomaz)

On normal people using linux, part 3 – Annia Zacchi

Another friend approached me to get rid of Windows, the problem was vulnerabilities and virus. She was an artist for life and paint, so I explained to her that Adobe no more and she didn’t really feel moved by that so I tougth “hm… this can work out”.

So, I got archl inux[1]  installed on her computer, explained her a bit of the stuff and told her “anything you need, just ask.”, strangelly, nothing she asked for one month, and since I had moved from jobs to another state, I tougth that she had come back to the windows-side of the force. “Hey annya?”,  “Hey”, “How are things up there with linux?”, “Well, it’s great actually. I’m using windows only to play LoL”, “oh, cool, I tougth you hade come back to windows because you never asked me anything, actually”, “No, that wiki that you pointed me out is really good. so I started reading it a lot, and krita, OH GOD. that program is amazing.”

I was shocked.  Literally shocked. I know that linux is not that easy for newcommers, and I’v installed linux for a lot of newcomers, but this was the first newcommer that didn’t had trouble using it because SHE HAS READ THE WIKIS AND TRIED TO LEARN. What if everybody could do that, this could go soooo beautiully.

“And you didn’t had any problems?”, “Well, my tablet doesn’t work with the system libraries, so I went to the website, got the drivers source, compiled and blacklisted the system ones, so nothing anymore.” whow. WHOW.

I really wanted that all my users were like her. This is also a plus, what krita can do if you are a good artist, drawings by Annia Zacchi

annia-krita tauriel-krita tribute-to-kiev

 

Usually I write more, but my broken feet is hurting so much that I can’t think straigth. :)


15:27, Friday, 12 September UTC

Older blog entries