Subject: RFC: "What Makes a Software High-Quality?"

From: Shlomi Fish <[email-masked]>
Date: Sun, 4 May 2008 16:46:36 +0300

Hi all!

Inspired by what Mr. Gary Capmbell (CCed to this message) wrote in a previous 
message to the fc-solve-discuss list, I have written an essay on what makes a 
software program "high-quality". (And by induction also Solitaire solvers.). 
You can find it: 

http://www.shlomifish.org/philosophy/computers/high-quality-software/

A browsable HTML version is available on the directory at the bottom, but 
there are other formats. I'm announcing it here for comments before I make 
the document public, and publicise it.

Any comments, including silly typos are welcome. If you wish to be credited 
for helping writing the document send me your desired name or psedunym, and 
how to hyperlink it (homepage URL, blog URL, email, no link, etc.).

Regards,

	Shlomi Fish

-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
"The Human Hacking Field Guide" - http://xrl.us/bjn8q

The bad thing about hardware is that it sometimes work and sometimes doesn't.
The good thing about software is that it's consistent: it always does not
work, and it always does not work in exactly the same way.

---

From: "Constantine Shulyupin" <[email-masked]>
Date: Sun, 4 May 2008 17:15:36 +0300

Looks interesting! I have a collection of some links (including to ISO
9126) about subj here:
http://www.makelinux.net/reference?n=software%20quality
I'll read soon and add you article too.

On Sun, May 4, 2008 at 4:46 PM, Shlomi Fish <[email-masked]> wrote:
> ----------------------------------------------------------

-- 
Constantine Shulyupin
Freelance Embedded Linux Engineer
054-4234440
http://www.linuxdriver.co.il/

---

From: Shlomi Fish <[email-masked]>
Date: Sun, 4 May 2008 19:19:48 +0300

On Sunday 04 May 2008, Gary Campbell wrote:
> Just a brief response from me (Gary Campbell).
>
> I seem to be in the opposite mode from Mr. Fish.  

How so, exactly?

> I'm still having fun 
> writing the "last" version of my solver, and taking my time doing so, I
> have to add.  

That's "latest" not "last". I should note that I had fun writing my solver 
too, but now lost interest to other projects. I may return to it in the 
future.

> I'm encouraged by my interim results, but I have a lot 
> more things I want to add to it.  It now solves 99.9% of games in
> well under 100 moves / game, at the rate of over 300 games / second
> on my Vaio laptop (about 3 years old).  

Seems impressive.

> I still consider the player/solver 
> that I posted to my website a "high quality" piece of work.  

Very well.

> Check it 
> out and see for yourself.  Visit:  http://numin8r.us/programs
>
> About 18 years ago I was in charge of Sun Microsystem's Fortran
> compiler.  At that time I was extremely interested in "high quality"
> software (we did use the term "industrial strength" as well as other
> ways to describe it), and at that time I probably wrote a number of
> fragments that might have gone together to describe my opinions
> as well as those of some of my colleagues.  But, now I've kind of
> lost interest.  Ah, well, maybe different stages of life.

Maybe. I would be interested in reading them as well, if they are still 
available. As for "industrial-strength", I understand what it means, but I 
think the term is very much abused and disputed. This is while "high-quality" 
is less abused, simpler and undisputed.

This is similar to all this "code for the Enterprise" that Java proponents 
tout so much. Someone once explained to me a bit what Enterprise code means, 
but so far it seems that it's incredibly dull and uninteresting and doesn't 
do anything useful.

In any case, there are many more parameters for being "industrial-strength" 
than speed as I've shown in the essay. Personally as a hard-core UNIX 
developer, I have a hard time calling a standalone (non-library) Freecell 
solver written in 8086 and DOS Assembly "industrial strength". But maybe 
that's just me.[1] 

Regards,

	Shlomi Fish

[1] - I'm not sure I can call my solver industrial strength either, but it was 
still good enough to be integrated into several bigger programs. Your 
Kilomtrage May Vary.

>   ----- Original Message -----
>   From: Shlomi Fish
>   To: [email-masked] ; Hackers-IL
>   Cc: Gary Campbell
>   Sent: Sunday, May 04, 2008 7:46 AM
>   Subject: RFC: "What Makes a Software High-Quality?"
>
>
>   Hi all!
>
>   Inspired by what Mr. Gary Capmbell (CCed to this message) wrote in a
> previous message to the fc-solve-discuss list, I have written an essay on
> what makes a software program "high-quality". (And by induction also
> Solitaire solvers.). You can find it:
>
>   there are other formats. I'm announcing it here for comments before I
> make the document public, and publicise it.
>
>   Any comments, including silly typos are welcome. If you wish to be
> credited for helping writing the document send me your desired name or
> psedunym, and how to hyperlink it (homepage URL, blog URL, email, no link,
> etc.).
>
>   Regards,
>
>   Shlomi Fish
>
>   The bad thing about hardware is that it sometimes work and sometimes
> doesn't. The good thing about software is that it's consistent: it always
> does not work, and it always does not work in exactly the same way.

-- 
-----------------------------------------------------------------
Shlomi Fish       http://www.shlomifish.org/
Why I Love Perl - http://xrl.us/bjn88