No, email is not a collaborative editing solution—A comparison of the state-of-the-art

If you have co-authored at least one document in your life, you have probably experienced the pain of merging changes manually, especially when these changes are sent as email attachments.

Nowadays there are multiple collaborative editing solutions that enable merging changes automatically. Unfortunately, many professionals are not aware of the capabilities offered by these solutions, and keep sending changes as email attachments and merging them manually. Believe it or not, these professionals include software engineers and computer science researchers…

I think we can do better than that.

In this post, I aim to clarify the confusion around collaborative editing solutions by comparing the state-of-the-art:

The comparison is based on several criteria:

  • On-line co-authoring: the ability to edit on-line while seeing others’ changes in real-time
  • Off-line co-authoring: the ability to edit off-line and merge changes automatically when back on-online
  • Version control
  • WYSIWYG editor
  • LaTeX editor
  • Formatting capabilities
  • Support for OOXML format (DOCX, etc.): unfortunately, this proprietary format from Microsoft is still the most used document format
  • Support for OpenDocument format (ODF, etc.): this ISO standard format is used by many public institutions
  • Terms of service

Google Docs + Drive

Google Docs + Drive is probably the most used collaborative editing solution. It was released in 2006.

Pros

  • On-line co-authoring in the browser
  • Version tracking
  • WYSIWYG editor

Contras

  • Off-line co-authoring in Chrome only
  • Minimal formatting capabilities
  • Read-only support for OOXML format
  • Read-only support for OpenDocument format
  • Google Terms of Service

Unfortunately, the contras of Google Docs + Drive outnumber the pros. I am not a legal expert, so take my judgement of the terms of services with a grain of salt. Nevertheless, the Google Terms of Service look particularly scary (see the excerpt below), and they are most likely not suitable for co-authoring confidential documents.

“When you upload, submit, store, send or receive content to or through our Services, you give Google (and those we work with) a worldwide license to use, host, store, reproduce, modify, create derivative works (such as those resulting from translations, adaptations or other changes we make so that your content works better with our Services), communicate, publish, publicly perform, publicly display and distribute such content.

Microsoft Word + OneDrive/SharePoint

Microsoft Word + OneDrive/Share Point is Microsoft’s answer to Google Docs + Drive. It was released together with Office 2013.

Pros

Contras

  • No native support for OpenDocument format
  • Microsoft Services Agreement?

Microsoft Word + OneDrive/Share Point is superior to Google Docs + Drive in any criteria. I could not find any paragraph in the Microsoft Services Agreement that looks as scary as the one from the Google Terms of Service. Nevertheless, I am not willing to give Microsoft the benefit of the doubt, so I keep this agreement with a question mark in the list of contras until a legal expert proves me that it is suitable for co-authoring confidential documents.

Overleaf

Overleaf is the ultimate collaborative editing solution for LaTeX enthusiasts. It was released in 2013 (then called WriteLaTeX).

Pros

  • On-line co-authoring in the browser
  • Off-line co-authoring with Git
  • Version labelling
  • LaTeX editor
  • Maximal formatting capabilities

Contras

  • Steep learning curve for non-academics
  • No support for OOXML format
  • No support for OpenDocument format
  • Overleaf Terms of Service?

Similar to the Microsoft Services Agreement, I could not find any paragraph in the Overleaf Terms of Service that looks as scary as the one from the Google Terms of Service. Nevertheless, I keep these terms with a question mark in the list of contras until a legal expert proves me that they are suitable for co-authoring confidential documents.

Summary

The following table summarises the features offered by each of the compared collaborative editing solutions.

On-line Off-line Versioning WYSIWYG LaTeX Formatting OOXML Open
Document
Terms
Google
Microsoft ?
Overleaf ?

Is there a clear winner? I do not think so.

If you are a perfectionist in formatting and prefer working with LaTeX, Overleaf is the solution for you. If you are not too concerned with the formatting and prefer working with WISIWYG editors, I recommend you to choose Microsoft Word + OneDrive/SharePoint.

