Professionalism and the word "Quaity"

35 views
Skip to first unread message

Mike Bria

unread,
Mar 28, 2009, 12:26:22 PM3/28/09
to software_craftsmanship
I agree (deeply) that being a *professional* programmer implies, among
other things, you have an exceptionally low tolerance for buggy code.

It's my observation that our industry so does not generally live this
way, that we've gone as far as to retard the word "Quality" to
indicate "lack of defects" instead of "presence of value", as it means
in more common everyday use.

I've written my thoughts on this (and a proposal) here: http://tinyurl.com/clmlv3

Check it out, jabber your thoughts about it here.

Cheers
MB
================
My rants @ http://aydsoftware.blogspot.com/
My co.'s wicked XP eLearning @ http://industriallogic.com/elearning/

mheusser

unread,
Mar 28, 2009, 10:13:22 PM3/28/09
to software_craftsmanship
On Mar 28, 9:26 am, Mike Bria <bria52...@gmail.com> wrote:
> I agree (deeply) that being a *professional* programmer implies, among
> other things, you have an exceptionally low tolerance for buggy code
> way, that we've gone as far as to retard the word "Quality" to
> indicate "lack of defects" instead of "presence of value", as it means
> in more common everyday use.

Here here!

Jerry's Weinberg's line is "Quality is value to some person."

Other stuff that occurs to me in the same vein ...

