Kuro5hin.org: technology and culture, from the trenches
create account | help/FAQ | contact | links | search | IRC | site news
[ Everything | Diaries | Technology | Science | Culture | Politics | Media | News | Internet | Op-Ed | Fiction | Meta | MLP ]
We need your support: buy an ad | premium membership

[P]
Improving the quality of open source software through appreciation

By jeduthun in Technology
Sun Feb 15, 2004 at 07:51:05 AM EST
Tags: Software (all tags)
Software

If you are a typical Kuro5hin reader, then you probably have a lot of open source software on your computer. In this article, I will explain a simple method for improving the quality of that open source software that requires little to no money and no computer expertise. This method will also make you feel better about yourself and improve the lives of others in the process. It may even reduce plaque (note: this claim has not yet been evaluated by the ADA).

Read on for the juicy details.


ADVERTISEMENT
Sponsor: rusty
This space intentionally left blank
...because it's waiting for your ad. So why are you still reading this? Come on, get going. Read the story, and then get an ad. Alright stop it. I'm not going to say anything else. Now you're just being silly. STOP LOOKING AT ME! I'm done!
comments (24)
active | buy ad
ADVERTISEMENT

Commercial software is almost always anonymously written; programmers write it not for fame but rather for fortune. The programmer's reward for their time, effort, and creativity is a simple bank deposit. This is a perfectly acceptable exchange of commodities, but the point is that at the end of the day, the programmers are made to feel as though they have been fully compensated for their work.

Because commercial software is driven by this exchange, you can generally improve the quality of software simply by throwing money at it, though of course this doesn't work in all cases. The more people you can afford, the higher the quality of the people you can afford, and the longer you can afford to keep them, the better the quality of the resulting product.

Now, let us look at the open source software world. While the reasons programmers write open source software varies greatly, it is safe to say that many of them enjoy the work not because they make money from it (few do) or because they simply enjoy the process (though many do). Instead, they are often driven by pride in their work, and the honor and reputation it brings them in the community. Besides, it is a source of joy to imagine that a number of people are using your program and mentally appreciating the effort that went into it.

So, how do we improve the quality of open source software? Simple.

Show some appreciation for the developers who make open source software.

That's all there is to it. Just as we can (to some degree) improve the quality of commercial software by contributing the commodities on which the commercial software industry is built, so we can improve (to some degree) open source software by contributing the commodities upon which the community is built.

So, I am recommending that you, dear reader, do the following:

  1. Pick an application that you use regularly. The more obscure, the better; the authors of major packages are more likely to be already paid for their time and appreciated for their effort. I chose the Ion window manager.

  2. Write the author a short note. You can send them a postcard, a real letter, or even just an email. In the note, explain how you use the software and why you chose the software. Thank them for their time and effort. Compliment them on any clever, original ideas the software employs, and--this is important--never, ever complain about it or suggest improvements. There is a time and place to do that, and this is not that time or place. Your goal is to offer encouragement without strings or guilt trips attached. ("Now, if only you would add $FAVORITE_FEATURE, it would be the best software ever!") Of course, you can overdo this; use a reasonable tone and don't sound like a fawning fan-person.

You can do more creative things--small gifts, etc--but the point is that doing something tiny is, mathematically speaking, infinitely better than doing nothing at all. (Please, math people, do not flame me for this obvious fallacy.) Seriously, take 2-3 minutes and go through the above steps. You will probably get a personal note back from the author stating how infrequently their efforts are encouraged rather than simply criticized. One time an author posted an email from me in his blog and told me about his renewed interest in working on the software.

Have you ever successfully encouraged an open source software author? Are you an author who appreciates appreciation? Tell us your story.