I belong to the first category, and I co-author scientific papers using Overleaf only. However, I have to admit that Microsoft has done a very good job with its collaborative editing solution, and I do not mind co-authoring other documents such as project deliverables in Word any more, if my colleagues ask me to.

The Chocolate-Hazelnut Spread Experiment

I finally ran an experiment I had been thinking about for years: the Chocolate-Hazelnut Spread Experiment. I know, this is not the kind of experiment you would expect from a researcher in software engineering… But it is serious research nevertheless 🙂

The history behind the experiment starts in 2010, when I was explaining why the Italian chocolate-hazelnut spread Nutella1 is better than its Norwegian imitation competitor Nugatti to my colleagues at the University of Bergen. Yes, like most Italians, I often brag about Italian food.

One of my colleagues challenged me: “I bet what you want that if I give you a slice of bread with Nutella and another one with Nugatti, you will not recognise the difference.”

I answered: “I bet what you want that I will recognise the difference between Nutella and three other spreads, while blindfolded.”

A few weeks later, I ran the first chocolate-hazelnut spread test at the University of Bergen. I do not consider it an experiment since the sample was too small. The test aimed at verifying if it is possible to recognise chocolate-hazelnut spreads while blindfolded.

20101028_134930

28 Oct 2010: Me tasting one of the four chocolate-hazelnut spread samples. Photo by Federico Mancini.

Here is the structure:

  • 3 participants
  • 4 chocolate-hazelnut spreads, known to the participants
  • Each participant tastes each spread in random order, while not blindfolded
  • Each participant tastes each spread again in random order, while blindfolded
  • After the second taste, each participant matches the spreads in the first taste with the spreads in the second taste (e.g., the third spread in the first taste is the first spread in the second taste)

And here are the results:

The participants correctly matched the spreads 10 times out of 12 (i.e., 83,33% of the times).

Galvanised by the results, I grew a passion for chocolate-hazelnut spreads. Before the test, I thought that the chocolate-hazelnut spread was Nutella, and that everything else on the market was just an imitation. After the test, I tasted more than 20 different chocolate-hazelnut spreads and completely reconsidered my opinion on Nutella and everything else on the market.

20151002_195936

2 Oct 2015: My collection of chocolate-hazelnut spreads

My enthusiasm for chocolate-hazelnut spreads quickly became known to my friends and colleagues, to the point that even last year (i.e., five years after the first chocolate-hazelnut spread test), I was introduced to a new researcher at the University of Oslo, who asked me: “Wait a minute; are you the Nutella guy?”

I was not sure if to be proud or depressed by the fact that my contribution in the field of chocolate-hazelnut spreads got more attention than my contribution in the field of software engineering 🙂 Nevertheless, I decided it was time to replicate the chocolate-hazelnut spread test, turning it into a full-blown experiment.

Eventually, two weeks ago, I ran the chocolate-hazelnut experiment at SINTEF. The expriment aimed at ranking the best and worst tasting chocolate-hazelnut spreads, in addition to verifying if it is possible to recognise chocolate-hazelnut spreads while blindfolded.

20160224_161108

24 Feb 2016: Me presenting the historical context of the experiment. Photo by Einar Broch Johnsen.

20160224_164305

24 Feb 2016: Participants tasting chocolate-hazelnut spread samples. Photo by Einar Broch Johnsen.

Here is the structure:

  • 12 participants (9 males, 3 females) from 7 countries (4 from Norway, 3 from Italy, 1 from Bulgaria, 1 from France, 1 from Russia, 1 from Sri Lanka, 1 from Ukraine)
  • 4 chocolate-hazelnut spreads (Merenda from Greece, Nugatti from Norway, Nutella from Italy, Venchi Crema al Cacao e Nocciole from Italy), known to me only
  • Each participant tastes each spread in random order, while not blindfolded
  • After the first taste, each participant chooses the best and worst tasting spreads
  • Each participant tastes each spread again in random order, while blindfolded
  • After the second taste, each participant matches the spreads in the first taste with the spreads in the second taste (e.g., the third spread in the first taste is the first spread in the second taste)

