Goals Summary

Kyle Hayes kyle@putput.cs.wwu.edu
Wed, 9 Nov 1994 17:43:33 +0800

End Users:

The idea of end users needs to be approached carefully.  Right now, 
what end users want is assurance that Windows 4.0/Cairo/Windows95
will actually be out on time.  This is not a joke.  90% of the total
"end user" population couldn't care less about what we are trying to
do.  However, there are a lot of developers who would love to be
able to build on MOOSE TUNES and use all the goodies.  It might be
useful to decide what we mean by end users.

My spin on things:

I think we should initially target a relatively sophisticated audience
at first.  These are the people who will be impressed positively by
what MOOSE TUNES can do rather than negatively impressed by the fact it
can't run cc:Mail or Lotus Notes.  This is the initial target.  While
I agree that we should be able to provide (or give access to) a suite
of "productivity 'ware" like wordprocessors etc., it seems very unrealistic
to think that we could actually write a full distributed system that runs
on multiple platforms and write all the user apps too.  No offense, but
I don't have that high an opinion of our abilities.  Maybe we are all
the greatest programmers who have ever lived, but somehow I just don't
think even that would be enough.

If you can't get 100% of your idea sold, maybe you can sell 90%.  NeXT
has had a lot more luck selling OpenStep as a concept (and a product)
than they have with NeXTSTEP.  Sun, HP and DEC are buying it.  Rumors
have it that Gates is buying it.  If we want to sell, we may have to
compromise a bit on the edges.  Maybe we will have to write something
that works over other standard OSs.  Maybe we should writ the OS end
and a POSIX/Mac/Windows compatibility suite and go the other direction.

I think Mike did a great service in putting together all the comments
people had.  I think that I have managed to condense these down a bit
to some of the essential points.  There was a lot of repetition and I
have tried to remove it where possible.

My condensation of the goals is this:

End Users/Marketing Goals:

- must be a friendly intuitive UI
- must have a lot of productivity apps (mail, wp, spreadsheet, ie necessary
- must fill a strategic niche (i.e. choose our customers well)
- must be maleable (no set ui, easy to personalize)
- use all the available resources (over net too)
- all the above must remain constant over all platforms (who cares what
  hardware they are using).  My app here runs on all my platforms.  No
  multiple shrinkwrap copies.

Notice that some of these could be a bit contradictory.  That shows up
in other places too.  This is perfectly normal.  If there was no 
contradiction, wouldn't we all do things the same way?

Programmers/Marketing goals (Mike, any reason Marketing shows up twice?):

- must have a good development environment
- must be able to use all available resources (look above too)

Now comes a section Mike called methods.  I think that it is more of a
grab bag or wish list.  I think that most of these are parts of the 
above goals and will only include the ones that somehow stand out
(to me) as not fitting any of the above.  Most of these ideas were
for how to implement the goals above.  As such, we need the 
list that Mike made and to keep everyone's comments.  I have kept
all the traffic on this group with the exception of things from last
Sunday (mail hiccup).  I don't really have time to go through it all,
but I can send it to someone who is willing...

- persistency:  This is not really addressed by the above, it could be
  considered to be part of the user friendliness thing.  Critics loved
  the way the Mac saved its state when you shut it down...  This takes 
  all that one step further, not only is the ui the same, but the apps
  and all objects in the system are exactly the way you left them.

(lots of good implementation stuff snipped, OO, intermediate languages,
client server etc.)

I really think that most of the stuff that went into this section doesn't
have much to do with goals.  I really _like_ the ideas I am seeing.  People
have obviously been thinking a lot about this.  A lot of the ideas are
still pretty raw and could use a trip through a few FTP sites to find
similar work, but in general there is an increasingly high signal to noise
ratio here.


My thought was that this was the goals section.  I had not thought out
the end user stuff much and it shows in the scewed nature of some of
my comments.  I would break down a lot of this stuff further into two

Implementation/Design Guidelines:

- separate mechanism from policy
- support standards where feasible
- simple, portable strategies (a very good point I think)
- include marketable things, not gee whiz features

Organization Guidelines:

- keep the overhead to a minimum
- need balance between decision making speed and fairness
- projects need to be able to share ideas/code/beer
- projects need to be independent due to 'net constraints
- keep marketing in mind, "It must sell well"
- we need a name

I hope that I have managed to present the basic ideas that went out.  I
tried to paraphrase them where I though that several people said the
same thing.  I intentionally left off attributions.  On most of these
points too many people participated for me to feel comfortable with putting
only one name on an idea.  Well thought out negative comments are very 
helpful to nailing an idea down too.  I think that Mike should continue
to put names to things because he is just listing what people said, not
trying to make too much of a synthesis with it.

We are getting there, the organization stuff is starting to generate
silence or assent.  I assume that means people are tacitly agreeing with
what is being proposed.  It would be nice if there was a way to tell 
whether people agree or disagree silently but there isn't.  The goals
are starting to boil down to some hard issues.  I like the emphasis on
marketing.  I think that will be a powerful tool to help make decisions.