Nokia/Intel/Google/Canonical – openness and professionality in MeeGo, Android, Ubuntu

MeeGo (Nokia/Intel): Openness does not seem to be very important for Nokia and Intel. They develop their stuff behind closed doors and then do a large code drop (once dropped, stuff gets developed in the open). In terms of professionality, it does not look much better: If you look at the meego-dev mailing list, you feel like you are in some kind of a kindergarten for open source developers – Things like HTML emails and top-posting appear to be completely normal for them, they don’t even follow the basic rules for emails and they also appear to ignore any advice on this topic. Oh, and writing a platform in GTK+ while pushing Qt as the supported toolset is not a good idea.

Android (Google): The situation with Android appears to be even worse. Google keeps an internal development tree and the only time the public sees changes is when a new release is coming and Google does a new code drop. Such a behavior is not acceptable.

Ubuntu (Canonical): Canonical does an outstanding job on openness. Canonical employees develop their software completely in the open, and there are no big code drops. They basically have no competitive advantage and allow you to use their work for your own project before they use it themselves. Canonical employees basically behave like normal free software developers doing stuff in his free time, the only exception being that they are paid for it. Most Canonical employees also know how to behave on mailing lists and do not post HTML emails or do top-posting. There are of course also other people: The design process of the Ubuntu font on the other hand is a disaster, with the font being created using proprietary software running on Windows; for a free software company, that’s not acceptable (such persons should probably not be hired at all). Furthermore, the quality of Ubuntu packages is often bad when compared to the quality of a Debian package (especially in terms of API documentation of Canonical-created software); a result of vastly different development cycles and different priorities.

On a scale from 0 to 15 (15 being the best), Nokia/Intel receive 5 points (“D” in U.S. grades), Google receives 3 points (“F” in U.S. grades), and Canonical receives 12 points (“B” in U.S. grades). Please note that those grades only apply for the named projects, the companies may behave better or worse in other projects.

Final tips for the companies:

  • Nokia/Intel: Teach your employees how to behave in email discussions.
  • Nokia/Intel/Google: Don’t do big code drops, develop in the open. If someone else can create something awesome using your work before you can, you are on the right way. Competitive Advantage must not exist.
  • Canonical: Fire those who used Windows to create the Ubuntu font and restart using free tools.
  • All: Document your code.

