To make it clear: I am not against Open Source Software, in fact, I am for it. But I am increasingly frustrated with Open Source software written by hobbyists; hobbyists who write a specific application or library because they need a specific function out of their applications, for their own needs and only their own needs. Here’s what happened:
UPDATE: Some explanation here. Make sure you read it first.A few days ago I was in the middle of a cyclone in the desktop-devel-list gnome mailing list asking the gnome devs to include the Gnome users in the process of evolving Gnome (because currently feature requests are getting very much ignored on their bugzilla). I just wanted the Gnome users to be asked (whatever the way, not just by using a poll) what are their most needed features and having the Gnome devs implement the ones that makes sense to implement. This way, more users would be happier about the apparently “closed” nature of Gnome’s development.
I got the answer I expected from the Novell/Sun/Red-Hat people: “regarding market research, we care about it only when happens from our marketing department and to our customers”. They don’t care about the “generic” Gnome user. That’s ok. Understandable. These guys have a business to run.
However, I was not happy from the answer I got from the Gnome developers who don’t work for a Gnome-related corporation:
“A feature will be implemented if and only if there is a developer who wants to implement it” (it was later mentioned in the discussion that this is if the developer actually has such a need himself for the feature).
I do not like or agree with the above statement, because I see software as simple tools. Only good tools can ultimately succeed. And I want Open Source to succeed.
Tools are meant to do what people need to do (integrating them after careful consideration without bloating the platform, of course). If the Gnome devs completely cut off their users in such a way, I see no reason why anyone would would still want to run Gnome. Their voice would never be heard because the corporate developers don’t care about their kind, and the hobbyist developers don’t care anyway. And that’s the reason why many Gnome users left the platform over the past 2 years: closed development cycle. There is a real community problem here, and the thing is, the gnome devs pretty much agree that there is one but they don’t seem to care to do something about it. For example, the No1 Gnome feature request, a menu editor that actually works properly, is still not realized after so many years. And the decision for the spatial Nautilus that created an uproar to the Gnome user community (users had to wait 6 months to get a checkbox on the preference panel to get back to the Classic View instead of having to go dirty with GConf) was pretty much taken single handedly by Red Hat.
Sure, not every developer is like that. There are many other OSS developers who actively ask for feedback. On GnomeFiles.org I see third party GTK+ developers asking for feedback almost everyday, and as a user, this really makes me feel good about their applications. But that’s not the norm and definitely not the norm with Gnome. Open source devs generally only code whatever they personally need, and that’s a huge difference from a commercial application where the “customer” is being asked repeatedly what features he/she needs in the application.
You may argue that in the second case you pay real money to get such support, but in my book, engineering is engineering. In our article yesterday about “The Ten Worst Engineering Pitfalls” by Keith F. Kelly, on the No2 spot you will find this: “2. Basing the design on your own motives rather than on users’ needs.” So, no matter if something is developed for OSS or for commercial reasons, the principle of engineering remains the same, because in both cases, the software is released out there to be consumed by [innocent] people. So in both cases, there is some responsibility on what the user would expect out of a given application and in the case of Gnome, there are a few millions of users that developers should take into account. If these developers really don’t want user feedback, they should close down their bugzilla, stop offering their software freely (only use it for their own needs), stop sending press releases out and stop asking for donations on their front page. It’s as simple as that.
If the “plain user” entity in the OSS world is such a taboo why the hell would I want to use OSS software? Just because the code is open? I don’t personally have any real use for the source code (and most normal users don’t either). I don’t do C anymore (in the case of Gnome) and I can’t possibly pay $100-200 per hour to a consultant to add features for me. All that “the source code is open, send me patches” it’s all looney-baloney for the vast majority of users. However, I wouldn’t mind at all paying about $30 per year to a big project like Gnome, but get assured that users aren’t cut off from its development process (the current donation scheme does not take care of this).
Red Hat’s Havoc Pennington & Novell’s Jimmac suggest that users write an analysis and test cases of a feature request the user wants to see implemented, because this way you might get the developer motivated to actually implement it. The problem I see with this is two fold:
a. Not many people have a clue how to write a test case or use Gimp/Photoshop to create a mockup to illustrate their point. They can only quickly describe what they need, and that’s that.
b. Normal users don’t use bugzilla. Only power users & developers do. Besides, no one likes spending time to register.
It’s the project itself that needs to do the right moves to reach its audience and take a pick on their problems, not the other way around. For example, Apple has a very simple feedback page on their web site that doesn’t require registering (as opposed to bugzilla which is very technical and requires extra thinking) where “normal” users can send, well, feedback. Apple developers use Apple’s bug reporting page on their developer’s sub-site, but plain users just have a form with few straight-forward fields to write down their gripes. Problem is, OSS developers don’t like anything that’s not filed on their bugzilla (“if it’s not filed, it doesn’t exist” they say), but point of the matter is, the user should be the center of attention and incovenience-free, not the developer.
What I like to see, is some market research. Approach all kinds of users, put their gripes in line, make a note of their features they really need and evaluate them. Then, create a project plan and distribute the tasks that need to be done to your developers and make sure they deliver what they must deliver. People will say “that’s not how OSS works”, but as a user, I don’t really care how OSS works. I care about using software that’s been properly developed taking users into account rather than purely developers’ needs. Be careful: I am not asking the OSS developers to implement every little thing that’s asked out there, I am asking them to simply take users into account and get an idea of what the whole of their userbase needs. Extracting useful information from the mass will be difficult, but it is achievable if the right resources & infrastructure are into place.
I personally find it “deteriorating” for any user to use Open Source software made from such ‘lone’ developers and not by a company which specifically asks for feature requests or does market research. It would be like the user does not respect him/herself by using a tool that does not do all it could do or all things the user needs it to do (please note: that’s in the cases where the application indeed does not do everything the user needs — other OSS software are really rich already, e.g. emacs, apache, postgresql etc).
To me, software is a tool, nothing more. I am as practical as it goes when it comes to computers. I don’t idolize them and I don’t have a political ideology about software or hardware (and in fact, I personally take pity to anyone who does — there’s more important things in this world than to be political over bits and bytes).
If something is open source, that’s cool, it’s a meta-feature that the closed source apps don’t have, and I welcome it and I embrace it. But when it comes to software written by hobbyists who don’t want to implement anything apart from what they personally need, and systematically ignore their users (apart for their crashing bug reports, which is the only thing that they seem to need them for), I refuse to use that software, because I respect myself and my choices. I prefer to shed down the right money for the right commercial software (open or closed), than to use half-baked, half-implemented OSS software made by deaf developers.
While this might not be a huge problem for small time applications, it is a big problem when a project that’s used by millions has the same attitude towards its users. It’s disappointing, to say the least.
If you are not happy with the way OSS is given to you for free – why don’t you choose a selling company to give you support? Why don’t you hire a smart OSS developer to implement the features you like to see / fix the bugs which annoy you?
Remember the sentence, that holds for several stories in life: You get what you pay for!
I have to disagree with this article. The base assumptions made seem to be flawed in many respects.
1) What is a user? A user is someone who uses the software. However, grouping “users” into one class is actually damaging to FOSS. I’m a user. My friends are users. So tell me, if I want feature X, but they want feature Y, who’s right? If feature X makes feature Y impossible, or vice versa, which feature is more important? If one of the features makes bugfixing, maintanance, and backwards compatibility impossible, does it matter if more people want it?
Case in point: Spatial Nautilus. I have always preferred spatial browsing. As such, when Nautilus went to spatial mode as default, I hopped with glee and danced a merry little jig. Other, more vocal, people, weren’t happy. But both groups, those that preferred and those that did not, were “users.” Eventually, a compromise was made, pulling the behavior out of the gconf files and into Nautilus itself.
I can almost guarantee that in the list of “15-20 features” that Eugenia has (I haven’t managed to see them yet) I could find at least one that I don’t agree with. Does that make it any less useful to her? No, it doesn’t.
2) Havoc and the other GNOME developers are not evil scientists with a mind-control sattelite. This goes for any FOSS project manager. They cannot point to a developer and say, “Code this.” This isn’t a job. Said developer can simply walk away from the project and not come back.
A FOSS developer will pick up and prioritize what they code on, because they’re first and foremost human beings. They, like everybody else on the planet, have finite time and resources. If one bug affects 500 users, and another affects 5,000, you can bet they’ll work on the bug that affects 5,000 people sooner than the bug that affects 500.
Yet, when they do, those 500 people will band together and shout outloud how unfair it is. They’ll circle the wagons and scream about how the developer doesn’t listen to the “users.”
Same goes for features. I’m sure that if you were to expand the wanted feature list to all the users of GNOME, you would be paralyzed with the inability to do anything.
A project maintainer MUST be able to ignore users. This is true whether it’s FOSS, Microsoft, or Apple. You cannot please everybody all the time.
3) Being part of a community means being active. Is it really to much to ask that people write and spend time on a use case or at least present, in some coherent manner, why feature X is the greatest thing since sliced bread?
“Of course it is! Us users don’t have the time/skills/resources!”
Again, not to stress the point too much, but there’s a finite amount of resources for everybody involved. Whenever a developer is working on adding feature X, bugs A, B, and C aren’t being coded on. Time spent on trying to design, implement, test, code, re-implement, tweak, and finalize a feature takes away from the total amount of resources that the GNOME Project as a whole.
And that’s if the developer gets the design and intention of the feature right the first time. If a developer were to slave themselves to a vague feature suggested by a user, then it would be design, code, test, debug, re-design, code, test, debug… etc. until the user was completely satisfied. It’s not efficient.
4) Going back to #1 & #3, a user that has no technical background cannot understand how easy/hard it would be to implement that nifty feature. If they’re lucky, maybe it can be done with a few lines of code changes somewhere. If not, it could mean having to rewrite/create an entirely new library just to handle that one feature.
Elitist? Yes. It is. Not everybody has a technical background. Just like not everybody has a criminology degree, or a medical background. I, like everybody else, am not omnipotent, and at some point, I have to accept the fact that somebody out there is going to know more about me in a given subject.
The developers and contributors to the GNOME Project know the system inside and out. They work on it every day. They’ve spent time studying it. In the end, they’re the only people who can say whether feature X can easily be implemented or not.
It’s also because of this that voting for features is a great way to guarantee that the software will break or become an unimaginable mess. It’s handy for feedback, but not for direction.
Feature X may be a great idea, and may be highest on the list. However, the users aren’t going to be the ones that have to get their hands dirty to implement the feature and the bugs. Nor will everybody that votes on the feature know what it would entail, unless that was made explicit up front. Would people really want feature X if it meant that every coder on the project would have to stop what they’re doing and work on that one feature?
In any case, at some point, a project has to stop listening to the users in order to get work done. The point at which this happens is when there’s a few more magnitudes of users than developers, users in this case being people who simply make feature/bug requests. No project has the resources to please them all. This is true of both commercial and FOSS software.
Thank you for your time.
>so if you have a problem with my spelling and grammar either:
>a) do not come back (spare us and save your time too)
>b) send me a proofread version of the article in question.
(http://www.osnews.com/editor.php?editors_id=1)
Eugenia,
The above is a quote of your own words.
One more thing.
You pity the people/developers who idolize software/computers, yet you have no problem using their software do you?
Spare us your hypocrisy
I almost shit myself laughing because of how retarded this article sounds. You and I do have something in common, though–we’re both trolls.
Eugenia, if there is something you need, just develop it yoursefl. It’s what makes Open Source so special.
Oh you do not have the skills? Then go to your local store and buy Windows if what you want is in there.
What? you do not want to pay for functionalities you want anyway ??
Stop acting like a 4-year old girl and stop whining !
Pay for what you want: learn and spend time doing it, or spit the cash!
I have found the notions listed in this artical are not limited to GNOME.
I have been an avid user of KDE for years now.
In the last few years I have submitted a decent amount of wishlist items on bugs.kde.org. I have found developers are not interested in features they do not understand, and have no interest in trying to understand.
I was one of those users that abandoned the GNOME project just before the 1.4 days. KDE appear to be going down a similar path. That of not listening to ‘real’ users of they’re systems. The most common dismissal responce is the usuall ‘submit a patch’.
If KDE keep it up (just like gnome did years ago), I guess we will be finding ourselves cheering a new underdog.
Final thoughts:
What application on kde/gnome is as good as windows media player? If you do not use WMP 10 to play media files then do not pretent to have a clue.
Im leaving kmail for mozilla-firebird, as the moz developers obviously understand how a ‘real’ user wants to interact with the email client.
I am really surprised to see such a bad article from you, Eugenia. If you want something, you either do it yourself or talk about it to developers but don’t expect them to work for free for you : they do it for themselves first and because they want some stuff to be available.
As a developer, seeing someone come and talk about your project, telling you how you should do things but not doing anything by himself but expecting you’ll do anything they want “because they want it” is just plain stupid. Because you want something does not entitle you to talk in anyone’s name but yours and if you want something, do it yourself or don’t complain.
This motto is especially remembered to people when they come near some opens source projects like openbsd. We keep seeing people with no programming knowledge, no security knowledge come to mailing lists and explain everyone how things should work and that everyone should spend their time doing things “the right way”. Of course, those people won’t do it themselves, of course.
We’re not slaves. We do things for improvements and do it because we are looking for them. If you talk nicely with a developer, he/she might work upon the idea if the idea looks good but don’t expect it. If you really want something, start working and make it happen.
I hope I don’t feel rude. English is not my native tongue and sometimes I don’t express myself as I think I am
I’m sorry to sound rude, but the parent artcile is sheer idiocy. We should be grateful to the GNOME developers that they are releasing their hard work to us for free (as in beer) and better yet, under a free (as in speech) license. Even if they were just developing it for their own use (which I HIGHLY doubt) there is no reason for them not to do public releases or run a bugzilla (which is mainly intended for bugs, hence the name) just because they won’t implement a few features YOU want. We are getting something (and a wonderful something at that) for nothing at all, and you complain? On what grounds, because you want FOSS to succeed, as you say? In that case, contribute! If you want it to succeed, then add in the “missing” features yourself, or pay someone to do it, but don’t whinge and moan, and expect other people to work to implement something you want, just because you feel you need it, and can’t be bothered to implement it yourself.
We’re getting the whole of GNOME, which is the sum of many hundreds of thousands of hours of work, all in all, for nothing. What’re you complaining about?
http://www.trajano.net/26649.html
One effect of OSS, intended or not, is that it serves to present a facet of yourself as a developer to the world, and even more importantly, potential employee/co-worker. Wouldn’t it be a shame if your professional reputation was hurt because you acted like a total ass in the OSS community? Whenever you participate in the internet community (and OSS projects are part of that), you are stepping out of the comfort of your own home into a public place.
Like it or not, people are judging you and weighing you by what you say and how you treat people, and if you treat them as if you basically don’t give a damn about them…well. You never know who you might be insulting, and how many personal opportunities might go wasted as a result.
Some Anonymous coward wrote:
> Berating gnome for not following a standard you try to
> impose on them is demeaning. How would you like to live
> up to someone else’s whimsical demands?
Who are you to call those demands “whimsical”? Always when this subject is discussed, there are a dozen wiseguy smartypants repeating the obvious with an attitude: That the developers “owe you nothing” and “you can do it yourself, the source is open” and “who are you to say that”.
The point is, I am the king of Nepal to say that, if what I am saying is correct and would be a better solution and would – as an idea – lead to better software. If, OTOH, what I am saying is unspecific, unrealistic and unfair, then I am nobody to say anything.
The community is about ideas. With Microsoft and the like, good ideas fail and profitable (marketable) ideas succeed. Many people are attracted to OSS because it has the promise to make good ideas succeed – instead of the profitable and marketable.
Two kinds of people repeat the same thing over and over again. One half has the nosy attitude of “how nobody owes you anything” and the other half understands and shares the frustration that good ideas are not driving out the bad ideas. I think (or at least I hope) that the hobby OSS developers are in it for the ideas.
They do not have a monopoly on ideas, and I think they want to make better and better ideas come true. And if thousand users would want to ask the OSS developer to “polish that little bit there”, I’m 99% sure that the OSS developer also wants it done, because sometimes he too thinks it is a good idea.
http://quality.kde.org/ is, I think, after my first glance, a marketplace, a factory, of practical ideas about KDE.
I have noticed a positively annoying trend anoung open source people to just re-create what other people have done.
Why would I want another seperate wordprocessor and spreadsheet and photo tool and graphing tool????
1)It can be an all-in-one where you can switch tools “0n the fly” as you work. Just let me specify the page size, label,etc.
2) Long ago, Apple Hypercard for the Mac did entirely away with the need for “Save” or “Auto-Save”. Why is it still there? I don’t care which hard drive it is saved to, just that it is one one that I can access. I would like to back-up the day’s work to CD or Floppy Disc though.
3)Gnome and KDE both suffer from the “Click on the Picture”
and “Folder” idea–it’s not always the best way to work!
Those are my thoughts….
In your article –
b. Normal users don’t use bugzilla. Only power users & developers do. Besides, no one likes spending time to register.
What exactly are you expecting?
Yes – normal users use Bugzilla all the time – and guess what sweetie – bugzilla has an RFE (Request For Feature) marker you can note on your bug.
There has to be a way to track the issue, Bugzilla (or other systems) is the way that is done – plenty of “normal” users use Bugzilla when they have a bug or RFE – it’s the way developers know what needs to be worked on.
I’m sorry, but if you aren’t willing to use the chanels put forth for you to use, then it sounds like you want someone to wipe your derrier for you. That is something open source is not willing to do. I don’t blame them.
I learned on MSWindows and am trying to move to Debian and all OSS. I don’t want to use MS products because of their monopoly bullying. It is often frustrating because a lack of features and sometimes an attempt by developers to build a project anyway but the way MS did it. MS has 240 engineers working on usability. Sometimes they happen on the easiest way to do something. OSS developers should not reject the natural or easy way to do something just to be different.
At other times it makes no difference initially, but MS sets a standard that most people are familiar with. Once people get used to menus with “File” on the left and “Help” on the right, it makes little sense to do just the opposite out of dislike for MS. Change for a good reason is beneficial. Change just to be different makes people endure a relearning curve or stay with what is familiar to them.
Flexible software is good if the options don’t add instability. Some people seem to be just against user choice.
Jim Fuqua