Free software is always progressing—at least by someone's definition
of "progress". Over the last few years, or more, we have seen huge
controversies erupt around changes that were being made to desktop
environments, system software, and other parts of the free software stack.
The controversies themselves are
not that surprising, as people are often resistant to change (and some
proposed changes are not necessarily good ones), but the tone
and manner of the complaints is sometimes rather eye-opening. It often
sounds like some believe that the developers of these projects set out
to ruin people's lives with their changes. Somehow that doesn't seem likely,
and starting a discussion from that standpoint seems rather unlikely to
change anyone's mind.
It is unquestionably frustrating and maddening to upgrade a package
or distribution and find that things no longer work they way they once did;
that workflows or other habits are now "obsolete". But, presumably, the
upgrade was done for a reason, typically to get new features and fixes.
With upgrades come dangers, of course. Sometimes those dangers are
from new bugs or incompatibilities, but other times the danger is that
something that once "worked" no longer does.
This is a problem that is in no way restricted to the free software world.
One could easily argue that the problem is far worse for proprietary
systems, as upgrades are sometimes forced, which is pretty uncommon for
free software. Distributions do reach their end of life, but there are
plenty of alternatives to consider when that happens. Somehow,
choices like Windows
Mint or Mac OS X "Wheezy" don't seem to be in the cards. Nor does
installing an alternative desktop environment, display server, init system,
kernel, or audio subsystem. For the most part, you get what the
proprietary vendors give you and you like it—or not.
It could also be argued that the free software approach (to the extent
there is a single "approach") does not lead to desktop dominance. That
has, of course, been argued ad nauseam here and elsewhere. But the
fact of the matter is that hackers and projects are making their own
decisions, freely, based on their interests and understanding of the
problems they are solving. No one has set out to annoy anyone. That may be
a side effect of the changes that are being made, but it certainly isn't
If you peer into the development mailing lists or talk to the proponents of
these kinds of changes, they clearly see them as improvements. It's
a little hard to imagine that folks would spend significant amounts of
their time making the code worse. Opinions will differ on the changes, of
course, and making one's opinion known is a time-honored tradition in free
software (not to mention the internet and human society in general). But
the vehement, sometimes demanding, tone that those complaints take is
counter-productive. Part of what seems to be lacking is a certain of level
of respect for the projects and the people behind them.
A much more effective way to make one's opinion known is through
engagement. Unlike the proprietary world, we in the free software world
can directly engage with the developers, describe the problems that we
see, and try to change the direction of the project in a way that is more
suitable for our needs. Most free software projects discuss planned
changes well in advance of their implementation and give users lots of
opportunities to try out early versions. But engaging the project is best
done with well-reasoned, specific descriptions of problems, missing
features, and so on—not endless streams of "Project XYZ sucks!"
messages to mailing lists or comment threads.
Beyond just offering suggestions and/or complaints, though, we can also
pitch in and fix the problems that we see. Given the large number of vocal
opponents of various changes (and proposed changes) that we have seen,
there should be a ready supply of developers and others to continue
maintaining older code bases, or to work on getting features added to fill
in gaps. Even when a project moves on from an earlier version (a la
3 or KDE 4), it's not like the old code disappears. We have seen some
efforts (like the Trinity desktop
environment for KDE 3 and MATE for GNOME 2) but,
despite all the complaints, a big community has not sprung up around either.
Part of the problem is that the intersection between those who are vocally
unhappy and those with the time and skills needed to help is probably
fairly small. Free software thrives where people participate, but folks
tend to want to work on things that scratch their own itch. If there
aren't enough participants with the "right" itches, few of the complaints
will actually get solved.
Another related problem is that there seems to be an increasing sense of
entitlement from some within our communities. The huge base of free
software that we use today has been given as, essentially, a gift, from
tens of thousands of contributors worldwide. Just like "those who write the
code get to choose the license", "those who work on the project get to set
its direction". Users are, of course, an important piece of the puzzle,
but frothing, name-calling, endless complaining does not rise to the level
of a contribution.
It may well be that some or all of the problems that people see in various
projects (GNOME 3, KDE 4, Wayland, systemd, the Journal, grub2, ...) are
serious and will drive users away from the projects or the distributions
that adopt them. But there's really only one way to find out. If users
vote with their feet and move elsewhere, one suspects the projects will
follow along behind.
None of this is meant to downplay the importance of users making their
problems known, but there is a point at which the repetitive, often
content-free, complaints don't serve any purpose—other than venting
perhaps. These projects have most certainly heard most of the complaints
by now, sometimes an enormous number of times. Have they seen constructive
attempts to address those problems in even a small fraction of that volume?
unfortunately, seems unlikely.
In the end, though, people eventually either get used to the changes or
find some alternative that suits them better. Sometimes that alternative
involves a fork of the existing code and it is not unheard of that
the fork eventually rejoins or takes over from the original project. The
EGCS/GCC split comes to mind, for example, and we may be seeing something
like that play
out again with LibreOffice and Apache OpenOffice. It's also worth
remembering that GNOME 2 was originally met with a lot of unhappiness,
perhaps even from some of the same folks that are now complaining that
GNOME 3 "took away" things they were used to in GNOME 2. Over time, these
things have a way of working out, but in the meantime, it's worth at least
thinking about whether that venom-filled post is really going to be
Comments (175 posted)
Just over eight months after its last major release, the LibreOffice project has unveiled version 3.5.0 of its open source, cross-platform office suite. The enhancements are
numerous, with improvements touching each of the major application
components, along with several brand new features. The project has been busy in
other respects over the past few months as well, incorporating a
foundation, launching a new support service, and exploring post-desktop
As always, the new LibreOffice builds are available in 32-bit and 64-bit flavors for Linux, packaged in Debian or RPM format, in addition to bundles for Windows and Mac OS X. According to the release notes, 3.5.0 is unchanged from RC3, so bleeding-edge types may not need to upgrade. There are a few warnings in the notes as well, most notably that Windows users cannot upgrade directly from 3.4.5 (so they must uninstall 3.4.5 first), and that Linux users are strongly encouraged to use OpenJDK instead of GCJ.
Users should also expect some difficultly with Microsoft Office 2010 not recognizing some of the new features in Open Document Format (ODF) 1.2 that are now implemented in LibreOffice for the first time. If all of those caveats do not scare you off, however, there is much to see in the new release.
LibreOffice underwent an extensive cleanup in the 3.5 development cycle; Michael Meeks noted the removal of more than 3,000 unused methods between July and December 2011. The subsequently leaner-and-meaner code base adds a few new suite-wide features worth mentioning, starting with support for Java 7 (although Java 6 is still supported as well, for backward compatibility).
The updater and extension manager have been made more user-friendly, allowing users to configure how frequently LibreOffice should check for new releases, and letting users sort extensions by their origin (i.e., those bundled with LibreOffice versus those installed by the user). There are several important UI changes, including clearer alert messages when a user tries to save a file in a format that will lose formatting information, and an easier-to-understand "more" indicator for when the toolbar menu is too small to display all of the buttons.
At the lower levels, password-protected ODF files are now encrypted by
AES-256, replacing the weaker Blowfish cipher used in previous versions.
LibreOffice now also incorporates the ttfautohint font hinting
engine (which we looked at in
November), which will improve rendering quality, particularly on Windows.
Also on the text handling front, LibreOffice supports SIL International's Graphite font
format, and ships with Graphite versions of the Libertine font family, which
include a number of new typesetting features [PDF] in the latest update.
Finally, the Base database front-end (which can be used by the other components in the office suite) now includes native drivers for PostgreSQL. 3.5.0 supports versions of Postgres up through 8.3; support for 8.4 and newer is slated to arrive with LibreOffice 3.5.1.
Easily the most talked-about new feature in 3.5.0 is the integration of a grammar checker into the Writer word processing component. There have been several grammar-checking extensions in the past (and those are still installable), but this is the first such built-in tool. The grammar checker is called LightProof, and it supports English, Hungarian, and Russian.
There is an extensive look at LightProof's functionality on developer László Németh's blog. There he discusses the philosophy employed to hopefully make LightProof more useful and less annoying — a shortcoming that he said leads many users to disable grammar checking in Microsoft Office and other products. The gist is to not try and do too much, limit "false positives," and allow user-control over the options. The rules that the grammar checker uses are configurable, and each rule is linked to a detailed explanation for educational purposes.
Smaller UI improvements include a nicer page-break indicator and a
revamped interface for creating and modifying headers and footers. Both
are editable using an on-canvas drop-down menu, rather than having settings
buried in the menus. You can now toggle the display of non-printing
characters (such as paragraph breaks), which should help when hunting down
white space problems or formatting issues. The word-count tool, which in previous releases needed to be manually re-executed to update its numbers, is now "modeless" and maintains a live count of the documents words as you work.
There are also lots of smaller improvements to layout issues (such as how to handle tab stops that extend past the outside margins of the page), and internationalization improvements (such as support for using Arabic letters or Persian words as the "numbers" in ordered lists). Last but not least, when Writer automatically generates a table of contents (TOC) for a document, it can now hyperlink the TOC entries to the correct place in the body of the text.
The Calc spreadsheet also picks up some new features and UI
improvements. At the purely functional level, Calc got several new
functions, including the trigonometric functions secant and cosecant (along with
analogs) and basic bitwise operations. The new version of Calc also
allows for an unlimited number of user-defined rules for conditional
formatting (e.g., changing the text style or background color of a cell based on particular criteria). There is still an upper limit on the number of individual sheets that a Calc spreadsheet document can contain, but 3.5.0 bumps that limit up to 10,000.
The interface changes include a multi-line input box for entering cell data. This is a change from the traditional one-line input bar most users are accustomed to, but it makes for an easier time entering formulas or long text strings in a spreadsheet. Graphs and charts should look better in 3.5.0, with the addition of several more point-marker styles (the dots rendered for data points in a scatterplot or line graph), and several fixes to the line-drawing code. Apparently, in previous releases, it was possible for a line that was intended to connect several data points to end up only touching the beginning and end points; the new B-spline code fixes that problem and results in smoother-looking lines all around.
Finally, an import bug-fix lands in the new release, in which Calc now gracefully handles the situation when a cell or formula's data comes from an external source (such as a database), but the external source is unreachable or unreadable. In previous releases, this resulted in errors that cascaded through the spreadsheet's calculations; instead, now the old value of the cell is used and an alert is triggered to tell the user that the external source is irretrievable.
Draw, Impress, and Math
The other components in the suite have shorter new-feature lists in
3.5.0, but some of the enhancements are significant. For example, the Draw
vector editor gains the ability to import Microsoft Visio files, and picks
up several new styles of line-ending "arrowheads" — including several
that are designed to work with Unified
Modeling Language (UML) diagrams. Draw can also embed several types of
swatch palettes, which includes color palettes and the less-frequently seen
gradient or fill palettes. That allows a single change to one of the
palettes to alter colors, gradients, and fills throughout a large document.
The LibreOffice version of the Impress presentation application includes
the "presenter console" feature that had been an optional extension in
OpenOffice.org — though one that most Linux distributions had included for
quite some time. This feature lets a user drive a connected
projector in the usual manner while keeping his or her accompanying notes
visible (or the next slide to be shown) on the
screen of the laptop or PC. Unfortunately Impress can get
confused sometimes about the displays, which can transpose the screen that
is showing the slides and the one showing the notes; 3.5.0 adds a handy screen-swapper button so users can correct the problem at presentation time with a single click. Impress also makes launching the new-presentation-wizard at start-up time optional, and picks up improvements to importing vector shapes and "Smart Art" graphics from Microsoft PowerPoint files.
Math, the LibreOffice formula editor, gains the ability to both import and export expressions from Microsoft's Office Open XML (a.k.a. DOCX) format. It also acquires a few new symbols, such as the impressively-named "negated existential quantifier" (better known as the "does not exist" symbol ∄), and a set of symbols used in game theory.
Still to come
In addition to all of the work that went into the LibreOffice 3.5.0 code itself, the project has been busy on several other fronts in the past few months. On February 1, it legally incorporated its governing organization The Document Foundation as a community-driven nonprofit foundation based in Germany. Deputy Chairman of the Board Thorsten Behrens described the move as a legal affirmation of the project's community spirit, "independent from any single vendor.”
The project also launched a StackOverflow-style community-support site named Ask LibreOffice, which offers a vote-driven way for users to find answers to their questions. The site runs on the open source Askbot web application.
Development continued in new directions, too. A GTK+3 port is underway for Linux, which is an important milestone in its own right, but also clears the path for a web-based LibreOffice interface somewhere down the line, thanks to GTK+3's HTML5 back-end. Work is also underway to port LibreOffice to Android and Apple's iOS. Both mobile OSes are increasingly popular in the workplace on tablets, so there is a case to be made that these new ports are as important (if not more so) as the traditional desktop targets.
Neither the HTML5 nor mobile OS ports of LibreOffice made it to stable status for the release of 3.5.0, however. Meeks told FOSDEM that he is hopeful an online version of LibreOffice will be stable by the end of 2012, and that at least an ODF document reader will be available soon for Android, if not a complete LibreOffice suite. For a project as hefty as LibreOffice, that is a brisk pace, but the past year has shown The Document Foundation and its development community capable of working at a rapid clip — as 3.5.0 demonstrates.
Comments (1 posted)
As many observers have pointed out, the phone handsets that many of us
carry now exceed the power of the laptops we were carrying not all that
long ago. The much-hyped Galaxy Nexus, for example, includes a 1280x720
display, 32GB of flash storage, 1GB of RAM, a 1.2GHz dual-core
processor, and a number of interesting peripherals never found on that old
And, of course, there is a Linux kernel running the whole thing. Given
that, one might well wonder why one should still bother carrying a laptop
around. Canonical, it seems, believes a number of people are wondering
that; thus the announcement
of Ubuntu for Android
interesting attempt to move laptop-based activities onto the handset.
Ubuntu for Android is intended for handsets that can be docked and will,
thus, have a keyboard, mouse, and display available. In that setting, it
will provide the usual, Unity-based Ubuntu experience on that external
display; the Ubuntu system essentially runs inside its own container on top
of the Android kernel. The interface on the handset itself, meanwhile,
remains pure Android. So
Ubuntu for Android can be thought of as providing two distinct
personalities for the device. There is some data sharing between the two -
the contacts database, for example - but they remain mostly separate from
each other. Rather than create a single integrated interface to the
handset, Canonical has made something closer to a dual-boot system - except
that the two can run simultaneously on their respective displays.
According to Canonical, the split system is the best solution:
Android is a mobile solution, designed for a touch interface on a
handheld device. On the desktop, where users expect a
pointer-driven experience, a PC operating system is
essential. Several vendors have tried to bring Android-based
desktops or laptops to market, with no success; Android was
designed for touch only, and has its hands full winning the tablet
Even a well-equipped phone does not have vast amounts of storage by
contemporary standards. But even with more storage, it seems likely that
users of Ubuntu for Android would want to have their files available
outside the handset as well. So it is not surprising that this system is
cloud-heavy. So there is no LibreOffice by default; instead, the system
expects to use the Google Docs service. It does provide
Thunderbird, though one might imagine that its storage-intensive indexing
has been disabled by default. For good measure, Ubuntu TV has also been
built into the system.
The hardware requirements (found on the features
page) rule out a lot of devices, but are certainly not out of line for
a current high-end device. Ubuntu for Android wants a dual-core CPU
(clocked at 1GHz or higher), video acceleration and the ability to produce
HDMI output from a secondary frame buffer device, and 512MB of RAM. The
need for a dock for the phone to provide HDMI and USB ports is implied; few
devices have the requisite connectors without a dock. As Canonical points
out, the hardware requirements are easily satisfied by devices that are in
So Ubuntu for Android seems like a useful and feasible development. The
unfortunate part is that it is not available for users or developers to
play with. Canonical is clearly hoping to sell this offering to device
manufacturers and carriers; as this page
makes clear, shipping it will involve per-unit royalties. Canonical
clearly believes that vendors may find those royalties worthwhile, though,
as a way to sell more high-end devices:
Ubuntu for Android gives mobile workers a compelling reason to
upgrade to multi-core handsets with more RAM, more storage, faster
GPUs and CPUs. It’s not just a phone they are buying, it’s a
desktop too. While mid-range phones can deliver a perfect Android
experience, it takes high-end horsepower to drive a phone and a
desktop at the same time. Newer multi-core processors are up to the
job, and Ubuntu is the killer app for that hot hardware. It’s the
must-have feature for late-2012 high-end Android phones.
Canonical also pitches the idea that a bundled Ubuntu desktop will drive
demand for fast broadband offerings (LTE, for example) from the carriers.
And they claim that it could be especially attractive in parts of the
developing world where high-end handsets are being sold to customers who
have never owned a computer before. Such people, Canonical says, have
"no legacy attachment to the desktop" and will find a combined
This reasoning may make some sense; it is possible that hybrid, handheld
Linux-based systems will bring about the year of the Linux desktop after
all. But there are a couple of concerns worthy of note. One is that users
may quickly tire of having two different interfaces to the same system,
leaving Ubuntu for Android vulnerable to a competing system with a more
integrated experience. One can imagine, after all, that, if this idea goes
anywhere at all, there will be Windows- and Mac OS-based variants
available in short order - and, perhaps, other Linux-based implementations
as well. Some of these systems may look like less of a hybrid and, as a
result, be more successful.
The other concern is that Canonical appears to be taking a step toward
proprietary systems. If there are plans to offer this functionality
directly to users, or to enable it to be bundled with a distribution like
CyanogenMod, Canonical has not disclosed them yet. Instead, we have a
system that, by all appearances, will only be available in binary form from
manufacturers or carriers. Source for GPL-licensed components will
naturally be available, but it is far from clear that Ubuntu for Android
will be all free software; vendors like Citrix and Adobe feature
prominently on the product's page. It is also not clear that
device owners will be able to modify the distribution to their own liking
and run the result on their devices.
A handset or tablet that can run a full Ubuntu system has some appeal; one
running a locked-down Ubuntu system would be rather less exciting.
Ubuntu for Android is clearly an important step in the evolution of the
"desktop" away from traditional personal computer systems. It has a lot of
potential as a practical replacement for bulkier systems. But, to be
commercially successful, Canonical will have to convince a lot of people
that the Unity-based desktop is what customers want. And to be successful
as free software, it will have to result in free systems under the control
of their owners. It will be a sad day if the Ubuntu community of the
future is focused on the creation and propagation of tools to jailbreak
their Ubuntu systems.
Comments (91 posted)
Page editor: Jonathan Corbet
Inside this week's LWN.net Weekly Edition
- Security: Capsicum; New vulnerabilities in busybox, chromium, java, libvorbis, ...
- Kernel: Short sleeps suffering from slack; The Linaro Connect scheduler minisummit; Subtle interactions in the embedded world.
- Distributions: FOSDEM: Multiarch on Debian and Ubuntu; Debian, Mageia, openSUSE, Scientific Linux, Ubuntu for Android, ...
- Development: Collaborative book authoring with Booktype; Apache HTTPD, VLC, Wayland, ...
- Announcements: The Document Foundation incorporated, No more Flash for Firefox on Linux, Seigo on Spark, Debian BSPs, ...