48 thoughts on “Nokia/Intel/Google/Canonical – openness and professionality in MeeGo, Android, Ubuntu

  1. During UDS-M there was a presentation about Ubuntu font. One of questions was about using Windows non-free software for designing.

    The answer was easy: there are no such tools available for Linux. FontForge is best but still lacks too much.

    1. According to the sabdfl, Canonical wants to be a free software company; not an open source company. This behavior is acceptable for open source people, but not for free software people.

      1. But Canonical still needs to be Pragmatic. If the need for a high-quality free font is perceived to be higher than the means to create that font, then the proprietary tools are the only option.

        I disagree with the general principle that free things can’t be created with proprietary means, though I do generally agree with the rest of the points you make.

      2. If open-source tools are not available, then we should go for proprietary tools. Our motto should be the best tool for the job.

        If OSS tools don’t work out, we should stop being religious.

  2. “with the font being created using proprietary software running on Windows; for a free software company, that’s not acceptable (such persons should probably not be hired at all)”

    I’m a bit shocked to read that… Would you mind developing a bit please ? Isn’t Linux mostly about freedom of choice ? Can’t someone decide to use a proprietary software on a proprietary OS if they want ? If they release the font in the open later, where is the problem ? If this software is better, why not using it? I’m sorry, but I don’t have a problem with proprietary softwares, some of them are way better than open source ones. If you work on Raw photo or video on Linux, you must already know that. As long as those softwares are using standard formats to import/export data, I don’t have a problem at all to pay to use them on my Ubuntu. I truly believe in opensource software, but I don’t think that proprietary is necessarily evil. The future is a mix of both in my opinion.

      1. Ok, clear answer.
        I just totally disagree.
        But we are both free to have our view on this. Thanks for the clarification.

      2. vorlon wrote:
        >> Strong words from the maintainer of the
        >> Debian ndiswrapper package…
        Well, same applies here. It’s only a temporary solution and has to vanish sooner or later.

        The problem with the Ubuntu font is more complex, I guess I should explain it in a new post.

  3. Again, just to reiterate, Canonical is not promoting complete openness in *all* cases. It is a real and true goal but when there is a no way to produce a product using completely open source software, in the case of the *free* font we are doing, the obvious answer is to use proprietary software, produce *free* deliverables, and strive to make open source alternatives as good as proprietary software in the future.

      1. You criticize other companies for making things behind closed doors… Now that Canonical is very transparent, you also criticize. Sounds a bit paradoxical to me 😉

      2. “5. No Discrimination Against Persons or Groups”
        “6. No Discrimination Against Fields of Endeavor”
        “9. License Must Not Restrict Other Software”
        “10. License Must Be Technology-Neutral”

        Thus refusing to allow someone else to use proprietary software is against the believes we stand for.

  4. I think you have to look at Canonical as at least two distinct entities in this question:

    1. Distro team – They work on Ubuntu and are as open as you say.

    2. The rest of Canonical – It varies widely. The new Unity launcher was developed behind closed doors and then released when complete, as an example.

    1. The Unity launcher was far from complete when released. In fact it wasn’t even functional. Further development is continuing now, in the open.

  5. “Canonical does an outstanding job on openness. Canonical employees develop their software completely in the open, and there are no big code drops.”

    “But you don’t have to publicize using Windows.”

    “Evil stuff should be done in the dark, good stuff in the light.”

    Although some of your replies makes me really doubt about the coherence and seriousness of your post, in response to it I’ll direct your attention to the following link:
    It’s an interesting reading focusing on how important it is to do things in the open from the start (which contradicts your view on Canonical) for the community’s sake, but above all, stressing “that how we reach our goal is as important as finally reaching it, if not more”.

      1. If free software has failed to produce a high enough quality font generator, then doesn’t it deserve that publicity?

  6. Your whole rant about the font thing is ridiculous. It’s like saying you won’t buy a car because it was designed using proprietary software. Hmm… Do you have a car? If you do, you might want to get rid of it. Oh, and you can forget about public transport, because that was probably designed using proprietary software. Heck, your house probably was too. When you hire someone to make something for you, do you tell them they can only use the tools you supply? I think you’re a little out of touch with reality, and the free software movement…

      1. The GENIVI consortium is designing software which runs in cars based on a completely open source code base. So soon you will be able to buy a partly open source car.

    1. Every major released of Android to date has come with a huge code drop from Google. I’m not sure how closely Google’s developers follow the AOSP, but people on the AOSP can’t really follow what Google’s doing with Android.

      It discourages involvement, because why bother submitting a patch for a bug that might have already been fixed behind closed doors?

      Now, there is, I think, one Android module that is being developed fully in the AOSP, but the vast majority of the codebase has an internal tree that rarely gets pushed.

  7. When Richard Stallman decided free software was the way to go, he didn’t start by writing the widget library. He started with the compiler and editor. But he did use proprietary software to build the free tools to replace them and only until they had been replaced.

    If there is a problem with the Open Source tools like Font Forge, instead of making yet another photo editor or yet another widget set, how about putting effort into a Font Editor so the community can be free of yet another piece software that Canonical has so publicly illustrated is lacking on Linux. Gee, thanks guys!

  8. I don’t see why the “big code drops” are so terrible. Open source is one thing, developing stuff trying to make every single internet troll out there happy from the ground up is another.

    The classical FLOSS tale is that one told by RMS. He had a printer, but could not fix it. If Xerox gave him a “big code drop” everything would be fine. That is much different than asking Xerox to develop a printer in the open. We must separate the two things.

    Open-source is not wiki-source.

    1. No doubt, a big code drop is better than nothing. But a big code drop is anti-social in a community-ish project like say the Linux Kernel. Linus won’t take a big code drop that he can’t understand. If you want a big change to get integrated, you have to send it in smaller, more understandable, merge-able pieces.

      IBM had to learn that the hard way. Just because your a big company with schedules to meet and commitments to meet does not mean that people who don’t work for you are going to fall all over themselves to accept your changes sight unseen and with no questions asked.

      If they can’t get their changes accepted into upstream, then they will be forced to maintain their own fork of the code base. That’s ok and they aren’t breaking the rules if they do so, but they will have given up a few major benefits of Open Source. Also people will point and laugh, because they are needlessly recreating the balkanization that happened to UNIX. With UNIX the companies didn’t know better and they weren’t interested in thinking about if they are making a mistake by making a Brand-X fork from a standard. Now there’s no excuse.

      It’s kind of a multi-part process. First you learn that Open Source has produced better code. Then you realize it not just because they worked in private and tossed the code over the wall when they were ‘done’.

  9. Yepp, the reason why Canonical doesn’t do big code drops, is because they simply write nothing big in code they could even drop… 😉

    Except of course launchpad, which they actually code dropped worse then anybody else, and developed it behind closed doors. and as closed source. Booh.

  10. @me: He knows what he is writing. The MeeGo 1.0.1 Netbook release does not use a single line of Qt code.

  11. “If open-source tools are not available, then we should go for proprietary tools. Our motto should be the best tool for the job.” too sad :(. Nooooo

    “If open-source tools are not available, then we should create them or improve the tools available in the community. We shouldn’t miss this great opportunity to show the greatness of Ubuntu community.” god 😉 Yesssss.

    I survived without Ubuntu fonts since Gusty G and I can wait six moths more and have both a nice font and nice tool for NN or OO release.

  12. @Julian,

    if you want to exterminate propietary software from earth, then Free and OpenSource software will die.
    Most of the good developers are working for companies who are your enemies.

    The font guy at UDS-M was really amazing. He told us all,” if you want that I’m using free software, give me the software which is good enough like the commercial variant on Windows. ”

    He’s right. Develop the software he wants, he will use it.

  13. If you drive a manual, then through the gears as quickly as possible without using the engine. Reduce your air conditioning use in the car, and low speed is a significant increase in the amount of fuel required for these systems macht. Stick to speed limits on the road you’re on. The faster you drive the more fuel you use. These steps, if followed correctly will lead to better fuel efficiency and reduce over all the bills.

  14. Thanks for the kind words about Ubuntu. I don’t have the knowledge to agree or disagree with you about the quality of our packages, but I agree that we could do a better job of documenting APIs — I think it’s mostly just a lack of time allocated to it.

    Your point about the font, on the other hand, is hilarious. Even Gentium is created using FontLab Studio. It would be great if there was a worthy open-source font editor (FontForge doesn’t even use a native toolkit), but if Canonical was going to invest heavily in application development I could think of a hundred projects that would be useful to more users than that. Your “tip” that, at this late stage, we “restart using free tools” reminds me of a scene from the old BBC radio comedy “The Goon Show”:

    “I must protest at this gross mis-spending of public funds. This building was supposed to cost £25,000. In fact it cost £59,000!”
    “We mustn’t stand for this!”
    “We’re not going to, we’re not going to indeed.”
    “Bravo, bravo.”
    “To teach those concerned with this disgusting waste a severe lesson, I’ve ordered the building burned to the ground, and a new building put up at the proper price!”

    1. “FontForge doesn’t even use a native toolkit”, whoooosh, another relevant and intelligent statement.
      I guess using a “native” toolkit would greatly help fontforge be a awesome font editor (which it is already). But what do you mean by “native” toolkit, OpenMotif is not native ??

      1. No, it isn’t. Ubuntu’s native toolkit is GTK, and Kubuntu’s is Qt. Currently we make exceptions for Firefox and, but only because they’re critical applications. (For example, one factor — though far from the only factor — in evaluating Chromium vs. Firefox has been that Chromium uses GTK to a greater extent than Firefox does, so it better follows the Ubuntu theme and behavior.)

        If FontForge used the native toolkit, I could do such basic things as accessing my bookmarks in the Open and Save dialogs, choosing a different printer in the Print dialog, or moving diagonally to submenu items.

  15. gosh, I guess you have never seen

    so, what’s not open about Qt’s development?

    Do you want them to use shared cloud editors so you can see what exactly they are editing at the moment, After all, anything less is not really open development…

  16. dear julian, instead of wasting your time with creating another-package-management-system-to-replace-the-best-there-is-already and whining and speaking quite harshly (exterminate is very very offensive in a matter you don’t seem to understand quite, i.e. like a grown-up), why not try and contribute to fontforge ?
    oh, and thx for the fun with the “Canonical does an outstanding job on openness.” openness is not all, doing things the best way to alienate communities in the open is not something you should gloat on.

Comments are closed.