[jsword-devel] Bible Desktop Vision and Strategy

Jonathan Morgan jonmmorgan at gmail.com
Mon Mar 9 04:52:03 MST 2009


I'll just start by saying that I don't necessarily see the goals as
wrong, just that they may have minor problems or be over idealistic.

On Sat, Mar 7, 2009 at 3:17 AM, DM Smith <dmsmith at crosswire.org> wrote:
> Here is a starting point for a new statement. Your feedback/input is very
> welcomed.
>
> Vision:
>   Users of Bible Desktop grow closer to God as they explore and study God's
> Word since can be tailored to be their favorite Bible application.

Bear in mind that most users don't want to have to tailor an
application, and often won't at all.  Being configurable is nice, but
the default layout has to be good because that's what a lot of people
will judge and evaluate the software on.

> Strategic goals: (Bridges the vision with user expectations of Bible
> Desktop)
>   Reliable - Everything works as expected, without bugs and without
> surprise.
>   Adaptable - The user is able to adapt Bible Desktop to their work flow.
>   Simple - Make each feature of Bible Desktop as simple as possible but no
> simpler. Each feature should be so obvious that it does not detract from
> God's Word.
>   Complete - Bible Desktop does everything a user could ever want in a Bible
> Application

That is impossible (though there is nothing wrong in working towards
it).  It is my firm opinion after many years of software development
that software can only do everything you might want if you don't have
enough imagination.

>   Extensible - If Bible Desktop doesn't do everything, it is simple for a
> developer to add the missing feature to Bible Desktop.
>
> Tactical: (How user expectations of Bible Desktop are achieved.)
>   Reliable
>       Reported bugs are responded to immediately, determining the earliest
> possible release in which they can be fixed.
>       Confusing features (i.e. surprising behavior) is dealt with as soon as
> possible. This may be indicative of a problem with the manual.

But bear in mind that many (most?) will not read the manual.

>   Adaptable
>      The user can choose which features are part of the desktop.
>      The user can choose the placement of those features on the desktop.
>   Simple
>      Simplify the reading of book content. The structure and organization of
> a book should not get in the way. Some kind of page flipping is suggested.

I don't believe page flipping simplifies the reading of book content.
I could elaborate on that at length, but I don't think it necessary.

>      Simplify the lookup and search of book content, by deducing what the
> user wants to do and by searching the entire library of installed books.
> Based upon user input suggest possible outcomes.
>      Simplify the linking of different modules together. E.g. Tying of
> Bibles and Commentaries, linking text to dictionaries, ...
>   Complete
>      Add features as requested.
>      Add features that are known to be missing (see
> http://www.crosswire.org/wiki/Frontends:FeatureList).
>   Extensible
>      Use a plugin model to add features.

The whole is more than the sum of the parts.  In order to make a good
extension it must not just "add a feature", it must add that feature
in a way that is consistent with the application and that cooperates
with other features, though I don't know any really good way to make
that happen (refer to your statement about surprises above).

>      Encourage contribution and collaboration.

Important.

Jon



More information about the jsword-devel mailing list