ASSERT(AbiWord 1.0 != Word 2002)


Subject: ASSERT(AbiWord 1.0 != Word 2002)
From: Paul Rohr (paul@abisource.com)
Date: Tue May 01 2001 - 15:46:46 CDT


I'd like to suggest that if you asked anyone on this list whether we should
wait to release AbiWord 1.0 until it had each and every feature of Word
2002, they'd say:

  "No."

Indeed, I suspect that most people would think that this is a ridiculous
idea -- Word has been getting bloated with more and more features for
approximately, what, 20 years now? Why would we want to wait to ship our
first release until it reaches that bloaty stage?

Instead, it makes sense to release a "reasonable" subset of those features
that most people use. The problem we seem to be tripping over here is how
to define what that first stab at "reasonable" will be.

In particular, if you ask a slightly different question -- should we include
all of Word 2002's features in AbiWord 1.0? -- most people would give a more
specific answer:

  "No, just the subset *I* use."

That leads us to two problems:

1. We all use different features. Sure, there are power-users who really
need every single one of the following "advanced" features:

  - footnotes,
  - equations,
  - legal citations,
  - complex tables,
  - etc.

I've gotta admit that I'm not sure I'd want to meet such a person in a dark
alley -- and not just because AbiWord can't meet all her needs yet. ;-)
However, most people only use a subset of those, and not even on a regular
basis. Thus, how do you pick and choose which subset is "reasonable"?

2. More importantly, we don't currently have developers ready to fully
implement all of those features. While we can come up with clever partial
solutions to corner cases of some of those features, getting them fully
implemented so they Just Work can be a significant effort.

a pragmatic solution
--------------------
I'm the one to blame for the 1.0 feature set because I picked it.

Fans of AbiWord who've been watching for a while will notice that the
definition of what goes in 1.0 hasn't changed much in a long long time.
Here's that definition:

  Finish (or omit) the existing unimplemented menus.
  Fix known bugs.
  Add any cool new stuff that gets finished in the mean time.
  Make sure the documentation matches what's in the product.
  Ship that puppy!

If you'd looked at AbiWord two years ago, you'd have seen a much simpler
product which couldn't do anywhere near as much -- but with almost the exact
same menus. At the beginning, far too many of those menus brought up the
infamous "not implemented" message, but the target all along has been very
clear.

Specifically, the following features were all deliberately included in 1.0:

  - Word import
  - spell-check with squiggles
  - infinite undo
  - sections and columns
  - simple fields
  - etc.

The following features were all deliberately excluded:

  - tables
  - footnotes
  - normal view
  - outline mode
  - embedding
  - macros
  - table of contents
  - etc.

why these features?
-------------------
When you start comparing where the 1.0 line got drawn, you'll notice a
consistent pattern -- we chose to do the common set of features that *every*
word processor user knows how to use, plus a few tasty tidbits that we
couldn't resist because it was too easy to make them Just Work.

Some of those features (such as infinite undo) were fiendishly difficult.
Others (like reliable squiggles using ispell dictionaries for 20+ languages)
were just plain ugly under the hood. Many (especially the translations and
all those dialogs) weren't conceptually difficult, but took a lot of
distributed effort to get them to Just Work on all our supported platforms.

In each case, there was a pragmatic decision to focus our efforts on
ensuring that a specific core set of widely-used features would all Just
Work.

Everything else got excluded. We assessed the total developer talent
available, and chose *not* to focus on any feature which wasn't used by the
overwhelming majority of word processor users. I can't overemphasize how
important this deliberate focus was (and still is). Many of the features we
deferred will be significant work, and there are still only a small number
of developers who are familiar enough with the guts of this program to get
that work right.

Of course, as we thought about various ideas, some of them got written up as
POWs. And what do you know -- free features! Ditto for importers and
exporters: we just designed the APIs, and new folks started implementing
them. Other stuff we punted on entirely -- such as encoding management and
BiDi -- figuring that they wouldn't get done correctly until we found
someone talented enough to dive into the sources and make all the fixes
required. Guess what? That happened, too!

So what's the net effect of that relentless focus? We now have a product
that is tantalizingly close to reaching that original goal. It also has a
number of additional features that we never counted on.

bottom line
-----------
I claim that for many of the hundreds of thousands of people who currently
use AbiWord, the best thing we could do is release a polished, bomb-proof,
speedy implementation of the many, many useful features we already have.

I'll be proud to call that product AbiWord 1.0, and brag to anyone who'll
listen about what a tremendous accomplishment this has been. We started
from nothing, built a talented community of developers, translators,
writers, evangelists, and users. We built a product that runs natively on
almost every important desktop platform, and can be ported to anything we
missed.

Most importantly, every feature that we've implemented *so far* Just Works,
because we've taken the time and pain and sweat and effort to make sure that
it does. [ Insofar as this isn't true today, any known exceptions should be
logged in Bugzilla so we have a chance to fix them before 1.0 ships. ]

Sure, AbiWord 1.0 doesn't have every feature that Word 2002 has. They had a
20-year head start, after all. If that means that users still want to spend
billions every year paying for some other product, they have the right to
make that choice.

However, we'll also be happy to point out that if they really want software
that they'll:

  - love to use and
  - like paying for ...

... well, we can think of better places for them to send that money. :-)

Paul,
the original AbiWord advocate

PS: OK, you can hose me down now.



This archive was generated by hypermail 2b25 : Sat May 26 2001 - 03:50:59 CDT