Hacker News new | ask | show | jobs
by matt4077 3613 days ago
Thanks for mentioning it... I always feel bad for thinking it.

Open/LibreOffice are basically the index case for what the Open Source community is really bad at: design & UI. Three explanations I see:

- The talent pool of designers working on OSS is too small.

- Design is a problem that is less accessible to a distributed, bottom-up workflow than code.

- The UI is actually 80% of the workload of a software project and therefore the area where OSS's lack of resources is most obvious.

7 comments

The UI is actually 80% of the workload of a software project

This may be true for some software projects, but I can’t see how that could be generalized to any project (even any desktop or user facing project).

Specifically for LibreOffice, the amount of work that went into that project is staggering. It’s been worked on for decades, through three different organisations (StarOffice, Sun/Oracle OpenOffice, now LibreOffice), and according to https://www.openhub.net/p/libreoffice/estimated_cost it took thousands of man-years of effort (models are lies, but I’ll believe it as an order-of-magnitude estimate). Surely not 80% of that went to the UI work.

I guess what the gp is getting at is that 80% of the work hasn't gone into the UI and it shows
Sadly, my experience is that the number of designers that are willing to contribute is small, even if lot of them are ready to complain about the state of free software.

The saddest part is that when they dare to contribute, they simply create a fast and dirty bitmap / screenshot... With a few arrows and comment here and there.

In the worst case they just provide a screenshot of a similar commercial software: "Do like them."

I've heard it so often. Also in this thread.

Most designers who want contribute are ready to spend half an hour to a couple of hours on the issue. Not more. Then expect the programmers to spend their evenings and weekends programming. Create the proper files. Solve the edge cases.

And they're surprised that the end result does not correspond to what they were proposing.

Very few are ready to spend days or weeks on a dialog (of course not in one shot). Study the use cases, go through the possible interactions, develop proper specifications.

I also noticed that many are loudly asking for nicer UIs, but very few can think about usability and user interaction.

But I've also met some really amazing designers!

Like the one who has learned enough C++ to create a running mockup and could convince the programmers that what he is proposing can be done! He has been working on it during the past year!

So, dear designers, if you want to contribute to free software, you will probably be facing small teams of very busy programmers!

And, yes, creating free software is hard and dedicated work. For everyone who is involved!

If you want to be taken seriously, you'd better deliver files that are directly usable for the programmers (as an example: high quality individual files in the right format and size(s), not a big PNG/PSD).

You'd also better deliver a document explaining the concepts behind your work, so that the next designer can build upon your work.

And the programmers will know how to use your files.

And don't forget to also provide the sources for generating those files! (If possible, sources that can be further edited with free software!)

You don't have to learn programming, but there is some serious work ahead!

And there are a few designers who managed to achieve amazing results with their contributions! It's worth it!

As a counterpoint, where I have seen designers contribute to open source projects - and where I've done so in the past myself - the push back from developers saying the designers are 'dumbing things down' or 'putting style over substance' is immense. I've even heard developers say they don't want it to be too easy to use otherwise all the noobs might start using it.

Designing in the open is much harder than coding in the open as creating and implementing a consistent ui takes discipline and consensus. The design can't be just a pretty coat of paint over the top, which is what I think a lot of people assume it is.

Also, free software is about providing choice, whereas good design is often about limiting it. If free software users wanted opinionated interfaces they'd be using iOS, not Arch or whatever.

Calibre is a great example. It's an amazingly powerful bit of software, but good grief is it ugly. It'd be fantastic to take it apart and put it back together in a way that doesn't make it look like a taxidermist's sink trap.

Calibre needs self-update more than visual polish.
I think there's another big part of this, and that's that working on the design is going to open you up to bikeshedding from all the non-designers whose work you're supplanting.

Can you imagine how galling it would be for the designers or marketing team to start sitting in on code reviews? What do they know? But here in this forum, lots of people are dumping on the ribbon interface (which is quite popular, works very well, etc). Who's going to volunteer for that?

> I think there's another big part of this, and that's that working on the design is going to open you up to bikeshedding from all the non-designers whose work you're supplanting.

Or maybe sometimes it isn't bikeshedding but legitimate concerns from longtime users, supporters or even creators of said software.

> Can you imagine how galling it would be for the designers or marketing team to start sitting in on code reviews? What do they know? But here in this forum, lots of people are dumping on the ribbon interface (which is quite popular, works very well, etc). Who's going to volunteer for that?

I'd readily admit to be one of those "dumping" at the ribbon interface as long as you believe me that it is a bit tongue-in-cheek since I'm very open about my colour weakness and lack of education in design. :-)

That said a number of the things that are said about the ribbon thing is IMO legitimate and well argued issues like the use of valuable vertical space and the lack of discoverability. (This is a general problem today as browser etc hide menus so you have to press alt to see them, thereby discriminating against non-power-users. Same goes for removing the context-menu-button on the keyboard completely hiding the feature: who thinks of just trying shift-F10 if they don't know what they are missing and google it?)

Edit: Remove stray sentence at end. Try even harder not to come off as arrogant

First explain what is wrong with the LO 5 design? I find the ribbon gui horrible. The fact that the buttons and menu haven't changed that much since ten years, so what? It does the job.

The only office gui better was the Lotus Suite one, where the layout options were much better with palets like in Photoshop, onces that you could move around.

> I find the ribbon gui horrible.

You're in the minority. Context aware UI is superior to most since you only see elements when they're relevant rather than constantly. This creates a much less cluttered interface, but without actually sacrificing any power/functionality.

Plus LibreOffice 5 lacks legitimately useful things like real-time previews of font/size changes (via hover), graph previews, text style template saving (e.g. set up a custom title style, and you can quickly re-use that style later in that same document inc. size/font/color/etc), et al.

Back with Microsoft Office 2003 I'd agree that the then OpenOffice was a legitimate competitor. And Office 2007 had some legit problems that kept that true, but by Office 2010 LibreOffice was bested and 2013/2016 only worsened its position.

I cannot see why I'd use LibreOffice on Windows today. Cost perhaps?

>> I find the ribbon gui horrible. > You're in the minority.

Not so sure about that, I personally hate it too and know of many who have trouble with it. Its main problem is discoverability of features. With menus you could walk from first to the last to find the feature you needed (even if it was grayed out, signaling that you are in a wrong context to use it), while this is very difficult to do with ribbon bar. Especially as sometimes the feature is triggered via button, sometimes it is hidden behind a dropdown arrow, via some link... In Outlook 2010 I learned to search for features on the Internet because it takes too much time to look for them in UI. Awful UI, I hate it with passion.

EDIT: MS Office vs. Libre/OpenOffice: one reason is that I can install LO/OO on OS of my choice (Linux usually). The other is that I can install whatever version I want without licensing issues and cost. Last but not least, it has a normal menu. The only downside is interoperability - if it is important for you to edit MS documents 100% like you would in MS Office, then you really have no choice.

And remember they are working with a world wide set of users. Many cultures do not like the fancy ribbon.
Part of what concerns me about the UI discussion with LO is that the choices are held up as either Microsoft ribbon-style UI, or the current UI, as if because Microsoft adopted it and there wasn't a complete mutiny, it was a good idea.

Remember that Microsoft Word is entrenched in lots of places for various reasons, and it would take a major screw up before people wouldn't continue using it. I think what happened with the ribbon is that there were somethings that were better, and other things that were not, so people shrugged and went on with their lives.

This doesn't mean the ribbon was better.

Personally, for me, the ribbon is inconsistent. The context-aware part is good, but it's implemented inconsistently. So for me, I prefer the current LO UI even as I see room for improvement.

The upshot is that these discussions of LO "being so far behind the times" strike me as odd, because they come across as assuming that change is necessarily good for change's sake.

There are more serious problems with LO in my mind, such as the equation editing markup system--it's something that used to be light-years ahead of Word with, and now is lagging significantly.

I suspect a lot of times what people are picking up on when they say that LibreOffice looks antiquated is less the underlying UX choices than the actual aesthetics of the application. The last time I looked at LibreOffice (about a year ago) it had the look and feel of an Office 2003 competitor. As silly as it may sound, it can be hard to get past that perception. A (relatively) simple design refresh might do wonders.

Having said that, I don't really like LO's actual UX choices. Every time I try to use it, I get infuriated trying to do something relatively easy. (Take setting up different headers/footers on the first page of the document. I appreciate that making these "page styles" is theoretically more flexible, but just about every other word processor I use simply gives me a checkbox labeled "Different First Page.")

It's also disappointing, though unfortunately rather characteristic of OSS UI discussions, that the only options most people here are even considering seem to be the traditional (old MS Office) toolbars and the (new MS office) ribbon.

From a UI point of view, if your best idea is to do what the established, dominant, commercial/proprietary software has already had for some time, you obviously can't ever be better than your competition. You're permanently playing catch-up.

If your goal is just to provide a free-as-in-either clone of that established commercial/proprietary software, maybe that's OK.

If your goal is to produce the best software you can to help users get their office work done, to make something better in its own right and not just because of economic or philosophical priorities, then the first thing a good UI designer is going to do is step back and start asking lots of questions about the fundamentals. What work actually needs to be done? How do users want to do it? How can office software help? Are the features and UI of a traditional word processor or spreadsheet or presentation software of 20-30 years ago still useful and relevant in 2016?

Working with textual information and tables is surely still useful, and so is collecting and combining information to form some coherent overall presentation, but office work today is also often about working with information from many different sources, and examining it in different ways, and doing these things collaboratively and in real time. There are many successful online tools based on these ideas today, but a lot of them are an attractive UI on top of simple functionality like storing team to-do lists and providing real-time chat. I'm not sure how many of these systems can cope with larger projects and more demanding work yet, the kind of thing that might be written up in a word processor as a set of 100-page reports that would form the basis for a multi-year project, or managed using spreadsheets with many tables and complicated formulae to derive the information that users need in a convenient format.

Personally, I think there's a lot of potential yet for more powerful and useful and productive office software, but not within the narrow bounds of the traditional model that the likes of MS Office and LibreOffice follow. Unless you have people looking at the big picture and being creative about how to represent information and interact with it, discussions about what colour the chrome should be or whether to use a traditional toolbar or context-sensitive ribbon probably have relatively little value. There is only so much benefit to achieve with cosmetic tweaks, no matter how pretty your icons are.

I don't know who's in the minority, but he's not alone. I hate the ribbon element.

I'm all for context aware UIs, but in today's world of 16:9 monitors, a huge ribbon wasting all that precious vertical real estate is a terrible design choice. A good model to follow is Apple's iWork, where they have a single context aware toolbar with the advanced, detailed options managed in the sidebar. For quick edits, they should use a ‘floatbar’, a UI element that appears above selected text with a minimal set of the most commonly used buttons.

If there are any designers here, you can help out by subscribing to the design mailing list.

Some use LibreOffice to maintain compatibility and consistency between Mac, Windows, and Linux. I switch between all three platforms regularly, and it's nice that LO has tri-platform compatibility.

LibreOffice also makes it easy to re-encode files, when saving, into multiple formats by using MultiFormatSave extension. It's useful for saving important documents for "future proofing" purposes [1].

Oh and yes, the cost is nice too. It doesn't hurt that I also don't like the ribbon gui.

[1] https://news.ycombinator.com/item?id=11502529

> Context aware UI is superior to most since you only see elements when they're relevant rather than constantly.

It also means both that it's impossible to see everything that is possible and that there's a hard limit on what can be possible in any context.

The former is a problem with editors like vi or emacs (there's no immediately-obvious list of all the possible actions — although once a beginner learns C-h m things being to change), but the latter is where they shine.

There's also no apparent rhyme or reason to what actions are or are not considered in-context.

Just show me what I can do and let me do it!

> text style template saving (e.g. set up a custom title style, and you can quickly re-use that style later in that same document inc. size/font/color/etc)

You can create character and paragraph styles in LibreOffice.

Apple's Pages pre-App Store does it right. The new Pages, while decried, has improved from its first iterations and is just immensely more intuitive and efficient than Word/LO. By "intuitive and efficient" I mean to the point that I've seen people organically discover and learn to use styles properly all by themselves.

LO on Mac is just alien: that gray gradient on the toolbar is terrible, and floating modals are legion. It looks fine on Linux due to GTK theme support. I can't speak for Windows. Now that's for the looks, usability is entirely something else: managing styles and setting up headers/footers/table of contents is still ludicrously complex.

Agreed, at least on Windows and Linux:

Not using latest design fad != horrible gui.

Actually there are a lot of other adjectives that can be used: normal, discoverable, unsurprising are three that easily comes to mind.

I wonder if OSS design can be fixed by holding design contests. Gather donations for small cash prizes, and have the even bigger motivator of continually hosting the designs of winners and runner-ups on the project website. Portfolio building is a big deal for a lot of designers these days.

With a handful of good design mockups, then developers have something to aim for instead of a nebulous idea of what good design is.

I don't think so.

We need designers that are willing to engage in the project and work hand in hand with the programmers.

In close feedback loops.

What you are suggesting will very likely lead to what

https://news.ycombinator.com/item?id=12218307

decided is bad design.

(Well, I don't really agree with him, but his opinion seems to be popular here).

What we need are lot of small incremental improvements based on a solid (evolving) concept, not a full rewrite each time a new UI mode shows up.

I wonder if OSS design can be fixed by holding design contests. [...] Portfolio building is a big deal for a lot of designers these days.

I suspect that would be extremely counter-productive. If you try to run some sort of design contest, and pitch it as being good publicity for the designers but not actually paying professional rates, then most serious designers will consider you a joke. They've heard every variation of this "spec work" argument before, they see right through it, and they will just consider you a time-waster. You should also expect to become a punchline on a lot of online design forums for a while, losing any credibility you might have had with other designers who didn't see the original contest.

The way I see it, if an OSS project wants to improve its presentation, it has the same two basic options as the programming side: either inspire people who genuinely value the project and are willing to volunteer their time and skills because they want to see it succeed, or raise funds somehow and pay professionals at professional rates.

> The UI is actually 80% of the workload of a software project

This entirely depends on the project. In my experience, the UI is extremely important to the success of a project, but tends to be 10-20% of total work.

And we can solve the problem by doing the work and recruiting those missing designers. When do you want to start?
Frankly, these sound like excuses. The big problem I see with FOSS and UI is that there's a lot of politcal pushback. You can search for terms like "ribbon" on the web, forums, etc and see people lash out and using childish terms like "M$" and such. Its clear the maintainers don't want a UI overhaul.

There's a lot of 'grumpy old men syndrome' with FOSS. Usability, progressive UI thinking, etc in coder led projects takes a backseat to the whiz-bang hard technical stuff. And that's on top of the lack of motivation to change the UI. "If it aint broke, don't fix it" is a common UI dinosaur excuse.

Thankfully, we have google docs, o365, etc. I think the big office suite, outside of business, has killed itself. It just didn't move fast enough, is bloaty and slow, and couldn't keep up with web technologies. I don't know anyone who uses Libre anymore. They've either migrated to the web or have an old version of Office they prefer using. I'm not sure if a better UI would have helped with marketshare, but I can't imagine it hurting.

> Its clear the maintainers don't want a UI overhaul.

You are wrong. Please see my comments in this post.

I have yet to see a maintainer of an open-source project who wasn't hopelessly excited when some UI-person took to their project and tried to do things with it.

Most programmers are aware that they are terrible at GUIs. Heck, a lot of these projects are specifically built without a GUI, so that someone else can create a GUI for it.

And if a maintainer is really opposed to it, then there's always the option to create a fork and see which version people prefer.