And here are the results:

7 participants ranked Venchi, 3 participants ranked Merenda, and 2 participants ranked Nutella as the best tasting spread. No participant ranked Nugatti as the best tasting spread.chocolate-hazelnut_ranking_best

8 participants ranked Nugatti, 3 participants ranked Merenda, and 1 participant ranked Venchi as the worst tasting spread. No participant ranked Nutella as the worst tasting spread.
chocolate-hazelnut_ranking_worst

The participants correctly matched the spreads 33 times out of 48 (i.e., 68,75% of the times).
chocolate-hazelnut_matches

6 participants correctly matched all spreads, 3 participants correctly matched only 2 spreads, 3 participants correctly matched only 1 spread.
chocolate-hazelnut_match_distribution

3 women out of 3 correctly matched all spreads.
chocolate-hazelnut_women_matches

3 men out of 9 correctly matched all spreads.
chocolate-hazelnut_men_matches

To summarise, the participants ranked Venchi as the best and Nugatti as the worst tasting spread; they correctly matched the spreads more than two thirds of the times; women were better than men at correctly matching the spreads.

Can we conclude that my colleague at the University of Bergen lost his bet? Can we also generalise the result, and propose a generic framework for blind tasting foods and beverages? Comments and questions are more than welcome 🙂

A special thanks to my friends and colleagues who participated in the experiment.

We can put an end to imperial units

“In metric, one milliliter of water occupies one cubic centimeter, weighs one gram, and requires one calorie1 of energy to heat up by one degree centigrade — which is 1 percent of the difference between its freezing point and its boiling point. An amount of hydrogen weighing the same amount has exactly one mole of atoms in it. Whereas in the American system, the answer to ‘How much energy does it take to boil a room-temperature gallon of water?’ is ‘Go fuck yourself,’ because you can’t directly relate any of those quantities.” Wild Thing by Josh Bazell.

I have not read Wild Thing and I do not have any idea about who Josh Bazell is, but I absolutely love this quote, as it brilliantly summarises how superior the International System of Units (i.e., the modern form of the metric system) is to the system of imperial units, as shown in the following illustration:

Visual comparison of metric and imperial units

Yet, in 2014…

The USA is the only industrialised country in the world that uses the system of imperial units as its official system of measurement, as well as the only industrialised country in the world that has not adopted the International System of Units2(see Metrication in the USA).

Canada and the UK have adopted the International System of Units, but their metrication process is far from being complete (see Metrication in the UK and Canada).

Despite the fact only a minority of countries have not adopted the International System of Units, the majority of countries are still contaminated by the system of imperial units. Think about it… Even in continental Europe, where the metric system comes from and where the imperial units are nowhere in the education curriculum, screens are measured in inches, aircrafts’ altitude is measured in feet, watercrafts’ speed in measured in knots, etc.

The problem is that, to anybody who grew up with the International System of Units, an advertisement of a 55” TV screen tells very little about the actual size; a captain announcing that the plane is cruising at 30,000 feet tells very little about the actual altitude; a speedometer showing that the boat is cruising at 20 knots tells very little about the actual speed.

This is ridiculous, and has got to stop. Governments of all countries adopting the International System of Units have to enforce that this system is used in absolutely every application and that any trace of imperial units is consigned to history.

If you are a man or woman of science, or if you simply have common sense, please share this post on every social network, and tag your tweets and instagrams with the tag #banimperialunits.

Here are some example of tweets that you can send to your politicians.

Inch is not an official unit in Norway. Why are screens measured in inches and not centimetres? #banimperialunits

