User: Password:
|
|
Subscribe / Log in / New account

The GNOME project at 15

The GNOME project at 15

Posted Aug 16, 2012 5:12 UTC (Thu) by jmspeex (subscriber, #51639)
In reply to: The GNOME project at 15 by hp
Parent article: The GNOME project at 15

(quick background: I started using gnome around version 0.13 or something, switched to KDE3 for a while when gnome2 came out, went back to gnome2, then switched to xfce when gnome3 came out)

About gnome 1, all I can say is that I can believe the code itself might have been a mess, but from a power user's perspective, I found it a lot more user-friendly to click the "advanced" tab of a config dialog, then to run gconf-editor like I had to do to configure gnome2 correctly for me.

Now, what I think might be the main issue with gnome3 is that it kept using the name "gnome" when it had nothing to do with what people knew as the gnome desktop. It seems like if developers wanted to do something so radically different, they should just have called it a different name. At least there wouldn't be the implicit statement that the new desktop environment is a continuation of the old one.

That being said, there would still be the issue of "why are all the developers abandoning the desktop we're using". That one seems unavoidable and is the main reason I'm unlikely to go back to gnome3 even if one day it bring back support for the features I used in gnome2 (and now use in XFCE). Given the track record, it just seems highly predictable that in a few years, gnome4 will be released and that it will not look like anything we're used to using. As a FOSS developer myself, I understand that gnome developers don't owe me anything. That being said, I'm a bit disappointed that the main desktop environments (gnome, KDE) are moving away from the power user work flow of many of the Linux (the whole system, but just the kernel) developers use.


(Log in to post comments)

The GNOME project at 15

Posted Aug 16, 2012 7:42 UTC (Thu) by ovitters (subscriber, #27950) [Link]

moving away from the power user work flow of many of the Linux (the whole system, but just the kernel) developers use.

Various designers have asked to define workflows. The term power user is pointless to them, because it doesn't explain the workflow at all. If the way you do things is not understood, then as a result, when things are changed your way of doing things might become way more difficult.

Note: With workflow I mean a bit more than just a list of steps. Or saying you want a certain option.

Though I agree that if you don't like the direction, it doesn't make sense to use it.

The GNOME project at 15

Posted Aug 16, 2012 15:51 UTC (Thu) by jmspeex (subscriber, #51639) [Link]

Maybe I shouldn't say "power user workflow" but "power user workflows". When you spend 8+ hours a day on the same machine, you want it to work exactly right for you. Personally, I've always (since fvwm1 15 hears ago) used 12 virtual desktops with focus-follows-mouse, minimal (or auto-hide) panel, and a bunch of other options that turn "average users" crazy if they attempt to use my machine. Most other developers I know have similarly "crazy" setups, and they're all different from mine. There isn't a single setup that works for everyone, but if you make it customizable enough (gnome1 was, gnome2 sort of got there 2 years after being initially released), you can support a significant fraction of these power users workflows. However, if you target the system at "the majority of computer users", then considering that the majority of users doesn't even run Linux, you end up in a situation where most of the *existing* users don't like it.

The GNOME project at 15

Posted Aug 16, 2012 16:23 UTC (Thu) by hp (subscriber, #5220) [Link]

I don't think this is the right framing, honestly.

I would put three layers in the onion:

  • Old-time super-die-hard Linux users (for example learned Unix pre-GNOME/KDE)
  • More casual Linux users who tend to keep the defaults and also use other OS's pretty often
  • Mainstream (not using Linux now) (this category conflates all kinds of very distinct people)

First assertion: Many people in the first category would say that "most" Linux users are in that category. My belief, however, is that this is wrong. By numbers, most Linux users are in the second category. It's important to also realize that most Linux users don't join Linux forums or read/comment on LWN or on mailing lists.

It's a mistake to go by "people we know" because we tend to know people like ourselves. For example, even within "people who use Linux," "people who hack on the Linux kernel" or "people who learned their workflow on fvwm" are pretty atypical in habits and worldview.

Second assertion: GNOME 2 and 3 are both aimed foremost at the second category (current Linux users primarily), with substantial concessions/consideration for the first category. They may dream of and talk about the third category, but very little actual action (rather than words) has ever made progress there.

Contrary to corbet's original article, I think most of the flames around the desktop are between the first two categories, and most of the rationale for controversial desktop changes arises when thinking about the second category. The third category is mostly hypothetical, and even when people talk about it, they tend to assume those users are much more like the second category than they truly are.

So that's my opinion (I think based on decent experience, but you can choose to believe it or not).

Obviously I'm oversimplifying the categories a little bit and you could get arbitrarily precise. But I just disagree with the framing of "existing users" vs. "mainstream" because I think the fight between the first two categories of existing user has always dominated, and in fact that fight has actively blocked efforts to do anything toward the mainstream. The middle category is portrayed as some kind of crazy dumbing-down radicalism already, so going so far as to make the desktop _actually_ usable to _regular_ people would be NUTS. ;-)

The GNOME project at 15

Posted Aug 16, 2012 17:11 UTC (Thu) by hp (subscriber, #5220) [Link]

If you start to subset the "mainstream not using Linux now," you could pick maybe one of the _closest_ groups to existing users: "developers who use OS X instead of Linux."

Even efforts to appeal to those developers on OS X would show up as "more radical" than historical GNOME efforts, GNOME 2 for sure. GNOME 3 is maybe trying to push this boundary.

The Overton Window (http://en.wikipedia.org/wiki/Overton_window) in the Linux community relative to desktop design is really in an extremist spot relative to the wide world, basically, and always has been.

In general my feeling is that something separate from GNOME is the way to go for true mainstream users: things like Android. But a lot of GNOME and Linux technology could be useful of course.

In the meantime, again, I just don't agree that the flames are power user vs. mainstream. They are about degrees of hardcore within existing Linux users.

The GNOME project at 15

Posted Aug 17, 2012 0:01 UTC (Fri) by jmorris42 (guest, #2203) [Link]

> In general my feeling is that something separate from GNOME
> is the way to go for true mainstream users...

I'd like to disagree. I admin a lab environment in a public library. It is running GNOME2. It works, the sort of general public you get in a rural public library setting use the machines with few problems. I get the occasional complaint when they can't install some Windows app, but no lab setting would allow that sort of thing even if it were Windows PCs. Everybody is basically happy.

I want you to imagine putting GNOME3 into that setting. Now I see one of two possible answers you can give:

1. Sure, that is a great idea. I'd disagree but ok we can disagree. Heck, if you or one of the current core gnome devs actually said that I might even be tempted to run the experiment and find out. It wouldn't be that hard to convert a couple of machines, put a 'try this, it's new!' sign on em and collect feedback.

2. Or you have my reaction, which is "Are you nuts?" At which point you might want to ask yourself whether that just might be a problem.

Every time GNOME3 comes up somebody says "sure it brought my work to a halt for a week|month|whatever but then I figured it out and now love it!" Just can't see telling that to random people off the street who just want to use a computer for an hour.

So we now have in GNOME3 a UI that while a few users like it, most existing users are (at best) indifferent to it and new users will be so confused by it that most won't ever find out if they like it.

The GNOME project at 15

Posted Aug 17, 2012 1:55 UTC (Fri) by hp (subscriber, #5220) [Link]

What I'm thinking of when I say "something like Android" is that if you wanted to get millions of new people to become users (something the original article here talks about), you'd have to do something that was more green field. Few people are really interested in changing their desktop OS - what's the benefit? Nothing sufficient to offset the hassle. But lots of people were interested in trying smartphones and kindles and tablets.

Look at how much more effective iOS was as a strategy for Apple than OS X.

I agree with you that if you're setting up a computer lab for occasional walk-in use it's nice to just be more or less like Windows. Or just install Windows. GNOME 3 doesn't seem like the ideal design for that. But I don't know how the current developers think about this use-case.

The GNOME project at 15

Posted Aug 18, 2012 15:43 UTC (Sat) by bronson (subscriber, #4806) [Link]

But aren't those library users exactly the sort of "everyone" that Gnome 3 is targeting? That's what I thought based on previous lwn comments (could certainly be mistaken).

If Gnome 3 isn't for the old-timers like me, and it isn't for current osx/windows users, and it isn't for school computer labs or corporate desktops, and it isn't for library walk-ins, then who is it for? Honest question. I'd love to know who the gnome project has in mind when evaluating upcoming changes.

The GNOME project at 15

Posted Aug 18, 2012 16:03 UTC (Sat) by hp (subscriber, #5220) [Link]

I wouldn't feel comfortable answering on their behalf, but I think it's the key question for any software project. I'd say this is the place to start when discussing UI decisions.

The GNOME project at 15

Posted Sep 1, 2012 17:04 UTC (Sat) by rich0 (guest, #55509) [Link]

It would seem to me that it is mostly targeted to things like netbooks or other small laptops, or tablets. The netbook platform actually makes sense, and from what I've heard people running those love Unity or Gnome 3.

Tablets just don't make sense, since almost nobody replaces the OS on them with something different. About the closest I've seen is maybe running something else in a chroot, without X11. Getting Gnome on one of those is a real pain anyway with all the proprietary drivers and great variation in hardware. They aren't like your typical PC motherboard where no matter what you can at least get the thing into VGA mode using the same IO ports you'd have used on a 386.

The GNOME project at 15

Posted Aug 16, 2012 21:33 UTC (Thu) by jmspeex (subscriber, #51639) [Link]

Well, first I'm not sure how you define "Old-time super-die-hard Linux users" vs "More casual Linux users". Like most other FOSS developers I know or have met at various conferences, I consider myself as neither "Old-time super-die-hard" (I even use an IDE rather than vi/emacs), nor merely a "casual user". I spend more than 8 hours a day on a Linux machine and like to have it configured for my needs. The original gnome/kde releases were great for me because I no longer had to edit config files. Now, I don't know what fraction of Linux users are developers like me, but it seems like there are enough for a project like gnome to pay attention. And even if FOSS developers were only 1% of Linux users, making a majority of them unhappy is still IMO not a good idea.

I don't think anyone's really complained about gnome trying to do something that "casual Linux users" like. The problem was the part about removing a large number of features that were previously used by developers or what you might call "Old-time super-die-hard Linux users". I sincerely thought gnome had learned from (what I consider to be) its mistakes in gnome2, but it seems like gnome3 went even further. Regardless of whether you think the new directions are good or bad (and you know my opinion on this), I have so far found very few examples of software projects benefited from "starting from scratch with something new". And of course, gnome is far from being alone in what I think is best described as the CADT model.

On a different topic, I think I'll actually try an experiment with gnome3. My wife has been a "mainstream Linux user" (she mainly uses OO.o and Firefox, and would still be using Windows if it wasn't for me) for about 5 years now and has been using gnome2 all that time. I'll see what her reaction is when I expose her to gnome3 and how long it'll take her to figure out how to get things done. Any guesses based on previous studies?

The GNOME project at 15

Posted Aug 16, 2012 22:10 UTC (Thu) by hp (subscriber, #5220) [Link]

As I said, the categories are oversimplified. My main point is that I think the original article shares a common misconception that the fights here are about "most current Linux users" vs. "hypothetical mainstream users." I think the fights are almost entirely among people who already care about Linux, and are using it. I think GNOME developers make most decisions with an eye to people who care about and use Linux already (especially when judged by actions and not words).

I'm not someone who had a hand in GNOME 3 so I don't know the rationales. Nor have I followed most of the flames about it, nor been immersed in Linux user feedback lately, other than myself. So I've been trying to stay out of any debates about how GNOME 3 works in specific. I don't have a lot to say other than "it works well for me" and I know I do a lot of things differently than most people.

From general knowledge I would expect that anyone switching to GNOME 3 will hit speedbumps and initially be annoyed. I'm sure your wife would be. This is the cost of any big change. Whether the change is worth it in this case requires knowledge that I don't have.

It's easy to say CADT but it's also easy to point to countless technologies that became old and stale and were crushed by newer replacements. There isn't some easy guideline, like "never" or "always" change things. "It depends."

fwiw, I know enough about the tech to tell you that GNOME 3 is not from scratch by any stretch. GNOME 1.x -> 2.x preserved a lot less code. GNOME 3 is essentially a new UI in the window manager (but keeping a lot of existing tricky WM logic from Metacity), dropping some deprecated stuff, etc. What changed is very visible but not necessarily that huge code-wise. See also http://www.joelonsoftware.com/articles/fog0000000356.html
The issue is that the pixels changed.

I'm not trying to tell anyone that GNOME 3 will definitely succeed. There are just certain arguments about it that I think are wrong.

The bottom line is that success or failure, just as with GNOME 2 or anything else, will come down to detailed judgments about specifics. The developers will have to get it right, or not.

I wouldn't venture to say whether it's on the right path, on balance, without better visibility and immersion in the strategy and the feedback. For GNOME 2 I had the daily feed of raw information, now I just have my own usage and occasionally reading an article like this one or whatever.

The GNOME project at 15

Posted Aug 16, 2012 22:33 UTC (Thu) by hp (subscriber, #5220) [Link]

Also of course, my first post on this article says why I don't think "GNOME should learn from GNOME 2" is right. Unless you think the main goal of GNOME 2 should have been to avoid flames. GNOME 2 became much more popular than many desktops that did _not_ get flamed (as much). Taking a lesson away from GNOME 2 like "we shouldn't change stuff" or "regressions are never good" would be historically wrong, because either of those lessons would have doomed GNOME during 1.x -> 2.x. Knee-jerk "CADT bad" would have doomed GNOME too. Truly targeting mainstream users instead of Linux users would have doomed it too. There are lots of ways GNOME 2 could have gone wrong. But flames were non-fatal.

It doesn't mean that if you're getting flamed you're going to succeed, but it does mean that you _might_ be right to do something that gets you flamed. You also might _not_ be right. That's the hard part. One needs to figure it out.

The GNOME project at 15

Posted Aug 17, 2012 0:38 UTC (Fri) by jmspeex (subscriber, #51639) [Link]

It seems like you're assuming that software cannot change without a rewrite. Just look at the Linux kernel and compare what it was at the time of 1.0 vs 3.0. The two versions have nothing in common. Yet, nobody ever started a rewrite of the kernel and the only regressions that occurred were either unintentional (i.e. bugs happen no matter what) or were about hardware stopped using 10 years earlier. It's been an evolution and that's how you keep your users happy. It took years for gnome2 to re-implement many of the features that gnome1 had. Some It's not clear to me whether these features were always meant to be re-implemented or were only re-implemented because of angry users, but the bottom line is that for gnome2, "change" resulted in several years of being stuck with something worse. Not to mention that gnome1 had stopped improving long before gnome2 was out. So far, gnome3 appears to be the same. gnome2 development slowed down long before the gnome3 release and developers are still re-implementing features that were "lost" in the rewrite (again don't know how much is from "it took time" vs "we changed our mind and re-implemented the feature").

The bottom line is that this development method (and KDE is just as guilty as gnome) leads to long periods where the software is much worse than it should be. So by "learn from gnome2" I meant "learn to avoid these long periods of regression". I now realize that "it's a feature" and that even if gnome3 ever becomes as usable for me as gnome2 was before the "rewrite", it would only be temporary because by the time it works for me, all developers will have moved to gnome4, which will break the features I use.

I especially don't see how it needs to be that way. You can implement a gnome-shell like feature on top of gnome2 and make it optional (or even by default, I don't care). You can make the wm evolve without breaking everything. And more importantly, you don't have to make all these changes at once and you don't have to ditch the old behaviour. This means 1) people have time to get used to the changes when they like it 2) there's a chance to react when you're going in the wrong direction, and 3) you avoid bad regressions.

The GNOME project at 15

Posted Aug 17, 2012 1:43 UTC (Fri) by hp (subscriber, #5220) [Link]

It sounds good, but if it were that simple... There's something hard about it. Nobody is just trying to piss people off.

If nothing else: there are very few developers doing quite a lot.

I don't think the kernel is directly comparable; one reason is 100x more developers, but another reason is that evolving UI is a different problem from evolving code. GNOME 2 to 3 evolved the _code_ quite gradually and smoothly with no big rewrite.

I'm trying to think of examples of UIs that gradually evolved between two pretty different states like GNOME 2 and 3, and having trouble. But maybe there are some interesting ones out there. I guess Apple is currently doing some sort of make-OS-X-more-like-iOS-in-each-release thing according to the media but I haven't tried it out myself.

The GNOME project at 15

Posted Aug 17, 2012 5:44 UTC (Fri) by jmspeex (subscriber, #51639) [Link]

I understand that developers aren't *intentionally* pissing people off and it's just a side effect of something else. Also, I understand that making code evolve isn't easy, but rewrites tend to be even worse -- even if it looks simpler because "hey now I can understand all the code". UI or not, I can't think of any project (though there may be a handful) that really benefited from a rewrite. The only viable way I can see is when you have the resources to keep maintaining the old version until the rewrite is not only released, but achieves feature parity with the (still evolving) old version. This is what Microsoft did with NT and I'm sure it wasn't cheap.

In the end, I think the problem isn't even just for users, but for developers as well. From 1999 to ~2005, I wrote and maintained an application that had a gnome front-end. All I can say is that it was a rather painful experience. The API itself was OK (except for being C rather than C++, but I could deal with that) and it didn't take too long to get something working. The real problems came with maintaining the code with ever-changing APIs. Part of that was the gnome2 transition, which not only changed how some widgets behaved (it's OK for a major release), but also completely removed some widgets (GnomeMDI for example, which was supposed to be "the right way"). Even after the transition, APIs would keep coming and going. Oh, we're no longer supposed to use the gnome canvas, there's something new instead. Need graphs? Use GtkPlot, no use Guppi, oh wait we rewrote it and Guppi2 is much better, no but Guppi3 will be... You would never know which API you could trust to not end up being deprecated in 6 months. I stopped being involved around in that project around 2005, at which point the other main developer was working on a Qt frontend. (I still work on FOSS, but fortunately I haven't have to work with GUIs since then)

The GNOME project at 15

Posted Aug 17, 2012 6:54 UTC (Fri) by hp (subscriber, #5220) [Link]

That sort of code and API sanity (avoid giant rewrites, keep the API stable) is far, far better these days than back then.

In OSS one can only do so much. The libgnomeui/GnomeMDI stuff took a long time to reach consensus. So for example, in January 2001 I was apparently telling people not to use it:
https://mail.gnome.org/archives/gnome-devel-list/2001-Jan...
But, someone else would have told you to use it at that time.
It just depended on who you asked. There wasn't a dictator to decide.

There's more consensus/process/cultural-norm now than there used to be.
For example, a list of "official" API: http://developer.gnome.org/platform-overview/stable/

I was surprised by it just now, but libgnomeui appears to still be on my Fedora 17 system. So the ABI remains to this day.

The GNOME project at 15

Posted Aug 17, 2012 16:17 UTC (Fri) by Company (guest, #57006) [Link]

So, I've been thinking for a long time now that GNOME's problem is marketing. Most platforms have worse software than GNOME, the engineering is ok. Translations are world-class, but marketing? Oh My Goodness.

Now, if I look at those 3 groups you outlined, they fall into 3 categories when they talk about their OS: The first group writes blog posts and articles and even builds whole websites around this, and the other 2 groups just go "What's an OS? Why should I care?"

That in turn means that you have to market your OS (at least on technical grounds) exclusively at the first group. In fact - and that's what Fedora found out - if you rely on contributors, they will only come from that first group. So I would argue that the other 2 groups do not matter at all for the success of GNOME.

But what has instead happened in the GNOME world is that we use the silent majority (your 2nd group) as an excuse whenever someone complained. When someone complains about the removal of their favorite feature, we tell them "it's confusing for the majority of users" - usually without being able to back that up. I have not seen any numbers at all. We don't even think about collecting any data.
And why would we? We convinced ourselves that we are the spokesperson for the silent majority, so we know what they want. And without data, we can never be wrong. Because even if all the people on the Internet complain to us in unison (ie your first group), we know we're still speaking for the huge majority. How could we be wrong?

The GNOME project at 15

Posted Aug 17, 2012 17:46 UTC (Fri) by hp (subscriber, #5220) [Link]

A few thoughts that occur to me reading that in no special order -

I'm not a believer that decisions can be made mechanically through data collection. I do believe that the right kind of data is an important input into judgment and experimentation.

I think it's wrong to say there's no data now. If a developer is reading feedback, reading bugs, looking at how everyone around them configures their desktop, running the occasional user study, talking to customers if they're at a company, using the software themselves, etc. then they are getting a lot of data. It isn't a "study" but there's still a lot of basis to identify and figure out problems.

When I was actively maintaining metacity then I had FAR more information about how it could work and why and what kind of people would like solution A vs. B, than I currently have about gnome-shell or other WMs. If I were suddenly maintaining some other WM today, I'd have to spend months immersed and learning before changing anything much.

The point is that as a maintainer, I felt I had lots of decent information to base decisions on, and as a not-maintainer, I don't feel I have that information anymore.

There's this fantasy we all sometimes have that it can be a science and/or the answers are clear and cut-and-dried and/or that the developers could "prove" to us that they are right. But it's just too complex for that.

The alternative to "completely mechanical" is not "completely random/subjective" though. There's still a lot of room for good or bad judgment, based on good data or not. "Judgment" is not the same as "subjective opinion."

More data can always be good (with privacy protections in place, wouldn't it be great to auto-collect from all Fedora users which config options they had changed and what desktop they used, for example? that would be handy and 10000x more valid than a web poll).

Again: I'm not trying to get into whether project XYZ's judgment about topic ABC is _correct_. Judgment can always be wrong. What I don't agree with is what many imply, that judgment is the wrong _process_ and could be replaced with something more mechanical.

On the specific issue of whether "the silent majority wants this" can be an all-purpose excuse: it certainly could be used that way. When I was daily immersed in metacity-related data, I think I had a reasonable basis to know what was of general 80%-ish interest and what was one or two people or what was 15%-ish of people. So I would think the current GNOME maintainers also have some decent data on that front. But _could_ they ignore the data, use "silent majority" as an excuse and not really think it through? Of course they could. Do they? I don't assume that by default.

Re: marketing.

Perhaps the make-or-break marketing thing for Linux desktops is to be included in distributions, especially by default. If GNOME were a for-profit company and I were CEO, then getting Ubuntu back on board would be on the top of my list. Distributions are where the ... distribution ... is.

Re: "confusing"

A little tangent ... lots of times "confusing" is not a good way to think about UI-goodness. I say it too, but "relevant" or "appropriate" would be better metrics.

One reason is that "not confusing" does not mean "good" (problem = "I really quickly understood how this works, but I don't want to do what it does"). "confusing" does not always mean "bad" either ("oh, now that I get it, this will save me hours of time"). The "confusing" dimension gives little direction. (This is a limitation of "how long to do the task" user studies...)

Another reason is that "IQ" or even "computer savvy" isn't the relevant distinction among the groups. It's more like "what previous UIs do I have experience with" and "how much do I like to mess with the computer vs. focus on other things." I really dislike narratives around "power user"/"dumb down" because they imply some type of progression or ranking, when what you really have are people who care about different priorities or have a different set of life experiences. To get a relevant/appropriate design you have to think about that.

At one point long ago we were trying to make the "tweak tool" UI be a "people who are used to Unix" UI, like "Unix options" or something. That had some other pros and cons I don't remember, but one "pro" is that it makes clear what the UI is supposed to achieve, while "it's for power users"/"it's for confusing stuff" really does not. If it's framed positively like that then you can start saying "what are all the things Unix users will be used to," etc. and try to get that stuff presented nicely.

The GNOME project at 15

Posted Aug 19, 2012 17:24 UTC (Sun) by sramkrishna (guest, #72628) [Link]

One thing a lot of the big projects have like Fedora, Ubuntu and Mozilla have is a community manager who takes on the flames and tries to do rebuttal and put a good face on things. Answer the common questions as patiently as possible. bkor has been doing some of that, I've been doing some of that.

I was quite active in the "grumpy editor review" post some time back.

Of course, our efforts could have been a little more aggressive. I agree that marketing could be a little better than it was, but it wasn't like that there was no efforts made. Marketing team tried to do best there with presentations at conferences, giving out live cds, participating in social networks. There has been a lot less negative feedbacks on the social networks than through older channels like slashdot (which is a loss), lwn.net etc.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds