Public Bug Tracking and Open-Source Policy
Observer writes "Bugs in software are nothing new, but when they're discussed in the open, how do open source projects adapt policy? A major regression in the Gnome project's session manager has seen some major distributions choose to refuse to follow the update rather than drop a major feature. Between Gnome's public bug tracker and similar trackers from distributions which released (and still distribute) the buggy version, months of debate provide an interesting case-study in the way front-line users and developers interact for better or for worse. What lessons can be learned here for release planning, bug triage, and marketing for a major open source project?"
Transparency still beats all other alternatives.
Keep in mind that the end-user will not be exposed to those internal discussions, although they take place in public, open forums.
The real lesson here is that not all developers are good.
Open Source means that anyone can make changes to code. It doesn't mean that they should.
Seems like a problem I see very commonly with developers:
Dev: "The old thing sucked, so we built this shiny new better thing."
User: "Does it do everything the old one did."
Dev: "Yes! It's just that the applications don't support it yet."
User: "So stuff that I use now stops working?"
Dev: "But our new thing is better. BETTER!(tm)"
User: "So stuff that I use now stops working?"
...and on this goes. Suffice to say the user doesn't give a shit about protocols and how sucky the old system was and how awesome the new thing is. He cares about features that did work now suddenly stop, and in his eyes, your new thing
sucks more than the old one, because it doesn't *work*.
Computers, for most of us, exist to accomplish other tasks. The users really don't care about the underlying architecture, or how comp sci awesome it might be, they just care about feature parity when big chunks are replaced.
Sadly, many developers never figure this part out.
When you run an open to post bug tracker you are inundated with idiots who think a bug tracker is a discussion forum as well outright spambots. Some of the "me too" and "I think this is a major bug" posts could be addressed with a "me too" button and counter in the tracker. But..
I have a modest proposal for what we really need:
1/ cold hard cash
2/ nothing appears in the publicly visible tracker until approved by a moderator
The way this would work is when you file a ticket your credit card should have $50 deducted and the ticket hidden from view until it has been approved, if approved you should get $40 back. So if you report a crash without the backtrace or even a description what you were doing when it happened you are out $50. After paying the CC fees any 'profit' could be burned in trashcans to provide heat for the homeless, just so the moderator can not be accused of being unfair for the cash. Similar fees could be applied to ticket comments, say starting at $10 per inane comment and escalating to $100 for repeat offenders. None of these comments would ever have to make it out to the publicly visible face of the tracker, but there are plenty of people who would still keep posting at $100 a pop just to annoy the devs. Burning thousands of dollars in small bills could warm the hands of many a homeless man, and scaled up to a large number of OSS apps would help keep inflation under control.
To the humor impaired: Ok, this is tongue in cheek. My point is that once a project grows past its first few thousand users a public issue tracker becomes a liability. Real bug reports get lost in the constant barrage of junk tickets, but you can't even close those junk tickets because then you have to deal with some luser with a bee in their bonnet.
OK, I'll bite.
I don't think the submitter was knocking OSS, or advocating commercial software as an alternative. I think s/he was genuinely interesting in figuring out what went wrong here, what to do about it, and how to handle the increasingly forum-y threads that turn up on bug trackers these days (particularly on launchpad.)
"Bugs in software are nothing new, but when they're discussed in the open, how do open source projects adapt policy?
Policy adaptation is a care-requiring activity, especially if discussion in the open is involved. Closed projects may get away with customer defenestration, but open source projects are more susceptible to their developer community and enthusiastic users. How a project would adapt policy should be given a great deal of thought and dialog to ensure no one is left out of the loop.
I'm a Programmer. That's one level above Software Engineer and one level below Engineer.
But things like this are why people still trust Windows more than Linux; at least they won't randomly lose major features after an upgrade.
It's better to vote for what you want and not get it than to vote for what you don't want and get it.
- E. Debs
What is the incentive for unpaid developers to abandon their private lives to go into crunch mode developing something for some(thankless)one else? A thousand "me too" on a bug tracker or a million "+1"s have yet to purchase a cup of coffee. "Market share" and "exposure" have little value to encourage altruism in project members. But endless bitching has enormous power to discourage it.
A smart member of this project would neither post to nor reply to that bugtracker thread.
But that's only because this discussion is missing the point. The value of user-developer communication is for the fostering of ideas efforts for everyone's benefit. It is -not- a mob government to drive the project's direction, nor is it a help desk.
Flamebait? No, not flamebait. Allow me to clarify.
Fedora decided that they were going to ship KDE 4 before it was ready. I unfortunately decided to upgrade to Fedora 10. Half the features weren't there, it crashed randomly and had unexpected behaviors, and it was just unusable. I was pretty unhappy with the whole situation. Kmail still has a few regressions in it, the "system settings" is pretty unpolished, and they are still nowhere near the level of 3.5, even on 4.2. 4.2 has been the first release that's even remotely usable.
This gnome thing is just a small (incompetently handled) change in architecture that'll be fairly easily fixed. The KDE clusterfuck was on an entirely different level.
And I like KDE. I used to be a KDE devel. I just am very unhappy with how both they and Fedora handled it. Talk about a regression...
For linux tips: http://www.linuxtipsblog.com
Which is change management. When and how do you make needed changes to code? Like it or not, most developers have absolutely NO skills in actually managing a project of this sort, and have none of the related process/management skills. Some do, but most don't.
What most projects REALLY need is a small committee which handles policy changes. Do we want to refactor in the middle of a stable branch? What are the policies involved in releases, etc, and actually enforcing this sort of thing. Then you have a much larger group of people who do development and get pushback from this management committee when they don't play by the rules. The management committee should have the power to grant and revoke commit access to the source repositories. And really that access needs to be earned.
A third, related question is support lifecycle. How many older versions do you support?
If all of the above are well managed the developers can build better products, but you can still properly manage legacy users and general use of the software.
LedgerSMB: Open source Accounting/ERP
But at least you can do that, even if it's not the most desirable option.
You can do it if you have the time and resources needed for the job.
In that respect, "software freedom" is rather like "freedom of the press," something to be celebrated on the Fourth of July.
It's practical significance is for those in the trade - and even there it can be more symbolic than real.
There is always a reason.
You talk about an upgrade. What were you upgrading?
Hardware? Software? Third-party driver?
If the re-booting solves the problem it strikes me that the OS is doing it's job on start-up. Unloading the trash. Resolving conflicts. Working towards a clean launch.
A major regression in the Gnome project's session manager has seen some major distributions choose to refuse to follow the update rather than drop a major feature.
I think losing that "feature" is a feature in itself.
I'm currently using xfce, and the fact that the session manager thinks it works annoys me quite a bit. I have in fact turned it off, but it still chooses to open a bunch of firefox sessions before wlan is up (and NetworkManager is querying the password in the background).
Another useful "feature" of session management is opening up 17 terminals on bootup. This feature just needs to go. I'm not a big fan of Gnome, but they got this thing right ;-).
Save your wrists today - switch to Dvorak
I'd rather have ext4 than XFS!
It was just one of those nasty intersections between real-world usage patterns and and unexpected consequences of an intended feature (isn't the whole point of extent-based filesystems that we can do stuff like delayed allocation?) Sadly, I guess Canonical can't yet afford to pay to have hundreds of users sitting in labs typing randomly at PCs like MS can.. but OTOH, isn't a beta release a good substitute?
And let's not forget, Ted produced patches PDQ. He had a bit of moan at the same time, but he did produce patches. That ranks pretty low on the prima-donna scale in my book :-)
I'm going without session management for about 6 month now and I really didn't notice. Gnome session 'management' has always been broken, at least for some years imho.
Isn't that how it goes? Some things break, more get better. Next ubuntu release is just around the corner anyways.
Do you remember pulse audio, upgrading to 64bit, how long it took for utf8 to actually work out of the box, or this one issue with redhat and kgcc?
There is no easy way, progress always creates problems.