Foot is not an official unit in Italy. Why does the aviation industry use feet and not metres? #banimperialunits

Knot is not an official unit in Spain. Why does the ship industry use feet and not metres? #banimperialunits

Together, we can put an end to imperial units.

We can put an end to month-day-year dates

What is today’s date? If you answered this question with May 25, 2016 (read May the twenty-fifth, two thousand and sixteen), you should go on reading.

The day-month-year date format (e.g., 25 May 2016) is officially adopted by the vast majority of the world’s countries.

The year-month-date date format (e.g., 2016-05-25) is officially adopted by China, Japan, Korea, and Iran, and is also the date format of the ISO 8601 standard.

The month-day-year date format (e.g., May 25, 2016) is officially adopted by the USA only (although contamination of this format can be found in a few other countries). Like most standards adopted in the USA, the month-day-year date format is bizarre at best, as shown in the following illustration:

Visual comparison of date formats

Now, if you live outside the USA, but use the month-day-year format when writing or speaking in English, you are doing it wrong: You do not suddenly use miles, pounds, and Fahrenheit when writing or speaking in English, right? Then please, in the interest of logic, do not use the month-day-year date format either. 🙂 Keep using the day-month-year or year-month-date date formats, like you learned in school. If you want to avoid any misunderstanding, just use the variants d MMMM yyyy or d MMM yyyy of the day-month-year date format (e.g., 25 May 2016 or 25 May 2016), which are the most readable ones.

So, once again, what is today’s date? It is 25 May 2016 (read the twenty-fifth of May two thousand and sixteen).

Six months in Oslo—Life of a researcher in the capital of Norway

The 26 November 2012 at 3:00 o’clock in the morning I was sitting on the bed of my bare room in Bergen, overwhelmed with fear and excitement, looking at my life packed into suitcases, backpacks, and boxes, and staring at my one-way ticket for the earliest morning flight to Oslo: “Will I like Oslo?”, “Will I enjoy my new life?”, “Will I miss Bergen?”… Now, after six months in Oslo, I can finally answer these questions.

The city of Oslo may not have the charm of other western European capitals. It was built when Norway was among the poorest countries in Europe, and it is not difficult to notice. It has very little classical architecture, and the one it has is not exactly impressive: even the neoclassical Royal Palace is way too simple to my taste. But Norway is among the richest countries in the world now, and the municipality is finally investing resources to give the city a new touch of contemporary architecture. The Fjord City project aims at opening the city towards the fjord by building housing and recreation on the waterfront part of the city centre. The Opera House in Bjørvika together with the Astrup Fearnley Museum in Tjuvholmen are notable examples of this development. Although controversial, I find these buildings amazing, and I believe that, together with the upcoming buildings such as the new Munch Museum in Bjørvika, they are going to give a unique character to the city.

Another distinctive feature of Oslo is that its people can be very diverse. The various areas of Oslo have all different atmosphere, with Grünerløkka (Oslo east) featuring rather casual people — but unfortunately hipster too — and Frogner (Oslo west) featuring rather posh people — to the point that “vestkantgutt”, literally west side boys, is a common Norwegian expression to denote daddy’s boys. This heterogeneity is very unique in Norway, where otherwise the law of Jante preserves uniformity across the society. Now there is good and bad with the law of Jante, and I must confess that I have incorporated some of these values into myself after many years in Norway, but one of its bad sides is that is tends to deprive people of significance. I find it interesting that this phenomenon is less evident in Oslo, where people are less afraid to show that they are successful.

I bought a new flat in Rodeløkka, north of Grünerløkka. It cost me a fortune, but it increased my quality of life dramatically 🙂 I have met plenty of charming and interesting people so far, both international and Norwegians, which made my social life really enjoyable. I am also very satisfied with my new job at SINTEF, where I am currently working on some challenging but stimulating EU projects — namely PaaSage, MODAClouds, and Broker@Cloud, for those interested. All in all, life has never been so good, and, to be very honest, I have never really missed Bergen.

