Why ubuntu sucks in keeping the distribution in good shape?

About a year ago, Canonical released Ubuntu 8.04LTS, codenamed "Hardy Heron". Hardy was the first Ubuntu version to introduce Firefox 3.0, the problem was that Mozilla Firefox 3.0 was released only some time after the Ubuntu release, which made Canonical include a beta version of Firefox in the official release.

As Linux has better software updates mechanisms than other operating systems, no one worried about Canonical's decision to include beta software, and it was good to people who update their systems on a daily/weekly basis, but a bad idea for users who use LiveCD Linux (newbies, people who use Linux just as an Emergency CD for their other-os installation etc.), and for people who are unable to update or prefer not to do it (offline users, people who are connected only to internal networks).

Ubuntu users indeed got the official Firefox release right after it was released by Mozilla, but Canonical forgot one important piece – translations. In the official Ubuntu release, they got Firefox 3.0 beta 5, and its equivalent translations, but while they kept updating the browser, they didn't update the translations, <!– @page { margin: 0.79in } P { margin-bottom: 0.08in } –>where a few string changes were made.

Speaking of the Firefox Hebrew translation, which I am proud to be a member of, we had one very visible bug which was fixed between 3.0 beta5 and 3.0 rc1 – the status bar text was not aligned correctly, bug 402240 in Mozilla bug tracker. Shortly after the Ubuntu release we got the same issue reported on Ubuntu, and thanks to good people who pointed me to the link I had the opportunity to see it and tell them about the upstream issue in Mozilla.

Ubuntu users are living in a closed eco-system. They use software from other projects ("upstream"), but for most of the time they don't send patches and fixes back to these projects, and bugs reported in the Ubuntu bug tracking system will be kept there. The project maintainers and members won't even know about these issues, which are making Ubuntu users suffer from some issues which are not relevant to other Linux users.

Canonical adds a menu item to report bugs on every 3rd-party software they use, but you guessed right, the reported bug will exist only in Ubuntu Launchpad. when I tell people they should report these bugs to Mozilla if they want them to be fixed, and point them to the real bug which was already reported – other call me a troll and ask me to leave.

Back to our story. Because Canonical are packaging the software by themselves, they don't always remember to pack everything often enough. They are updating the browser itself, but you can forget about translation updates, even if they important and might break the application in some cases of missing strings.

Time passed by, Mozilla released the official translation, and Ubuntu updated the browser from Beta5 to 3.0 GA. The translation is still broken, as they thought Beta5 is final. The issue was mentioned in a few community forums, and when we looked for translations, we found that the translation was hiding inside the Gnome packages!

Fast forward to May 2009. One year, two Ubuntu distributions released, 10 Firefox minor versions. Do you think Ubuntu fixed these issues? Think again. They just keep using the same broken translation packages for both Ubuntu 8.10 Interpid release and Ubuntu 9.04 Jaunty. Next Ubuntu release may fix this issue at least, as they may want to include Firefox 3.5 in the release, far ahead of such minor bug fixes.

How to make things better in the future? I have three ideas:
a. Ubuntu should not keep bug reports for 3rd party software locked inside their bug trackers. They should motivate users to look for bugs in the upstream systems or do it for them (even if "human routers" need to be used).
b. Ubuntu should not update software while keeping old translations. It is not important to update a translation when it has no diff from the previous version, but sometimes it is important, even for minor versions, and l10n maintainers don't need to request every distribution to push the updates to their repositories.
c. Mozilla should be more friendly to Linux users, including but not limited to better quality binaries (in other words – enable PGO), and helping distributions by providing the packages to the repositories.