Linked by Thom Holwerda on Tue 6th May 2008 15:15 UTC, submitted by Shlomi Fish
Features, Office "Which parameters make software applications high-quality? And which parameters or methods, while desirable, are not directly 'quality'?" This is the question the author of this article asks himself. Most of his 'parameters' make a lot of sense, but be aware that the article is about what makes an open source program high quality, and not programs in general. This important bit is stated in the one-sentence 'abstract'.
Thread beginning with comment 313117
To read all comments associated with this story, please click here.
"The Source is Available..."
by chris_dk on Tue 6th May 2008 17:01 UTC
chris_dk
Member since:
2005-07-12

The Source is Available, Preferably under a Usable Licence

Hmm, I find that argument weird. Just because the source is available does not mean that the end product is high-quality. It can mean that but it is an absolute truth.

Reply Score: 5

WorknMan Member since:
2005-11-13

Hmm, I find that argument weird. Just because the source is available does not mean that the end product is high-quality. It can mean that but it is an absolute truth.


Nor does not having source code available mean that the program is not high quality either. IMHO, this article has a strong open source bias, and should be renamed to: "What Makes Open Source Software High-Quality?'

A "just works" software also doesn't have any show-stopping bugs. While it may still have some bugs, it should mostly function correctly.


A high quality piece of software should 'mostly' function correctly.. are you f**king kidding me? Only in the open source world, where it seems that people are used to being stuck with a buttload of alpha/beta-quality software on Sourceforge does this make absolutely any sense. The only time I would ever consider using something that only works most of the time is when there's absolutely no alternatives available. If that means I have to pay $ for something, then so be it.

A few more items that the article doesn't touch on:

- Portability. I agree with this, but not hte way the author intended. Software should be portable enough so that you can copy it to a USB thumb drive, re-install the OS, copy it back to the hard drive and have it run, or just run it off the thumb drive. Anything that barfs DLL/library files all over the system is a loser, IMHO.

- Modular. If you have a program that does several different things that are separate from each other (such as a web browser that does email as well), I should be able to tell the program not to load up in memory the parts I don't use, or to only load it when needed.

- Ease of use. This excludes any app where I have to memorize shortcut keys right from the start to get anything done. It's cool to have them, but at least give me a menu to work with until I learn my way around. Those who don't need such a thing should be free to turn it off (see above point).

- Stable. This shouldn't need any explanation.

- Customizable enough to keep power users happy, but keep those options just far enough out of reach so that new users who aren't looking for them don't get overwhelmed.

Reply Parent Score: 5

WereCatf Member since:
2006-02-15

Nor does not having source code available mean that the program is not high quality either. IMHO, this article has a strong open source bias, and should be renamed to: "What Makes Open Source Software High-Quality?'

I was just thinking about this as I'm skimming through the article. It is very heavily open-source biased. And there are things that are just rather stupid, IMHO. Like for example, an average user does not need access to the sources nor will she care about them, average user won't be compiling the stuff and so on. So, is it almost like the author is talking about what is high-quality open-source software with a developer in mind, not from general usability point from the end-user point of view.

So, my list of things in his list that DO NOT make software high-quality:

* The Source is Available, Preferably under a Usable Licence: - this is useful only for developers, and it doesn't mean the software is any good.

* The Software is Easy to Compile, Deploy and Install: - Look above. I've installed both pretty poor apps and pretty good apps both with exactly the same routine "./configure && make && make install". And this is again only useful for packagers or developers.

* The Software Has Packages for Most Common Distributions: - This has nothing to do with the quality of the software rather than the distributions packagers bothering to include the software. This point also assumes you are using an OS which comes in multiple distributions.

Reply Parent Score: 2

jabbotts Member since:
2007-09-06

"
Only in the open source world, where it seems that people are used to being stuck with a buttload of alpha/beta-quality software on Sourceforge does this make absolutely any sense.
"

yeah, because software from outside the FOSS world has never been known to be beta quality at time of purchase has it.

Please, the FOSS types are nuts because they accept a few bugs as a tradeoff for more flexible software without mysteries. The non-FOSS types are nuts because they accept steaming turd nutty quality software (How's Vista doing these days?) like it was handed down on two stones. All of it is human written software so it's all buggy crap; The FOSS types just discuss it openly instead of hiding behind closed doors fo fear of marketing image.

I do like your list of attributes though. portable, modular, customizable configuration.. I have to reread the article but I think your much closer to what makes software of high quality though I'd add peer reviewable source code as a bonus (but not a deal breaker if code quality doesn't suffer).

Edited 2008-05-06 18:36 UTC

Reply Parent Score: 2

ShlomiFish Member since:
2005-10-10

Hi chris_dk!

Sure, the availability source by itself does not guarantee the software is high-quality. And a lot of high-quality software is binary only or even proprietary.

What I meant to say is that availability of the source and the more liberal its licence is, contribute to the quality of the software. That's because the source allows improvement (enhancements, bug fixes, etc.), studying it to find out how to do things, integration into other FOSS software (including possibly GPL one), usage in "proprietary" contexts (if BSDL or LGPL, etc.), etc. etc.

While having a sub-optimal source licence, won't absolutely prevent your software from being high-quality, having a liberal one will increase the quality a lot.

As I noted below, what I've given are various parameters (or criteria) not a "Must have" checklist.

I hope I made myself clear.

Reply Parent Score: 0