La gente fa schifo. Vaffanculo alla speranza.

Il risultato a dir poco tragicomico delle ultime elezioni mi ha riportato alla mente uno dei migliori pezzi di George Carlin. Mi permetto di tradurlo in italiano sostituendo l’aggettivo «americano» con «italiano»:

Tutti si lamentano dei politici. Tutti dicono che fanno schifo. Be’, ma da dove pensano che vengano questi politici? Non cadono dal cielo. Non arrivano attraverso una membrana da un’altra dimensione. Vengono da genitori italiani, da famiglie italiane, da case italiane, da scuole italiane, da chiese italiane, da imprese italiane e da università italiane… E sono eletti da cittadini italiani. Questo è il meglio che possiamo fare gente. Questo è quello che abbiamo da offrire. È ciò che produce il nostro sistema: immondizia in entrata, immondizia in uscita. Se hai cittadini egoisti ed ignoranti, avrai dirigenti egoisti ed ignoranti. E i limiti dei mandati non aiuteranno di certo: finirai semplicemente con una nuova cerchia di italiani egoisti ed ignoranti. Quindi, magari, non sono i politici che fanno schifo. Magari è qualcos’altro che fa schifo qui… Come, la gente. Sí, la gente fa schifo. Per qualcuno sarebbe un buon motto per una campagna: «La gente fa schifo. Vaffanculo alla speranza.»

Do not let social networks destroy your social skills

You see them every day. People at restaurants, bars, pubs, clubs, or even private parties, constantly looking at their mobiles… Rather than living their lives, they are validating their lives on social networks. They share their current location, tag their friends, upload pictures of their meals (rigorously altered with some cheap filter), and, since they are already on it, answer messages and leave likes and comments here and there… You name it. All this when they could actually mingle with the people around them. 🙂

Seriously, folks… Social networks are are destroying your social skills. Do not let them win. Tonight, turn off your mobile. Spend a night out with the people you really love, talk to them, laugh with them, exchange positive vibes in a way that is possible in the real world only. That is socialising. The rest is just a surrogate of it.

The sad story of the vCard format and its lack of interoperability

I have tried to reach the zen of address book synchronisation for many years. However, I have always experienced that some contact information, especially instant messaging and social networking addresses, gets lost or corrupted during the synchronisation.

The most adopted format for representing contact information is the vCard, whose last version is the 4.0 (see IETF’s RFC 6350, 2011), while the most adopted protocol for accessing contact information is the CardDAV (see in the IETF’s RFC 6352, 2011), which is based on the vCard format. Hence, I performed a little empirical study of the actual interoperability of the vCard format.

First, I defined a sample contact, where the contact information is meant to be for home:

Joe Bloggs
me@joebloggs.com
+44 20 1234 5678
1 Trafalgar Square, WC2N London, United Kingdom
Web: http://joebloggs.com
Skype: joe.bloggs
Twitter: @joebloggs

Second, I added this contact to four different address books:

Third, I exported each of the address books to a vCard file.

Fourth, I created a sample vCard file based on the vCard format 4.0.

Finally, I compared the exported vCard files and the sample vCard file among each other. The differences between these files blew my mind.

In the following, I show these vCard files and discuss the properties which are not interoperable. Note that I stripped the irrelevant properties and rearranged the remaining properties in order to make the comparison easier.

Sample vCard file

BEGIN:VCARD
VERSION:4.0
N:Bloggs;Joe;;;
FN:Joe Bloggs
EMAIL;TYPE=home;PREF=1:me@joebloggs.com
TEL;TYPE="cell,home";PREF=1:tel:+44 20 1234 5678
ADR;TYPE=home;PREF=1:;;1 Trafalgar Square;London;;WC2N;United Kingdom
URL;TYPE=home;PREF=1:http://joebloggs.com
IMPP;TYPE=home;PREF=1:skype:joe.bloggs
X-SOCIALPROFILE;TYPE=home;PREF=1:twitter:http://twitter.com/joebloggs
END:VCARD