Jerry Weinberg's four volume series: Quality Software Management
Zen and the art of motorcycle maintenance
Professionalism of Software Engineers by DeMarco (
http://www.systemsguild.com/GuildSite/TDM/Professionalism.html )
DeMarco on Certification ( http://www.systemsguild.com/GuildSite/TDM/certification.html
)

regards,

--heusser

Brian Marick

unread,
Mar 30, 2009, 10:30:05 AM3/30/09
to software_cr...@googlegroups.com

On Mar 28, 2009, at 9:13 PM, mheusser wrote:

> Jerry's Weinberg's line is "Quality is value to some person."


To everyone but me, that line is an Aha! moment, but I've never gotten
it. What does it mean? If quality is value to some person, what is
value? Quickbooks has no value to me: what does that say about its
quality?

-----
Brian Marick, independent consultant
Mostly on agile methods with a testing slant
www.exampler.com, www.exampler.com/blog, www.twitter.com/marick

hotfus...@gmail.com

unread,
Mar 30, 2009, 10:53:18 AM3/30/09
to software_cr...@googlegroups.com
Seems to me the definition leads to the conclusion that, *to you*, QuickBooks has low quality. And that's a valid conclusion.

Al


Sent via BlackBerry by AT&T

-----Original Message-----
From: Brian Marick <mar...@exampler.com>

Date: Mon, 30 Mar 2009 09:30:05
To: <software_cr...@googlegroups.com>
Subject: [SC] Re: Professionalism and the word "Quaity"

Mike Bria

unread,
Mar 30, 2009, 11:29:29 AM3/30/09
to software_cr...@googlegroups.com

On Mar 30, 2009, at 10:30 AM, Brian Marick wrote:
>
> On Mar 28, 2009, at 9:13 PM, mheusser wrote:
>
>> Jerry's Weinberg's line is "Quality is value to some person."
>
>
> To everyone but me, that line is an Aha! moment, but I've never gotten
> it. What does it mean? If quality is value to some person, what is
> value?

Functional usefulness.

> Quickbooks has no value to me: what does that say about its
> quality?
>

Hm. Maybe not much. "value to some person". SOME person, but not ALL
persons.
Of course, from Quickbook's POV, the more persons the better.

All that said then...

I think Weinberg's line summarizes my "Killing Quality" article. My
point is that we should be thinking of our consumers (aka "some
person(s)") as *valuing* the functional usefulness they get from our
products and viewing "low defectiveness" to be something they can
assume.

Cheers
MB

mheusser

unread,
Mar 30, 2009, 1:03:55 PM3/30/09
to software_craftsmanship

> > On Mar 28, 2009, at 9:13 PM, mheusser wrote:
>
> >> Jerry's Weinberg's line is "Quality is value to some person."
>
> > To everyone but me, that line is an Aha! moment, but I've never gotten
> > it. What does it mean? If quality is value to some person, what is
> > value?
>

It means that when two people looked at the IBM PC, they saw two
different things. The guy who just wanted to run visicalc saw value
and opportunity; the UNIX hacker who was on the DARPAnet saw a toy.
The first guy might say "that is a quality machine", the second guy
might say "if you actually saw a real quality machine, you might not
think so. Then again, you couldn't handle it."

And the second guy went and grew his beard.

Ok, maybe not. The point is that we can't create a single, one-
dimensional scale of quality, or create it as a compilation of
different measurable attributes. Quality is measurable in that way;
if it were, it would be a /quantitative/ attribute, instead of a /
qualitative/ one. The greeks were real specific when they were making
up root words.

Because quality is so ephemeral and relative, it's very important that
we get into the heads of our stakeholders and figure what matters to
them. (The Michael Bolton extension to this quote is "Quality is value
to SOME PERSON THAT MATTERS.")

In my mind, the XP Practice of onsite customer, for example, was a big
leap forward. Dave Hoover's ideas about making your behavior
transparent also add to this; involve the customer in the process,
empower them, and build what they ask for. It's awful hard for
customer to delcare something they co-created as low-value.

Does that help at all?

--heusser

Brian Marick

unread,
Mar 30, 2009, 3:02:33 PM3/30/09
to software_cr...@googlegroups.com

On Mar 30, 2009, at 12:03 PM, mheusser wrote:

> Because quality is so ephemeral and relative, it's very important that
> we get into the heads of our stakeholders and figure what matters to
> them. (The Michael Bolton extension to this quote is "Quality is value
> to SOME PERSON THAT MATTERS.")

> Does that help at all?

Yes. I'd say "quality is subjective" but Bret Pettichord pointed out
on twitter that omitting "subjective" (a bad word) and adding
"value" (a good word) is, um, the viral capsule that allows the
payload to evade the body's immune system. [My metaphor, not his.]

Brian Marick

unread,
Mar 30, 2009, 3:09:21 PM3/30/09
to software_cr...@googlegroups.com

On Mar 30, 2009, at 9:53 AM, hotfus...@gmail.com wrote:

> Seems to me the definition leads to the conclusion that, *to you*,
> QuickBooks has low quality. And that's a valid conclusion.


To me, QuickBooks has low value. It seems bizarre to say that,
therefore, to me it has low quality. How, then, could I say that it's
a bug-ridden pile of dung with a user interface to match - but it's
nevertheless worth what I paid for it?

I know! I could just *say that* instead of filling in the blank in
"quality is ______". But man is a featherless biped with broad
fingernails who insists on defining things.
[Allusion to: http://www.conservative-resources.com/]

Albert Chou

unread,
Mar 30, 2009, 3:28:13 PM3/30/09
to software_cr...@googlegroups.com
You're right, quality and value are not the same.  Neither are they orthogonal.  Like entropy and complexity in software.

Al

Christian Vest Hansen

unread,
Mar 30, 2009, 3:28:40 PM3/30/09
to software_cr...@googlegroups.com
Robert Glass has a definition for quality (his Fact 46) that I kind of like:

It is a collection of attributes: portability, reliability,
efficiency, usability, testability, understandability and
modifiability.

Each of these attributes may rank differently in importance for
different projects, but quality can never be any one of them alone.
Some projects may not care about portability at all, and a product
that is only reliable and nothing else, cannot be considered a quality
product.

Robert also asserts that the definition of quality is field dependent.
Thus, the definition for quality in software cannot be used when
talking about quality in cars, carpenting or what have you.
--
Venlig hilsen / Kind regards,
Christian Vest Hansen.

Kurt Häusler

unread,
Mar 30, 2009, 3:56:07 PM3/30/09
to software_cr...@googlegroups.com
Which he basically took from ISO 9126, with a couple of minor changes.

My current rant (I have been talking with a few "QA Engineers" i.e.
testers lately, that seem to think that quality is all about passing
acceptance tests with no immediately visible defects) is that quality is
not about testing or merely meeting requirements.

It really is about all those other aspects listed in ISO 9126 and
mentioned by Robert Glass.

I think more communication with the customer, or more focus on what the
customer wants is a bit of a read herring. All they want is a big ball
of mud that passes its acceptance tests with no immediately visible
defects. I guess six months later they also want that tricky sporadic
bug fixed, or that small feature implemented, but right now they don't
understand why the tight coupling between the gui and db make that
difficult.

We need real QA engineers or managers (testers do QC at best). Payers
back of technical debt, separators of concern, upholders of Demeter's
law, not failed coders who can click a "Test" button and determine that
all the green lights indicate quality in some way.

Oh and regarding portability, it is important. Not just porting to other
operating systems, which is what most people think, but for example,
porting the persistence concern to a new version of the dbms, or a new
dbms entirely, while leaving the software itself unchanged, or updating
the gui with a new look while keeping the core business logic unchanged.
Even if this isn't planned for, quality software makes it at least
possible.

Mike Bria

unread,
Mar 30, 2009, 5:56:43 PM3/30/09
to software_cr...@googlegroups.com
It's just this "X-itlity" hoopla that drives me further to assert (as I have in the blog that I posted to start this convo) that thinking of "Quality" in our business is a never-ending sink hole.

Specifically...my further refinement of my observation might be that we distinguish at least these two factions of "quality":
- Product Quality, which is what in my blog I call "Quality", ie. "consumer-driven value addition".  From another thread:  it's the "microbrew" vs "mass-brew" factor
- Code Quality (or, software quality?), which is what from my blog "shittiness" would fall under

For reference, here is the exact Glass quote:
<<
First, what do I believe quality is? (Given the number of “you never defined the term” comments, obviously I didn’t do this one very well.) I believe very strongly in this nearly-40-year-old definition. Quality is a collection of “ilities”: 
-reliability - the ability to operate error free 
-modifiability - the ability to have enhancement changes made easily 
-understandability - the ability to understand the software readily, in order to change/fix it 
-efficiency - the speed and compactness of the software 
-usability - the ability to use the software easily 
-testability - the ability to construct and execute test cases easily 
-portability - the ability to move the software easily from one environment to another 
(Note that in the previous column, I failed to mention “efficiency.” Although it doesn’t end in “ility,” that was a serious omission.) 
>>

My "shittiness" metric maps most directly to "reliability", at least as I originally wrote of it in the blog.
One step removed (but still a measure of Code Quality) are  "modifiability", "understandability", and "testability".

FWIW, it is the ability to develop code with high degrees of these 4 things that I believe is what largely defines a *Craftsman*.  I suppose further then that it's my thinking that its problematic to consider any of these measurements of "Quality" at all - that they should should fall more under degrees of "Professionalism"...or, heck, even Craftsmanship.

It appears only "efficiency" and "usability" (and "portability"?) then talk to Product Quality - the thing I'd prefer us to think of when we speak of "Quality".

TBH, after saying all that, not even sure where my head is with this anymore.  Maybe someone can clarify my thoughts for me?... 

John Goodsen

unread,
Mar 30, 2009, 6:08:47 PM3/30/09
to software_cr...@googlegroups.com
"Quality is in the eyes of the beholder" is the mantra I chant.

Sent from my iPhone

Mike Bria

unread,
Mar 30, 2009, 6:42:05 PM3/30/09
to software_cr...@googlegroups.com
That's nice and all, motherhood & apple, ya know.

BUT..I'm with Brett on this one (as if that's not already obvious).

I think that allowing "Quality" to be this wishy-washy umbrella word
has led our industry into a funk that doesn't pay enough serious
attention to what it means by "quality". Further, that it has led us
to lose all real meaning for what it should mean.

I'm hoping we can get more attention to not saying "quality", but
rather say things that actually put spotlights on what we're actually
talking about (be it "value", "defectiveness", "reliability",
[X]-"ility", or whatever).

Cheers
MB

On Mar 30, 2009, at 6:08 PM, John Goodsen wrote:

> "Quality is in the eyes of the beholder" is the mantra I chant.

J. B. Rainsberger

unread,
Mar 30, 2009, 7:46:12 PM3/30/09
to software_cr...@googlegroups.com
On Mon, Mar 30, 2009 at 14:30, Brian Marick <mar...@exampler.com> wrote:
>
> On Mar 28, 2009, at 9:13 PM, mheusser wrote:
>
>> Jerry's Weinberg's line is "Quality is value to some person."
>
> To everyone but me, that line is an Aha! moment, but I've never gotten
> it. What does it mean? If quality is value to some person, what is
> value? Quickbooks has no value to me: what does that say about its
> quality?

The "aha!" moment comes from realizing that there is no single
objective quantifiable measure of quality, but rather, as Wikipedia
puts it --

This definition stresses that quality is inherently subjective -
different people will experience the quality of the same software
very differently. One strength of this definition is the questions it
invites software teams to consider, such as "Who are the people
we want to value our software?" and "What will be valuable to them?"

When we stop chasing objectively measurable quality, we come back to
trying to satisfy specific people, I posit that helps us deliver more
appropriate, more profitable software.
--
J. B. (Joe) Rainsberger :: http://www.jbrains.ca
Diaspar Software Services :: http://www.diasparsoftware.com
Author, JUnit Recipes
2005 Gordon Pask Award for contribution to Agile practice
Register for Agile 2009 at http://www.agileregistration.org

J. B. Rainsberger

unread,
Mar 30, 2009, 7:49:24 PM3/30/09
to software_cr...@googlegroups.com
On Mon, Mar 30, 2009 at 19:09, Brian Marick <mar...@exampler.com> wrote:
>
> On Mar 30, 2009, at 9:53 AM, hotfus...@gmail.com wrote:
>
>> Seems to me the definition leads to the conclusion that, *to you*,
>> QuickBooks has low quality. And that's a valid conclusion.
>
> To me, QuickBooks has low value. It seems bizarre to say that,
> therefore, to me it has low quality. How, then, could I say that it's
> a bug-ridden pile of dung with a user interface to match - but it's
> nevertheless worth what I paid for it?

If it's worth what you paid for it, then how is it low value?

Mike Bria

unread,
Mar 30, 2009, 8:57:36 PM3/30/09
to software_cr...@googlegroups.com
AHA! (pun intended :-)

So, what I'd like us to focus on recognizing from this (particularly
what JB says below) is that "quality" is subjective to the people
using the software (agreed, all good with that), BUT that you'll
notice this subjectiveness revolves around "value".

That is he point of my post.

Defectiveness (bugs, etc) is what I see everywhere I go as the #1
thing people are referring to when "quality" hits leads the
conversation/graphs/metrics.

That's wacked. We've let ourselves cover our
irresponsible-development habits/results (broken software, bugs, bad
craftsmanship) under a label which is allowably subjective, and
intended to be focused on value.

I think this is a root of dysfunction in the majority of our business,
and one we'd do well to dissuade if we would like to see the ideas of
"craftsmanship" prosper.


Cheers
MB
================
My rants @ http://aydsoftware.blogspot.com/

My co.'s fantabulous XP eLearning @ http://industriallogic.com/elearning/

Mike Bria

unread,
Mar 30, 2009, 9:14:12 PM3/30/09
to software_cr...@googlegroups.com
Right on. I'm with you. I'm just trying to say, really, that for the
"bug-ridden pile of dung with a user interface to match" situations we
don't use "quality" (high, low, or purple) to describe that.
--
Cheers
MB
================
My rants @ http://aydsoftware.blogspot.com/
My co.'s f'ing sweet XP eLearning @ http://industriallogic.com/elearning/
Reply all
Reply to author
Forward
0 new messages