[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

definition of "anti-feature"

From: bill-auger
Subject: definition of "anti-feature"
Date: Sat, 2 Oct 2021 11:07:47 -0400

the definition of "feature", added to the summary of the
anti-features' article, did not really clarify the issue raised
in the "Political messaging" thread - i presume the concept of a
software "feature", to be sufficiently well-understood by most
people - it is nearly synonymous with the common notion of
"behavior" - i believe that the "easter-egg" example is
difficult to capture, due to the definition of "anti-feature"

an anti-feature is not a feature to any user - "anti-feature"
should be defined strictly as: "any software functionality added
at the whim of the publisher, which has no obvious utility to
users of the software" - "anti-feature" carries no presumption
of malicious behavior, only that it is useless to the user (or
is generally not "what it says on the tin")

i believe that greg was suggesting, that an easter-egg is not
malicious and requires no warning - however any easter-egg is,
by its nature, an anti-feature, because it serves no purpose
related to any task, which the user is likely to be trying to
accomplish with that tool - there are many other common harmless
anti-features, such as "please donate" buttons, which people
generally tolerate

an easter-egg is a special case of anti-feature, which was
intended to be useless (eg: a joke) - if the program were a game
or other entertainment software, then an easter-egg could be
considered to be a legitimate feature (eg: if the user is
entertained by it)

per the wiki, that is why they are "undesirable from the user's
perspective" - more accurately: "all users' perspectives" - ie:
"this feature is plainly not applicable to the software's
primary problem domain"

if _any_ user of the software finds a legitimate use for some
functionality, within the primary task domain of the tool, then
it is not an "anti-feature" - that is a legitimate "feature",
which is not universally understood or appreciated
(controversial perhaps, but controversy notwithstanding)

the concept of "anti-feature" is also relevant to the FSDG, and
is defined loosely in that context also - i think it would
be most helpful to define "anti-feature" more explicitly and
uniformly for the FSD and FSDG, and to offer some guidance as to
which classes of anti-feature are acceptable (harmless
functionality), which should carry a warning (privacy-intrusive
functionality which some people may value), and which should be
removed entirely (malicious functionality)

i suggest a re-wording of the summary:


- The Institute of Electrical and Electronics Engineers defines
  the term feature in IEEE 829 as   "A distinguishing
  characteristic of a software item (e.g., performance,
  portability, or functionality)".


- Antifeatures are flags applied to applications to warn of
  issues that may be undesirable from the user's perspective.
+ Anti-features are software behaviors, which were added at the
  whim of the publisher, with no obvious utility to users of the
  software, within the software's primary task domain.


- Frequently it is behavior that benefits the developer, but
  that the end user of the software would prefer not to be there.
+ The behavior is often invisible and/or unknown to the user.
  Frequently, it is behavior which benefits the developer, but is
  orthogonal to or inapplicable to the software's assumed or
  advertised task domain.
+ An "easter-egg" exemplifies a harmless anti-feature;
  while a virus exemplifies a malicious anti-feature.
+ "Spyware" is another common type, which lies somewhere along
  that spectrum.
+ Another: "Automatic geo-location", exemplifies the subjective
  cases, of functionality in which some users may value, others
  may not, and yet others may find objectionable or inappropriate
  for the task at hand.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]