The specification of the vCard is kind of shocking. Believe or not, it does not support social networking addresses yet. Even worse, it supports constructs which are not interoperable, namely grouped properties and non-standard properties.

Grouped properties are properties prefaced with the same group name. They should be grouped together when displayed by an application. I will show examples of grouped properties later.

Non-standard properties are properties defined unilaterally or bilaterally outside the standard. They may be ignored by an application.

Hence, I was forced to represent the Twitter address by a non-standard X-SOCIALPROFILE property:

X-SOCIALPROFILE;TYPE=home;PREF=1:twitter:http://twitter.com/joebloggs

Apple Contacts (version 7.1)

BEGIN:VCARD
VERSION:3.0
N:Bloggs;Joe;;;
FN:Joe Bloggs
EMAIL;type=INTERNET;type=HOME;type=pref:me@joebloggs.com
TEL;type=CELL;type=VOICE;type=pref:+44 20 1234 5678
ADR;type=HOME;type=pref:;;1 Trafalgar Square;London;;WC2N;United Kingdom
item1.URL;type=pref:http://joebloggs.com
item1.X-ABLabel:_$!<HomePage>!$_
IMPP;X-SERVICE-TYPE=Skype;type=HOME;type=pref:skype:joe.bloggs
X-SOCIALPROFILE;type=twitter:http://twitter.com/joebloggs
END:VCARD

The vCard file exported by Apple Contacts is only partially based on the vCard format 3.0 (see IETF’s RFC 2425 and RFC 2426, 1998) and its extension for instant messaging (see IETF’s RFC 4770, 2007).

The web address is represented by a standard URL property grouped together with a non-standard X-ABLabel property:

item1.URL;type=pref:http://joebloggs.com
item1.X-ABLabel:_$!<HomePage>!$_

This issue can be solved by changing the type of the web address from “home page” to “home”. This leads to a vCard file where the web address is represented by a standard URL property:

URL;type=HOME;type=pref:http://joebloggs.com

The Twitter address is represented by a non-standard X-SOCIALPROFILE property:

X-SOCIALPROFILE;type=twitter:http://twitter.com/joebloggs

Cobook (version 1.1.6)

BEGIN:VCARD
VERSION:3.0
N:Bloggs;Joe;;;
FN:Joe Bloggs
item1.EMAIL;type=INTERNET:me@joebloggs.com
item1.X-ABLabel:_$!<Home>!$_
item2.TEL;type=VOICE:+44 20 1234 5678
item2.X-ABLabel:_$!<Mobile>!$_
item3.ADR:;;1 Trafalgar Square;London;;WC2N;United Kingdom
item3.X-ABLabel:_$!<Home>!$_
item4.URL:http://joebloggs.com
item4.X-ABLabel:_$!<Home>!$_
item5.IMPP;X-SERVICE-TYPE=Skype:x-apple:joe.bloggs
item5.X-ABLabel:_$!<Home>!$_
X-SOCIALPROFILE;type=Twitter;x-user=joebloggs:http://twitter.com/joebloggs
END:VCARD

The vCard file exported by Cobook is only partially based on the vCard format 3.0. With the exception of the name, all the contact information is represented by either grouped properties or non-standard properties.

Google Contacts (15 November 2012)

BEGIN:VCARD
VERSION:3.0
N:Bloggs;Joe;;;
FN:Joe Bloggs
EMAIL;TYPE=INTERNET;TYPE=HOME:me@joebloggs.com
TEL;TYPE=CELL:+44 20 1234 5678
ADR;TYPE=HOME:;;1 Trafalgar Square;London;;WC2N;United Kingdom
item1.URL:http\://joebloggs.com
item1.X-ABLabel:_$!<HomePage>!$_
X-SKYPE:joe.bloggs
item2.URL:http\://twitter.com/test
item2.X-ABLabel:Twitter
END:VCARD