(Note: I am not an open source software author, so I have no vested interest here, aside from wanting to see others' efforts properly appreciated.)

Sponsors

Voxel dot net
o Managed Hosting
o VoxCAST Content Delivery
o Raw Infrastructure

Login

Poll
I took a few minutes to appreciate a developer.
o Yes 27%
o No 11%
o No, but I'm going to 18%
o I have time to surf K5 but not to contribute to society 28%
o Maybe 13%

Votes: 59
Results | Other Polls

Related Links
o Kuro5hin
o Also by jeduthun


Display: Sort:
Improving the quality of open source software through appreciation | 75 comments (68 topical, 7 editorial, 2 hidden)
While this all may be true, (1.80 / 25) (#1)
by STFUYHBT on Thu Feb 12, 2004 at 07:47:13 PM EST

It does not address the fact that Microsoft leaked its own source code.

-
"Of all the myriad forms of life here, the 'troll-diagnostic' is surely the lowest, yes?" -medham
re: While this all may be true (2.25 / 3) (#60)
by ZorbaTHut on Sun Feb 15, 2004 at 12:01:27 PM EST

And gassed its own people!

Wait, what are we talking about again?

[ Parent ]

The problem here is (2.50 / 1) (#2)
by Tex Bigballs on Thu Feb 12, 2004 at 08:04:42 PM EST

let's just say a guy writes his own open source software. Then people start show him some appreciation. To the tune of $70,000 (hypothetically speaking). Then all of the sudden next thing you know he makes a lot of empty promises that he's just too lazy to keep. He might not even feel like writing a monthly report just to tell you how the project's going. (I know this is a stretch, but it could happen)

So in conclusion do you really want to help foster this type of laziness? Support closed source software.

This is a Masterpiece (nt) (2.75 / 3) (#7)
by Mr.Surly on Thu Feb 12, 2004 at 11:26:10 PM EST



[ Parent ]
YES! (2.00 / 7) (#5)
by readpunk on Thu Feb 12, 2004 at 09:09:22 PM EST

You mention ion you definately get a +1 FP.

./revolution
Ion is indeed cool (none / 2) (#8)
by jeduthun on Fri Feb 13, 2004 at 02:33:37 AM EST

Yeah, I like Ion a lot; I use it both at home and work.  It isn't at all mainstream, so I figured its author (let's hope he doesn't read K5, or I'll be a little sheepish) doesn't get much in the way of appreciation for his efforts.  

I think an article about evaluating window manager paradigms would interesting K5 fodder. (-:

[ Parent ]

Ion effectiveness (none / 0) (#51)
by caine on Sat Feb 14, 2004 at 10:44:49 PM EST

Even though I'm a hardcore windows user at home (switched to 2k after 8 years of linux around 2001), I do like Ion alot. I've got it as my default wm in school and it's really good at handling what I do there, which is mainly coding and report writing in LaTeX. So I hope you were really nice to him, he deserve it ;)

--

[ Parent ]

Does not address core issue. (1.76 / 17) (#6)
by ninja rmg on Thu Feb 12, 2004 at 09:29:19 PM EST

The open source community is already too self-congratulatory. Developers need to grow some teeth and realize that their job is to piss on the proprietary software parade. Ninety percent of open source projects are either esoteric (and usually unusable) or rehashes of rehashes that don't even run on an operating system people actually use (ie. Windows). They are wasting effort and flooding the open source community with crap.

Now if they started consistently collecting their efforts into larger projects rather than reimplementing old stuff, that would be great. When they start actually attacking niches in the Windows market, then I'll applaud them.



Good points (none / 1) (#9)
by jeduthun on Fri Feb 13, 2004 at 02:54:17 AM EST

Ninety percent of open source projects are either esoteric (and usually unusable)

Esoteric and difficult to use does not imply that the software is a waste of time on behalf of the developer or the user.  If you have a little idea that is a long shot but might work out, why not give it a proof-of-concept and pass it out to the community and see what they think?  Developers need to be free to experiment with unconventional software and get good feedback when they do so; even if 99.5% of such software winds up fizzling, the remaning 0.5% just might have some brilliant new idea that winds up being next year's killer application or feature.

or rehashes of rehashes that don't even run on an operating system people actually use (ie. Windows).

More agreed here, but there is some value to the programmer in learning how things are done, and often some of the best applications grow out of rehashes of rehashes, because (if done properly, of course) every generation of software learns from and improves upon the last.  Certainly there are a lot of very poor-quality open source applications out there that are written just because "L1NUX N33D5 A M$ W0RD TYP3 PROGGIE!1," but that doesn't mean that there aren't intelligent programmers who think "Perhaps I could design a better word processor than Microsoft. I have some good ideas for improving some the areas in which Word fails.  I'll try and experiment and see what people have to say about the result."

Anyhow, you're right; concentrated effort on a few good projects is far better than scattered efforts on a lot of poor ones.  The problem is, of course, communication; it's quite easy to sit in your office and write the world's 1,429,142nd text editor; it's another thing entirely to have to work with a group of people on something really good.  

[ Parent ]

Re: Good Points (none / 0) (#64)
by gidds on Sun Feb 15, 2004 at 04:43:03 PM EST

That assumes, though, that there's a fixed amount of programming skill and time out there to be divided up amongst all the projects. And that's simply not the case.

I don't know how typical I am, but I generally write stuff I'm going to use. If I think other people are likely to use it, then I'll release it, which means doing things I wouldn't use myself (documentation, ease of use, &c). But I'm not likely to spend lots of time on something I won't get anything out of myself. In my case, it's the choice between releasing relatively small, esoteric things, or releasing nothing at all.

And esoteric doesn't mean useless. One of my major projects is something that only a handful of people use; but to those people it's extremely useful, and something they use every day, maybe for an hour or two. Knowing how much they get out of it is what makes all the effort worthwhile.

Andy/
[ Parent ]

You people (none / 0) (#11)
by JayGarner on Fri Feb 13, 2004 at 07:35:16 AM EST

Parent post makes good, valid points, yet you all rated it lower than the typical piece of thoughtless inanity like what I usually write.

[ Parent ]
A developers job (none / 0) (#12)
by whazat on Fri Feb 13, 2004 at 07:48:31 AM EST

When he is not being paid is not to please anybody but himself. If he doesn't want to try and kill proprietary software, that is up to him. Any other suggestion should be treated like the following. "Come on, lets all herd the cats to swim, think how well they will do catching fish."

[ Parent ]
A squid in a polyethylene bag is fast and bulbous (none / 1) (#29)
by JayGarner on Fri Feb 13, 2004 at 09:00:36 PM EST

Ya dig?

[ Parent ]
Word! - nt (none / 0) (#43)
by whazat on Sat Feb 14, 2004 at 05:21:01 AM EST



[ Parent ]
Then do something about it. (none / 1) (#16)
by megid on Fri Feb 13, 2004 at 10:04:29 AM EST

"Self-congratulatory", phhft. Person A makes something, person B likes it, congratulates person A. Sounds pretty ok to me. Compared to the "we are the best" attitudes of e.g. politicans or football stars, who (most of them, not all) essentially do nothing of lasting value, this sounds also pretty ok.

Oh and btw, one of the advantages of open source is that no one has the *right* to get anywhere with his/her complaints. Make it better if you dont like it. Come on, rally all those people to "concentrate efforts". Of course that would be nice. So do it if it is important to you.

--
"think first, write second, speak third."
[ Parent ]

Not quite. (none / 2) (#19)
by ninja rmg on Fri Feb 13, 2004 at 02:02:02 PM EST

Self-congratulatory in the sense that you ESR preaching about how brilliant 'hackers' are, everyone talking about how "the open source community" is doing so much to liberate software and intellectual property (despite the fact that of all projects not run by corporations or large consortiums, only gaim and mplayer have more than 100 users), and everyone on slashdot hailing the "decline of microsoft", when the only place linux seems to be winning is in web servers. There's a "let's write a half-assed fractal generator to give back to the community" mentality that ought to be stopped. There's too much idealism and not enough realism.



[ Parent ]
Hell-oooo! (none / 1) (#25)
by cburke on Fri Feb 13, 2004 at 07:51:54 PM EST

(despite the fact that of all projects not run by corporations or large consortiums, only gaim and mplayer have more than 100 users)

You're forgetting about Nethack!

[ Parent ]

... uh huh. (none / 0) (#32)
by Scott Robinson on Fri Feb 13, 2004 at 09:05:22 PM EST

And tvtime, giFT, so many IRC clients (X-Chat), vim, so many games, so many emulators (VBA), and so many e-mail clients.

That's just what's running on my system right now.

Goddamn it, I shouldn't feed the trolls.

[ Parent ]

With the limited functionality of giFT, (none / 1) (#34)
by anticlimax on Fri Feb 13, 2004 at 09:37:21 PM EST

I sincerely doubt that a user of a crippled FT client could be compared to the fully functional users of the legitimate FastTrack network. If you really wanted to gauge the userbase of giFT and still keep the spirit of P2P in mind, then I recommend using a ratio of some sort.

Three-fifths per person seems to be about right.

[ Parent ]
gIFT's functonality (none / 0) (#76)
by Scott Robinson on Tue Feb 24, 2004 at 05:56:44 PM EST

giFT has protocol support for:

OpenFT
FastTrack
Gnutella
SoulSeek

And probably more I haven't kept track of.

Furthermore, the functionality of a particular piece of software has absolutely no bearing upon the plain number of users.

They're two different variables.

[ Parent ]

Ah, I'm sorry. (none / 0) (#37)
by ninja rmg on Fri Feb 13, 2004 at 10:05:45 PM EST

250 users then.



[ Parent ]
What are you saying? (none / 0) (#52)
by cburke on Sat Feb 14, 2004 at 11:17:55 PM EST

Are saying nethack, the greatest Free Software game ever, isn't a good enough example of something with more than 100 users?

[ Parent ]
Disagreed. (none / 0) (#48)
by megid on Sat Feb 14, 2004 at 12:16:32 PM EST

There's a "let's write a half-assed fractal generator to give back to the community" mentality that ought to be stopped.

I disagree. Just because you dont like it does not mean it "ought to be stopped". We are free people, remember?

...only gaim and mplayer have more than 100 users

I disagree. Even *I* have more than 100 users. So do Miranda, WinMerge, FileZilla, VNC, GIMP, TcpView, etc. etc... None of them backed by corporations (as far as I know, at least)

As for the rest, I am not assuming myself to be "brilliant" or "better than the rest". I just like writing software, and most of it is a byproduct of the knowledge I gained at work, so its neither "half-assed" nor inferior in any sense (truth be told, in private I am writing the software the way that I HAD written at work if I had the last say in my company, free from deadline obligations ;).

As for the community, nice that it exists. I dont communicate with the community often, but like Greenpeace, its nice that its there.

Regarding the idealism, I am glad that it is that way. We have far too many pragmatists already on this planet. Innovation comes from 1% of the idealists and from 0% of the realists.

--
"think first, write second, speak third."
[ Parent ]

Huh? (none / 0) (#57)
by joto on Sun Feb 15, 2004 at 07:02:08 AM EST

(despite the fact that of all projects not run by corporations or large consortiums, only gaim and mplayer have more than 100 users)

Ever read through the package list of your favourite linux distribution?

Sure, most of the stuff that is being made at any moment in time will be crap, but the good stuff survives.

[ Parent ]

What's wrong? (none / 0) (#73)
by jmv on Mon Feb 16, 2004 at 04:03:42 AM EST

Ninety percent of open source projects are either esoteric (and usually unusable) or rehashes of rehashes that don't even run on an operating system people actually use (ie. Windows). They are wasting effort and flooding the open source community with crap.

Many open-source projects start from people "scratching an itch". You write a very specific piece of code to solve your problem and then make it available. If it's helpful for others, fine, otherwise, no big deal.

As for programs that "run on an operating system people actually use", remember that you're always free to port an open-source program. As an open-source developer, I don't think I owe you a port because many people are using it.

[ Parent ]

Good idea! (3.00 / 5) (#14)
by megid on Fri Feb 13, 2004 at 09:49:11 AM EST

I am an open source developer (one project is even useful -- has even been used for writing a book), and apart from said book writer, I never had any feedback. Only the download counter tells. Even if I divide it by 10, its still good.

Now, to rebutt someone earlier in the comments, it is NOT MY FUCKING JOB to make anyone happy with what I do. If someone does consider my work to be crap, fine, ignore it, your choice. The "flood" is no different as the flood of bad soccer games; they are just there, but I ignore it. I do this because it feels good to do so. Think that I am a moron? Whatever dude. Not my concern.

And on to the subject again, I'd say no one would say "no" to a little "hey thank you man".

--
"think first, write second, speak third."

The OSS I use ... (2.00 / 4) (#36)
by cam on Fri Feb 13, 2004 at 09:59:04 PM EST

... in projects I make a point to thank the developers for their hard work on releases.

cam
Freedom, Liberty, Equity and an Australian Republic
[ Parent ]

You got a deserved zero (1.09 / 11) (#41)
by sellison on Sat Feb 14, 2004 at 12:51:48 AM EST

and I enjoyed giving it.  


"No, I don't know that atheists should be considered as citizens, nor should they be considered as patriots. This is one nation under God."- George H.W. Bush
[ Parent ]
Good for you mate [nt] (none / 0) (#44)
by cam on Sat Feb 14, 2004 at 07:44:45 AM EST


Freedom, Liberty, Equity and an Australian Republic
[ Parent ]
Oh God... (none / 2) (#40)
by ninja rmg on Fri Feb 13, 2004 at 11:01:39 PM EST

You know, it's kind of hard to ignore nine of the ten projects that claim to do what I'm looking for. Instead, I end up having to download and install the damn things, often spending over an hour getting the thing working correctly for one reason or another, then I have to figure out how it works, which is rarely obvious, then I finally can determine whether it is suitable my purposes. In my experience, about one in ten projects that claim to do what I want actually do it. So I ask you: How do I ignore such things? How am I not justified in demanding some level of quality from these "developers"?

Of course, you're right. It is just a one way road. The programmer "scratches his itch" (though he often misses it or scratches it until it bleeds) and to hell with everyone who tries to use the thing! If they come across your program, well, that's just too damn bad for them! Maybe they should have just bought it from Microsoft or written it themselves. It's not your job to make sure they don't waste their time...



[ Parent ]

While I understand you (none / 2) (#47)
by megid on Sat Feb 14, 2004 at 11:58:36 AM EST

... this is a completely different issue: "The publisher that lies". If I claim something to be "alpha", it is. Of course you are right "demanding" such honesty from me -- although I could just say "kiss my ass", I consider it my duty to be honest about my work. I am not lucky about this kind of impostors either, and I also had my share of bad experiences.

But anyhow, I didnt pay it, so I have no "right" to complain (I DO complain innerly, though ;).

For avoindance of this problem... I havent been too lucky. The projects hosted at sourceforge do a pretty good job at revealing their status honestly. Otherwise, I search for forums with complaints about a product; screenshots; ask around. Not surefire, sure. But better than tapping in the blind.

--
"think first, write second, speak third."
[ Parent ]

sorry fella, (none / 1) (#65)
by werner on Sun Feb 15, 2004 at 06:08:18 PM EST

but if you ain't paying for the software then you had better keep a civilised tongue in your head. Let's face it, if some guy (or gal) has spent hundreds of hours writing a program for whatever reason and you download it for free, then you should treat them like the star they are. Who gives a toss if you don't like the software? They didn't write it for you. If you want something, then ask VERY nicely.

Unless you are willing to pay a developer to do what you want, then keep your comments polite, constructive and pleasant. Sorry, but you can't shout at someone for not doing what YOU want, if they have no obligation to you.

If I write a program and give it away for free, but it doesn't do what you want, why the hell should I listen to your criticism? I owe you nothing. You should still be thanking me for giving you usable software. If you want something from someone who is working for nothing, then you'd better be very nice about it or get your wallet out.

[ Parent ]

Um, a few points... (1.85 / 7) (#17)
by Run4YourLives on Fri Feb 13, 2004 at 01:11:29 PM EST

Calling a piece of shit a rose isn't going to change it's smell.

If somebody codes a piece of poo, and offers it to me to use, and it doesn't do what it's supposed to do, I have every right to call him/her on it.

Now, he has every right to igore me as well, but if he wants to make a name as a developer, he should really pay attention. If he's just mucking around, why would what I say even bother him?

I understand the point of positive encouragement, but what is it these days with everyone needing me to blow smoke up their asses? There's even a tip jar at the local Wendy's!

Honestly, If a program is good, you'll have a high number of downloads, and a low number of complaints. Consider that a compliment. If you're really concerned about what others think, do up a poll or something.

It's slightly Japanese, but without all of that fanatical devotion to the workplace. - CheeseburgerBrown

Sorry if I was unclear... (none / 3) (#18)
by jeduthun on Fri Feb 13, 2004 at 01:37:52 PM EST

Calling a piece of shit a rose isn't going to change it's smell.

Of course not, but I'm not asking anyone to be dishonestly complimentary--I'm simply asking them to give credit where credit is due.  As I said in the article, there is indeed a time and place for authors to get constructive criticism.  I simply think that we should provide encouragement as well as criticism if we really want to see software go someplace.  

I understand the point of positive encouragement, but what is it these days with everyone needing me to blow smoke up their asses? There's even a tip jar at the local Wendy's!

I think there's a bit of apple-orange comparison going on here.  The employees at Wendy's are already paid for their time, and their labor is not terribly skilled or personal.  Open source software authors are generally not already paid for their time, and their efforts are very skilled and creative.  Thus, they deserve a little "thank you" rather than ungrateful silence from those who are taking advantage of the hard work they are giving away for free.

[ Parent ]

Well (none / 3) (#20)
by Run4YourLives on Fri Feb 13, 2004 at 02:44:19 PM EST

Open source software authors are generally not already paid for their time, and their efforts are very skilled and creative.

However, I never asked the author to write the project at all. I don't see why the author would think I'm under some sort of obligation to thank him/her.

Of course, I would (and have in the past) offer thanks for a good product, and generally refrain from critism, because most folk can't seem to take any, or aren't interested.

Most times, it seems however that the author wants to spread their work as open source until somebody says they think it's crap. All of a sudden the author no longer cares, and an advertised piece of code that doesn't work becomes a "pet project".

All I'm saying is OS developers can't have their cake and eat it too.

It's slightly Japanese, but without all of that fanatical devotion to the workplace. - CheeseburgerBrown
[ Parent ]

Maybe I'm confused... (3.00 / 4) (#22)
by cburke on Fri Feb 13, 2004 at 07:41:14 PM EST

But I'm pretty sure the article is talking about thanking the authors of Free Software you actually use and like and want to become better.

I don't think he was saying you should send random congratulatory emails to free software developers of random projects.

[ Parent ]

Common courtesy (none / 1) (#62)
by Ublis on Sun Feb 15, 2004 at 01:15:32 PM EST

I don't understand why you're so much against thanking. Nobody forces you to thank anyone. The author of the article simply states that it's nice to do it if you use something that you got for free.

It's not a matter of you "I didn't ask for it, so I don't thank for it". It's simple common courtesy. If say you have some heavy object in your hands and someone holds a door open for you, you say "thank you", even though you never asked for assistance, don't you? Same with open source. It's nice to say thanks.

Now, being an open source developer as well, I can tell that I don't mind suggestions or bug reports instead of "thanks" as long as they're in a civilized tone - in themselves they show that that person appreciates my work and cares about it, otherwise they wouldn't bother to mail me, they'd just send it to the trash can and download something else. I like getting feedback, but I don't force anyone to send it to me. People who do give feedback often find that their requests are implemented or their bugs are solved and usually pretty fast. In all fairness, I must say I've never received an impolite message.

I also don't understand why you feel you should tell someone their work is crap just because you don't like it. Nobody forced you to download it. Nobody promised you anything. And you didn't pay a single penny for it. Why would you send a rude message over that? I would be very annoyed if anyone sent me such a message: my page has very clear descriptions of what the software does and doesn't do, there are plenty of screenshots, there is a list of stuff that will or will not be implemented - if you don't read that information, but download it and don't like it, I don't want to know. You should have read the page and decided it's not what you want.

[ Parent ]
complaints... (none / 1) (#72)
by jmv on Mon Feb 16, 2004 at 03:55:53 AM EST

Honestly, If a program is good, you'll have a high number of downloads, and a low number of complaints.

Actually, I don't think there's an inverse correlation between complaints and appreciations. If you write a piece of software nobody uses, you'll likely have zero complaints. If you have a very popular piece of software, you'll have *lots* of complaints. Just think about the number of people complaining about XFree86, gcc, the Linux kernel, ... When people complain, it's usually because they somehow care (of course, not all complaints are useful, but that's another story).

[ Parent ]

Final user interest / developer interest (none / 3) (#21)
by svampa on Fri Feb 13, 2004 at 06:34:11 PM EST

A difference between propietary and Open source software is that in propietary, a new feature (or a full application) is developed if final users (aka customers) want it. And in Open source, a new feature (or a full application) is implemented if the developer wants to.

No matter what final customers want, if it's a feature that developers will never use, and it's bunch of boring work. Probably you'll never see it.

Even Eric S. Raymond in his The Cathedral and the Bazaar said there were things he didn't like to do:

Some European users bugged me into adding an option to limit the number of messages retrieved per session (so they can control costs from their expensive phone networks). I resisted this for a long time, and I'm still not entirely happy about it. But if you're writing for the world, you have to listen to your customers--this doesn't change just because they're not paying you in money

That's a feature among a lot of features. What would have happened if 50% of features wouldn't have been interesting for Eric S. Raymond?

Every good work of software starts by scratching a developer's personal itch.

Once upon a time, sysadmins wrote a lot software to ease their own work, and more new ideas were created, because universities departamente of computeres tested new ideas and try it on their own netowrks. That was, still is, great software. why? because develovers where also their own customers.

Now the software is written for final customers, that are not developers, and developeres write software that they don't use. The dirty and boring part is forgotten by developers, just the parts that are more interesting for final user: Online help, good tutorial, good interface...

  • There is a lot of good software for developers and admins (Apache, PHP, perl, Linux, Gcc...).
  • There is some good software for final users supported by big companies GNU and KDE, supported by Redhat, Suse, IBM. etc. It's good but it isn't a wonder like software for admins.
  • There is some software that was formerly propietary and was released GPL, and is still supported by the orginal company (openoffice, Mozilla).
  • There is a lot, a huge lot of software beta-forever, alpha, pre-alpha
  • There are a few exceptions of other cases
  • Perpahps a lot of programers enjoy coding and create new ideas. But that's a small part of the good software. Writting good software (even a simple one) needs a lot of work, debug, good interface, and documentation (check how far has the classic utility "ping" gone). But teenagers in their home want to show theri skulls as coders, no their skills as project managers... the result..buggy and undocumented software.



    Almost. (none / 1) (#27)
    by UserGoogol on Fri Feb 13, 2004 at 08:28:10 PM EST

    Open Source software is written if the developer feels like it. Proprietary software, are written if some company feels they can make money off of it. (Well actually no. There's some minor software which is written for fun but kept closed, and there's also in-house software, but lets ignore that for the moment, because it's irrelevant for this discussion.) The Market doesn't always work in such a way that what is most profitable is what the end-user would prefer. But your points are still valid. Companies are probably more compelled to produce software which the end-user will like than J. Random Hacker.

    [ Parent ]
    Sometimes (none / 0) (#56)
    by michaelp on Sun Feb 15, 2004 at 02:55:37 AM EST

    in many cases its the CIO, IT Managers, or (horrors!) the CEO who decides what the end users will use, whether they like it or not.

    Here it is often the fact that OSS developers don't pay for golf games and dinners, and don't produce shiny boxes and marketing brochures, which decides the case in favor of CSS rather than technical issues or feature lists.




    "Every gun that is made, every warship launched, every rocket fired, signifies in the final sense a theft from those who hunger and are not fed, those who are cold and are not clothed."

    [ Parent ]

    Market and OSS (none / 0) (#59)
    by svampa on Sun Feb 15, 2004 at 11:18:24 AM EST

    You have missed the point: It's not what the customers will use, but what the customers will buy.

    The customer will buy what he wants. Obviously, if a product have a lot of features that the customer needs, or look nice for him, and the other product doesn't have them, then he will buy the first product.

    Bussiness want the custumer buys their products, the direct way is to try to make them nice to the customers, but there are other ways: FUD, stronger maketing, monopoly, bribery etc.

    OSS developers don't have that problem, they don't need FUD neither marketing, neither ... to stop doing what the cutomer wants. They just don't do it if they don't want to. It may happen, and in fact, it do happens a lot.



    [ Parent ]
    I think you need a lesson in real world business (none / 1) (#55)
    by michaelp on Sun Feb 15, 2004 at 02:44:16 AM EST

    If feature x is desired by 1% of the customers, but will cost more than that % pays, it will not be (and should not be if you are a stockholder!) added.

    If feature x is desired by 50% of the customers but the MAs think it will be cheaper to get marketing to convince the customers they don't really want feature x, feature x will probably not make the feature list on the shiny box (OTOH, if the MAs decide that they can convince the customers they already have feature x, or that feature y is equivalent to feature x, feature x will make the box, but not the code).

    In a perfect world, it might just be that customers actually got what they really wanted at a price they could afford. In the real world, with CSS, they get what they can be convinced to live with for as much as they can be convinced to pay.

    The nice thing about OSS, is if you are a customer who wants feature x in a product, you can hire a programmer to put it there for you, even if the lead developer isn't interested.

    To use your analogy, What would have happened if 50% of features wouldn't have been interesting for Eric S. Raymond?

    Then they wouldn't use ESR's product, they would find a better fit for their needs, or if none existed, write their own. This is another one of those analogies that applies to both CSS and OSS: if you don't write it, they won't come. (Actually it applies more to OSS because you can't get marketing to put their psychology degrees to work on the problem:).

    "Every gun that is made, every warship launched, every rocket fired, signifies in the final sense a theft from those who hunger and are not fed, those who are cold and are not clothed."

    [ Parent ]

    Real OSS world (none / 0) (#61)
    by svampa on Sun Feb 15, 2004 at 01:11:38 PM EST

    Let's say I use an application A, and I need a feature X. This application is what I need, it's perfect for me, no another application in the "market" fullfills my needs. Applciation B lacks of z, application C lacks of y. This is the application I need, but it would be handy with feature X.

    I think I have described a common situation in software world.

    After asking to add the new feature, I have the following issues:

    Propietary software:

    1. Feature X is demanded only by 1% users
      1. It's easy, it will be implemented
      2. Too much work for too few customers. I will have to live without it.
    2. Feature X is demanded by 50% of users
      1. Let's implement it. Competitors are doing so
      2. Too much cost, let's sell it's not important. I will have to live without it.

    Open source:

    1. Feature X is demanded only by 1% users
      1. It's easy, it will be implemented
      2. It's a good challenger for developers, it will be implemented
      3. too little users and interest. It won't be implemented.
          I will have to live without it.
          I will hire someone to do it.
          I will do it by myself.
    2. Feature X is demanded by 50% of users
      1. Interesting to get a good program, it will be implemented.
      2. Boring, but a lot of users: Ok, It will be implemented.
      3. Boring, hope someone do it
          I will have to live without it.
          I will hire someone to do it.
          I will do it by myself.

    The first thing: forget the case 1, because there are only 1% of probabilities a user be among those users.

    Let's go with the second item. That's a summary of the cases, but in real world some cases are more probable and real than others.

    In propietary software, if a feature is demanded for a lot of users there are good chances they implement it. Although if they decide not to do it you must take it. Anyhow if it's demanded by so much users probably it's an obvious need and will be implemented.

    In the propietary software, you can't do anything if the company is not going to implement the feature. In OSS, there are options, you can hire someone, or do it by yourself. But The option of hire someone is not real in practice. For example, I won't hire anyone to write the online help (probably a lot of work and money) just to give it to then thousands of users that are waiting for it. It's a good theory, in an ideal world, but it desn't work like that.

    In the opensource, the boring of work is an important parameter, equal or more important that the number of users as for it. In fact, documentation is an evident need for end-users that is lacking in most OSS. Features that are common in the propietary version, are lacking in a lot of wanna-be OSS versions.

    In short: In the real world opensource lacks of important and common features that you find in propietary source. The avaliability of source is over-rated, in real world it means nothing.

    I have forgoten all it about "I'll do it by myself", because we are talking about end-user. In this cases, when developers are users of their own software, you get software of quality.

    Mega-corporations (like IBM, Sun, Novell etc.) are helping to develop good OOS, they invest in a lot,but I don't trust too much this trend continue, they do it just to kick Microsft.

    The only way to get software of quality for end-users (not for admins) is to pay someone to do it. And I don't think this can change. Perphaps the only solutions to if govenments invest in OSS.



    [ Parent ]
    Your argument rests on rather weak point: (none / 0) (#63)
    by michaelp on Sun Feb 15, 2004 at 03:19:14 PM EST

    But The option of hire someone is not real in practice.

    In practice, this is how I and alot of other folks make a living. Its just a different model. For example, company X needs a portal and has found they can license a proprietary portal system for $25,000.

    NOw maybe the ask me and I say I can build them a portal system with the features they need for $15,000. I then take OSS portal P, code in features S and V, and turn the system over to them. Then (if the contract and licenses allow it) I relase features S and V back into the OSS community, where others may use them and build on them.

    Since company X is not a software company (or at least not in the portal business) their paying to have the features added and then releasing them is no loss, since they got their portal for less than the commercial vendor. Even if company X did want to keep the features they had made to themselves for fear of helping the competition, they could certainly do so if we wrote the contract that way (and used an OSS product with a license that allowed it).

    So there is no loss to company X in paying to have features added, so long as the total cost to them is less than the competing CSS product.

    For example, I won't hire anyone to write the online help (probably a lot of work and money) just to give it to then thousands of users that are waiting for it.

    You might not see how to make money writing docs and help, but others do.

    Of course there is no reason to give away your documentation if it is good. Many OSS licenses will let you sell modules like help, if you want to go into the software business.

    But for most companies, the benefits of developing a custom help & documentation system are in increased productivity.

    It's a good theory, in an ideal world, but it desn't work like that.

    This is another one of those maxims that is about as true for most CSS as for most OSS. Really, it's not that there is little money to be made (the plethora of Missing Manuals, Idiot's Guides, Definitive Guides, etc., demonstrate that) but  that the quality of the documentation and help system is rarely a key criteria in software purchasing.

    After all, most users don't have a chance to see how accurate and easy to use the help is until long after they've paid for the sofware & especially in the corp. market, the ones making the purchasing decisions often aren't the ones trying to make the software work.

    Thus CSS software's help and documentation is generally terrible, even if it has lots more lines or lbs than OSS docs.

    In fact, for much the the very expensive software I've used over the years, the best support has come from user-to-user forums, or from special paid support contracts not included in the original price.

    Both of these models also are offered in many OSS products. And the same model mentioned above also works, if company X wants to pay for custom documentation, its worth it to them if the cost is still less than the CSS product, and they can get docs. customized to their needs as well.


    "Every gun that is made, every warship launched, every rocket fired, signifies in the final sense a theft from those who hunger and are not fed, those who are cold and are not clothed."

    [ Parent ]

    wrong examples (none / 0) (#67)
    by svampa on Sun Feb 15, 2004 at 07:27:51 PM EST

    The design of a portal is not a job for end-users. I don't know of anytools that allow a end-user buid a portal. I wouldn't say this tool is a pieze of software that persoanl of a shop that sells roses and daisies could use.

    Company X, that grows roses, doesn't ask a OSS developer to adapt the software. The companyn just hires a team to build a portal, and it's the tech-team who decides to use OSS or propietary software.

    So there is no loss to company X in paying to have features added, so long as the total cost to them is less than the competing CSS product.

    No loss? what means "no loss"?. You talk about "no-loss", the company X CEO just says "I paid it, it's mine"

    Let's say something like gnumeric and Excel, software that end-users use. (I don't know the current state of gnumeric, is it still alive after openoffice?) Let's suppose that a customer says "Where is this feature I used to have in Excel?". I don't think he would pay any one to implement it, the budget would be 10 times a Excel licence.

    in fact, for much the the very expensive software I've used over the years, the best support has come from user-to-user forums, or from special paid support contracts not included in the original price.

    You are right, perhaps domantations it's not the best example.

    Even then, most programs, expensive programs, have a good online help, you type F1 and get informatión about. Programs like Flash or Delphi have simple tutorials for beginners. I agree, when you begin to push the program to the limit, manuals are not enough.

    Even without manuals, propietary programs try to be intuitive (the famous usability) the hacker use to stick in algorithm, and usability is left for.... nobody

    After all, most users don't have a chance to see how accurate and easy to use the help is until long after they've paid for the sofware & especially in the corp. market, the ones making the purchasing decisions often aren't the ones trying to make the software work.

    Well, if you are the first in the world that buys that program, you are right. But usually the most spreaded programs (probably by piracy) have good manuals, are powerfull and intuitive.



    [ Parent ]
    Design != use. (none / 0) (#68)
    by michaelp on Sun Feb 15, 2004 at 09:12:41 PM EST

    The design of a portal is not a job for end-users. I don't know of anytools that allow a end-user buid a portal.

    Nor do they build word. But I build the structure of the portal and they use the software to edit, manage, update, even backup, the portal. The folks I work with, we've also built help desk systems, galleries, news sites, etc. The end users then use those tools for their work.

    Company X, that grows roses, doesn't ask a OSS developer to adapt the software. The companyn just hires a team to build a portal, and it's the tech-team who decides to use OSS or propietary software.

    Maybe, maybe not. Maybe they specify open source, maybe they specifiy oracle or peoplesoft. Maybe they just say "we'll pay in the ball park of $$$$ and let the developers build using any tools they want.

    So there is no loss to company X in paying to have features added, so long as the total cost to them is less than the competing CSS product.  

    No loss? what means "no loss"?. You talk about "no-loss", the company X CEO just says "I paid it, it's mine"

    No loss if the CEO was willing to pay up to $25,000 and he got it for $20,000. Thats a gain. If the CEO wants to sell the account management module along with the roses, he could specify that in the contract (we'd charge him more though:-).

    Point is, he/she got a system that met his/her specs for less than his/her budget, and also paid for code that was released back into the OSS community (where it gets tested, modified, improved) by new people, for free.

    This point goes to the original assertion that OSS developers won't build features in they don't want to (for fun), the point being that there are plenty of OSS developers being paid to develop features on top of the work that others did for fun.

    So it was just pointing out that the quote: The only way to get software of quality for end-users (not for admins) is to pay someone to do it.

    Is another one of those sayings that holds true for OSS and CSS, you can pay to have features added to both. In fact, since you don't have to go through marketing etc. its probably easier to get feature X added to OSS project Y for $Z in time A than it would be in CSS.


    "Every gun that is made, every warship launched, every rocket fired, signifies in the final sense a theft from those who hunger and are not fed, those who are cold and are not clothed."

    [ Parent ]

    This is how it works (none / 0) (#74)
    by walwyn on Mon Feb 16, 2004 at 07:49:22 PM EST

    Real world considerations for adding a feature.

    • Is the customer is a major player in the field?
    • Will the feature be useful to other users?
    • Does the feature fit with the general direction the software is going?
    • Does the feature fit into the current development plan?
    • How long would it take to add the feature?
    • Is a developer at a bit of a loose end today and trawling the 'wish list'?

    Making a decision to add a feature 'because it would be interesting to do' usually results in a mess.
    ----
    Professor Moriarty - Bugs, Sculpture, Tombs, and Stained Glass
    [ Parent ]

    While I agree with the premise... (none / 3) (#23)
    by undermyne on Fri Feb 13, 2004 at 07:41:34 PM EST

    As soon as people start accepting praise and/or compensation for their work, they lose the purity of spirit required to do work for the greater good (eh comrade!) and become money-whoring capitalists.

    "You're an asshole. You are the greatest troll on this site." Some nullo

    what? (none / 0) (#70)
    by coderlemming on Mon Feb 16, 2004 at 12:47:28 AM EST

    When you're working for the greater good, wouldn't it help to know that you've actually made a difference?  I tend to agree with the article author.  I don't think praise can be considered the same as monetary compensation, so I don't buy your capitalism argument.


    --
    Go be impersonally used as an organic semen collector!  (porkchop_d_clown)
    [ Parent ]
    No (none / 2) (#24)
    by Psychopath on Fri Feb 13, 2004 at 07:43:29 PM EST

    I download software quite often without actually using it, and being far from really appreciating it. And I guess I am not the only one.
    --
    The only antidote to mental suffering is physical pain. -- Karl Marx
    THANK YOU RUSTY!! (2.40 / 5) (#30)
    by Golden Hawk on Fri Feb 13, 2004 at 09:01:08 PM EST

    We love you!!  *heart* *heart*
    -- Daniel Benoy
    Open Source: (1.57 / 7) (#33)
    by JayGarner on Fri Feb 13, 2004 at 09:07:53 PM EST

    The 'Christian Rock' of the software world.

    flawed comparision (2.50 / 6) (#46)
    by CAIMLAS on Sat Feb 14, 2004 at 07:56:30 AM EST

    The people in "Christian" rock have more sex than open source developers. Even Chritians won't listen to "Christian rock", while many OS programmers use OSS. OSS developers actually create things instead of recycling from mainstream radio's top 10 the previous year.
    --

    Socialism and communism better explained by a psychologist than a political theorist.
    [ Parent ]

    No that would be Mac software (to OS 9.x) |nt (none / 0) (#54)
    by michaelp on Sun Feb 15, 2004 at 02:22:05 AM EST



    "Every gun that is made, every warship launched, every rocket fired, signifies in the final sense a theft from those who hunger and are not fed, those who are cold and are not clothed."

    [ Parent ]
    1997 (none / 2) (#38)
    by prometheus on Fri Feb 13, 2004 at 10:35:44 PM EST

    was four years ago.  ESR already beat this to death.
    --
    <omnifarad> We've got a guy killing people in DC without regard for his astro van's horrible fuel economy
    No. (3.00 / 3) (#45)
    by CAIMLAS on Sat Feb 14, 2004 at 07:53:50 AM EST

    1997 was 7 years ago. It's 2004, not 2000.
    --

    Socialism and communism better explained by a psychologist than a political theorist.
    [ Parent ]

    True, true (n/t) (none / 1) (#49)
    by prometheus on Sat Feb 14, 2004 at 12:48:57 PM EST


    --
    <omnifarad> We've got a guy killing people in DC without regard for his astro van's horrible fuel economy
    [ Parent ]
    When I was the happiest as a programmer (3.00 / 10) (#39)
    by MichaelCrawford on Fri Feb 13, 2004 at 10:56:00 PM EST

    My favorite job ever was when I worked at Working Software, a small Mac software publisher.

    The company didn't have the budget to hire enough staff to handle all the tech support calls, so even though I worked there as a programmer, I did a lot of support.

    Sometimes I would tell the customers that I had written the software they were asking me about, and you know, they were often overjoyed to be talking to the guy who wrote their program.

    That made me feel really good.

    I've worked at quite a few software companies, but only at Working Software was I exposed directly to the public. It was the best way I could have ever thought of to motivate me.

    Working Software isn't in business anymore, but I'm still good friends with everyone who worked there. We all remember it fondly.


    --

    Live your fucking life. Sue someone on the Internet. Write a fucking music player. Like the great man Michael David Crawford has shown us all: Hard work, a strong will to stalk, and a few fries short of a happy meal goes a long way. -- bride of spidy


    my experience (3.00 / 6) (#42)
    by anmo on Sat Feb 14, 2004 at 02:36:49 AM EST

    I am not a professional programmer but in the process of setting up a small community site using postnuke I developed a couple of sideblocks/plugins and put them up on sourceforge. Nothing fancy, the download count is at about 8K, I think.

    Well, occasionally I get an email from a remote part of the world (mostly Europe) thanking me for the job and (sometimes) asking for support (which I give, if it's fast) or extensions (which I ignore, given that now I prefer Xaraya. I must say the author is right, it feels great to receive these emails. I am not coding because of them, but it certainly is rewarding.

    Yes I agree (none / 0) (#50)
    by salsaman on Sat Feb 14, 2004 at 10:37:55 PM EST

    http://www.xs4all.nl/~salsaman/lives

    Eh? No. (none / 3) (#58)
    by br284 on Sun Feb 15, 2004 at 09:14:35 AM EST

    Compliment them on any clever, original ideas the software employs, and--this is important--never, ever complain about it or suggest improvements. There is a time and place to do that, and this is not that time or place. Your goal is to offer encouragement without strings or guilt trips attached. ("Now, if only you would add $FAVORITE_FEATURE, it would be the best software ever!") Of course, you can overdo this; use a reasonable tone and don't sound like a fawning fan-person.

    I'm an open-source developer of an application called Books for MacOS X. (I guess that puts me in the minority of a minority...) I get lots of "your software is great and cool", and while I appreciate those messages, I appreciate the ones that say "wouldn't it be cool to do this, or that" much more because my users are the ones driving the development and continued growth of my application. I'd love to claim credit for all the work thus far, but if it were not for my nagging users, my code would still be in rough 1.x form.

    Of course, some users like to give back, so I've put up a page to let them know how they might show their appreciation. For me, the order is support one of the organizationss I list, then if you want to do more publish the output of my application to spread awareness, and finally if that's not enough, check out my Amazon wishlist. Now while I can't say that many people get to the wishlist part of all this, I'm fine with that. For me the goal is to make the best software possible and I can't do that without my "nagging" users.

    Of course, other developers may be different.

    -Chris

    I completely agree (none / 3) (#66)
    by Mental Blank on Sun Feb 15, 2004 at 07:26:57 PM EST

    I'm the developer of a small open source application, and it's incredibly refreshing when I receive an e-mail just saying "I liked your software", without following it with "...but it should do xyz!".

    I'm not sure if this applies to those working on large and popular projects - who are quite possibly fed up with getting congratulatory e-mail - but personally, one e-mail like that makes up for a dozen crappy "YUO SuCK! y did u bother?" type mails, which are a definite down-side to open source development.

    My experience as OSS developer (none / 2) (#69)
    by jmv on Sun Feb 15, 2004 at 10:53:20 PM EST

    Of course, not all OSS developers are the same but as the author of Speex, I prefer messages like "There's a bug in this line of code" to "Hey, Speex rocks". I don't mind the latter, but that's not what motivates me. I'm much more motivated when I get a message from someone who has gone into the code or has been trying to integrate my project in his application.

    this got me thinking (none / 0) (#71)
    by the77x42 on Mon Feb 16, 2004 at 02:28:18 AM EST

    my projects get me lots of thanks, but if people actually saw the code they'd be at my throat. maybe FREE software should be the correct qualifier here.


    "We're not here to educate. We're here to point and laugh." - creature
    "You have some pretty stupid ideas." - indubitable ‮

    Dear Dude: You proggie is the shiznit!!! (none / 0) (#75)
    by Deadpan Burke on Thu Feb 19, 2004 at 02:00:35 PM EST

    Yes, I said Shiznit. I use alot of freeware apps on my win/lin boxes and wouldn't surive without them. I recently shaved 20 gigs from my system using a freeware duplicate file finder, and wrote a letter to the author, thanking him for a good product.
    sometimes a bowl of oatmeal it just a bowl of oatmeal, and not a metaphyisical representation of the suffering of mankind.
    Open Source - All Software Should be Open Source (none / 0) (#77)
    by Mighty Joe on Tue Nov 01, 2005 at 09:47:05 PM EST

    I agree with most of what you said in this article but I will say that I think most open source software is written to solve a problem for the developers themselves. Additionally, in an ideal world, all software should be open source. Companies should not make money on software but on whatever goods/services they provide. Then if a company wants to improve the open source software they hire someone to do it and the quality and capability of the software just keeps growing. That is the open source credo and hats off to everyone who plays a role in it. I've spent years building the "best of breed" suite of freeware on my personal PC. I decided to create a BLOG documenting what I have done. I make no money off the site. I do it to solve problems for me and everyone else. Together we can make the world a better place! Check out my BLOG and let me know what you think. http://mightyjoesfree.blogspot.com/ I've done the same thing for Firefox Extensions. http://mightyjoefirefox.blogspot.com/

    Improving the quality of open source software through appreciation | 75 comments (68 topical, 7 editorial, 2 hidden)
    Display: Sort:

    kuro5hin.org

    [XML]
    All trademarks and copyrights on this page are owned by their respective companies. The Rest © 2000 - Present Kuro5hin.org Inc.
    See our legalese page for copyright policies. Please also read our Privacy Policy.
    Kuro5hin.org is powered by Free Software, including Apache, Perl, and Linux, The Scoop Engine that runs this site is freely available, under the terms of the GPL.
    Need some help? Email help@kuro5hin.org.
    My heart's the long stairs.

    Powered by Scoop create account | help/FAQ | mission | links | search | IRC | YOU choose the stories!