Benjamin Geer on Sun, 21 May 2000 18:24:11 +0200 (CEST)


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

Re: <nettime> OFSS01: First Orbiten Free Software Survey


On Fri, May 19, 2000 at 06:18:18PM -0700, Amy Alexander wrote:

> The project mailing lists are generally populated by programmers,
> not end users, with rare, apologetic posts from non-technical
> end-users.

A sad state of affairs, I agree, but one that could be remedied if
more end-users joined in.

> More than once I've written to the author of an open source program
> or posted to the mailing list, and said, "I've read the docs and
> haven't figured out - can it do so-and-so?" and had them respond,
> "Hey, great idea, why don't you write the code for that?"

True, this is the standard response, but there's a reason for that.
Since there are so few non-programmers on those lists, if you post
something, it's assumed (however rashly) that you're a programmer and
could therefore probably contribute the feature, if you were willing
to do so.  Many programmers are accustomed to seeing software as a
consumer product, rather than as the work of a community of which they
are a part.  When they encounter open source, they view it as being
exactly like commercial software, only free of charge.  And when the
software doesn't do what they want, they post messages to the list
asking the developers to add features, just as they do with commercial
software.  Since they don't have the reflex of thinking, `Could I add
this feature myself?', the standard response, `Please go ahead and add
it,' exists as an attempt to snap them out of their consumer mindset.

> Many open source apps seem to be written with little expectation
> that there *is* an end-user, except that the end-user him/herself
> might program something useful out of the source code. Maybe the
> end-user should be renamed the "end-programmer". :-) ...

It's true that a lot of effort has gone into writing software building
blocks (libraries, toolkits, etc.) in the past few years.  I think
there's one main reason for this.  People want massively distributed,
highly fault-tolerant systems that handle immense numbers of
concurrent users; they want this on slow, unreliable networks; and
they want it in three months.  To accomplish this, you need a high
level of cooperation between many different types of systems.  At the
same time, operating-system vendors and others have been selling
similar but incompatible tools in an effort to exclude one another
from the market.  This has made a difficult job nearly impossible.
The current widespread movement to create standards via consensus can
be seen as a revolt against this situation.  Once you have a standard,
you then have to spend a while writing tools that implement it.

> but, with the open-source stuff, there seems to be an inordinate
> percentage of apps that seem to be end-user apps on the surface, but
> which then turn out to be "some-assembly-required" sorts of things.

I can see a few reasons for this:

* A lot of projects never get finished, because the authors have to
  put them aside in order to do paid work.

* Most programmers are terrible at writing documentation, so a lot of
  projects are documented poorly, if at all.  (I'd say that the most
  frequent item in lists of `Things you could do to contribute' is
  `Write documentation').

* For some people, the fun ends when they've solved the basic problem
  involved in getting something to work.  Polishing it up so that it's
  easy for others to use doesn't interest them.  With luck, these
  projects sometimes get passed on to people who want to finish them.

> But another part of the problem may be cultural - meaning, geek
> culture.  Many a slashdot, et al, discussion has centered on true,
> pure, geekdom as meaning that one codes for the pure love of coding,
> not to achieve a goal.

Perhaps, but hacker culture also has the idea that programs should
`just work', that they should do the Right Thing, that they should
work `out of the box'.  Perl, one of the most worshipped open-source
programs, is permeated with this idea.  It's also expressed in the
efforts that have gone into creating ways for programs to adapt
themselves to the environment in which they find themselves (autoconf,
automake, etc.)

> one thing that's very significant here is that there is quite a bit
> of incentive in terms of ego gratification (and potential for career
> enhancement through reputation-building) for people who code things
> that are *not* for end-users, and not so much for people who code
> things *for* end-users.

I suspect that this is simply because there is a widespread (though
rarely stated) sense that operating systems and libraries involve (and
perhaps should involve) greater technical challenges than desktop
applications.  My own instinct tends to be that if an end-user program
contains a component that's very challenging to write, that component
should be moved into a library so it can be reused.

> All that said, the open-source movement seems to be waking up,
> albeit slowly, to the needs of the end-user. The article at
> http://sendmail.net/?feed=interviewkuniavsky entitled "It's the
> User, Stupid", was interesting.... It was ironically, posted on the
> website of sendmail, one of the most notoriously difficult-to-use
> open source programs....  c) The article, addressing basic usability
> issues, appeared in January 2000. Just curious - what took them so
> long?

They were probably avoiding the issue because they know that, in the
case of sendmail, user-friendliness is a lost cause. :)

But why not consider KDE or GNOME, two high-profile projects that have
made huge efforts to appeal to non-technical users?

Ben

#  distributed via <nettime>: no commercial use without permission
#  <nettime> is a moderated mailing list for net criticism,
#  collaborative text filtering and cultural politics of the nets
#  more info: majordomo@bbs.thing.net and "info nettime-l" in the msg body
#  archive: http://www.nettime.org contact: nettime@bbs.thing.net