Google Contacts does not support social networking addresses natively, so I was forced to add them as URLs.

The vCard file exported by Google Contacts is only partially based on the vCard format 3.0 (see IETF’s RFC 2425 and RFC 2426, 1998).

The colon in all the URLs is is unnecessarily escaped.

Similar to Apple Contacts, the web address is represented by a standard URL property grouped together with a non-standard X-ABLabel property:

item1.URL:http\://joebloggs.com
item1.X-ABLabel:_$!<HomePage>!$_

I guess this is because Google Contacts specifically targets Apple Contacts when exporting to a vCard file. This issue can be solved by changing the type of the web address from “Home Page” to “Home”. This leads to a vCard file where the web address is represented by a standard URL property:

URL;TYPE=HOME:http\://joebloggs.com

The Skype address is represented by a non-standard X-SKYPE property:

X-SKYPE:joe.bloggs

The Twitter address is represented by a standard URL property grouped together with a non-standard X-ABLabel property:

item2.URL:http\://twitter.com/joebloggs
item2.X-ABLabel:Twitter

Memotoo (15 November 2012)

BEGIN:VCARD
VERSION:2.1
N:Bloggs;Joe;;;
FN:Joe Bloggs
EMAIL;INTERNET;HOME:me@joebloggs.com
TEL;HOME;CELL:+44 20 1234 5678
ADR;HOME:;;1 Trafalgar Square;London;;WC2N;United Kingdom
URL;HOME:http://joebloggs.com
X-SKYPE-USERNAME:joe.bloggs
X-TWITTER:http://twitter.com/joebloggs
END:VCARD

The vCard file exported by Memotoo is only partially based on the vCard format 2.0 (see Versit Consortium’s specification, 1996).

The Skype address is represented by a non-standard X-SKYPE-USERNAME property:

X-SKYPE-USERNAME:joe.bloggs

The Twitter address is represented by a non-standard X-TWITTER property:

X-TWITTER:http://twitter.com/joebloggs

Conclusion

Given the results of this study, it is not surprising that the import/export of vCard files as well as the synchronisation via CardDAV do not behave as expected most of the time.

Common contact information such as email addresses, telephone numbers, postal addresses, web addresses, and instant messaging addresses can be represented in two ways: by means of standard properties, or by means of standard properties grouped together with non-standard properties. The second way is currently used by Apple (and other vendors targeting Apple); it is unnecessary, prevents interoperability, and promotes vendor lock-in.

Other common contact information such as social networking addresses are not supported at all.

So what should be done? Here is my suggestion:

First, the IETF should remove grouped properties and non-standard properties from the specification, since open standards should promote interoperability and prevent vendor lock-in. Second, the IETF should add social networking properties to the specification. Third, the IETF should provide an official validator for vCard files. Finally, the vendors should implement the last version of the vCard format, and they should do it right.

Update 22 November

I have shared my concerns in IETF’s vCardDAV mailing list. You can follow the thread here.

A new beginning

Dear friends and colleagues,

I would like to thank you for these last five years in Bergen. They made me grow personally and professionally, and I will never forget them.

Now, however, it is time for me to move on. I have accepted a position as research scientist at SINTEF ICT in Oslo, and I am looking forward to starting.

My former supervisor Uwe once wrote me “Sometimes changes open unforeseen new perspectives.” This sentence has never seemed more appropriate.

See you in one month, Oslo.

Why I abandoned GNU/Linux on the desktop

I have experimented with GNU/Linux in dual boot with Windows from 1997 to 2000, and I have had GNU/Linux only installed on any of my computers, both at home and at work, since 2001. I have changed distribution relatively often — 3 years with Red Hat (now Fedora), 2 years with Mandrake (now Mandriva), few weeks with SuSE (now openSUSE), 1 year with Slackware (don’t ask…), 3 years with Gentoo, few weeks with Debian and 6 years with Kubuntu — but I have not changed desktop environment that much — 1 year with FVWM ’95 (those were the days…), 1 year with Enlightenment, 1 year with GNOME 1, and 12 years with KDE.

I have been a loyal KDE user, contributor and advocate since the release of KDE 2.0. I have donated 100€ to the KDE e.V. organisation each year since the announcement of the “Join the Game” campaign. Last but not least, I acknowledged the KDE community in my PhD thesis (at the end of the Preface, page xi). This was just in case anybody wonders about my credentials as a GNU/Linux and KDE user…

Unfortunately, KDE does not satisfy my needs any more, and I was forced to look into other solutions. This post attempts to explain why I came to this decision, and I hope that the GNU/Linux and KDE communities will perceive this as a constructive critic.

KDE 4.0 was released before it had reached feature parity with KDE 3.5. This is because KDE developers intended KDE 4.0 as a technological preview aimed at developers, testers and early adopters only. However, the majority of KDE users did not really understand that, which is legitimate considering that .0 means at least feature complete in any other project. As a consequence, many KDE users (including Linus Torvalds) found themselves with a desktop environment which was just half baked, and eventually ditched KDE.

I expected KDE developers to adopt a more conservative release strategy in future major (point) upgrades, but apparently they did not learn any lesson. In fact, KDE 4.4 was released together with a new version of KAddressBook which was rewritten from scratch and based on the Akonadi storage service. The new version introduced several regressions compared to the previous version shipped with KDE 4.3. As a consequence, once again, many KDE users found themselves with a half baked KDE PIM suite, and eventually ditched KDE.

Actually, this time also my frustration started to mount. I wrote two verbose posts on the KDE forum to question this release management and propose a system of bounties for bug fixing. These two initiatives triggered a lively discussion in the community, but in the end nothing really happened.

KDE 4.9 was released one month ago. There are still many small nuisances with it, especially with the KDE PIM suite. And do not blame me or the packagers, please. Try to access an IMAP e-mail account with an unstable Internet connection: in the best case, Akonadi will spam the KDE notification system with connection error messages, which will eventually crash KNotify; in the worst case, Akonadi itself will crash. Try also to synchronise contacts and calendars with Google or any other well known social network: if you manage to make it work, consider yourself lucky if you do not have any loss of information.

Despite these years-old bugs, KDE developers keep spending resources on applications the world could probably do without, like the Rekonq browser and the Calligra office suite. Sometimes I ask myself if KDE developers use these applications for real, and apparently the answer is that some do not: as you can notice in the official screenshot for the KDE 4.9 release, some prefer Chrome and LibreOffice over Rekonq and Calligra, which is not surprising at all. I often read complaints about the lack of resources to maintain the KDE project. Why not focusing on less applications of higher quality rather than more applications of questionable quality then?

I tried to look into other distributions and desktop environments, but the situation seems to be even more tragic. Let us have a look at the top ten distributions on Distrowatch:

And these are just ten distributions out of hundreds, as well as just seven desktop environments out of tens — among which I can not resist to mention Trinity, which is a fork of KDE 3…

Am I the only one thinking that this fragmentation is beyond ridiculous? The developers of these distributions and desktop environments are spending massive amounts of resources to develop redundant software and compete on a mere 2% of market share. Why not focusing on less distributions and desktop environments of higher quality rather than more distributions and desktop environments of questionable quality then?

Maybe there is a question of ego, or maybe there is a problem with the bazaar itself. But the fact remains: GNU/Linux has missed all the chances to become a mainstream desktop operating system, and I do not want to use a niche operating system any more. This was a very difficult decision, and I am really sorry for that, but I need something that just works, and I need it now.

So long GNU/Linux, so long KDE, you served me well.

My new desktop operating system? Mac OS X. Do I love it? No, I actually hate it at times, but I will come back to that another day.