Cocoa, the development of Words, and other software projects (including those dang assessment tasks).
To solve the problem of the computer getting to know what words you
know and thus don't know.
You have to distinguish between two or three ways:
1. Users completely learning from scratch.
2. Users who already know some words.
or
3. Users who know a little bit.
In case 1, you can afford to assume that the user, and the computer know nothing. Learning Finnish, for example. Therefore the original idea of building a list of words
that the user knows and doesn't know will work. This will be the case
in many cases, however as in
Case 2, the user is a native speaker or knows a bit already, and
therefore the computer wouldn't be able to be brought to that level
without a whole lot of kerfuffle, which would ultimately drive the
user away. So the solution I thought of while in the bath is to have
the user indicate the unknown words with a double click copy kind of
thing, so that the computer can know at least something about what
the user knows and doesn't know. The entire text can still be parsed,
and only the words that were clicked will be added to unknown, the
others to known. This should happens in both case 1 and case 2,
although in case 2 it is more integral to the solution (in a subtle
way).
So 一から users are assumed to know nothing, all words are new.
All other users are assumed to know everything, and required to
indicate the words they don't know. The words they don't indicate,
are assumed to be known.
Users should be asked what case they are during language setup, so
that Words knows how to handle text input, and how to manage the
dictionary.
After time, a text will automatically show words you know / don't
know, and then the list will refine as you click on individual words.
--
The above functioning must be thought out well, as it is very
important functioning for Words. Slowly I am ironing out the
difficulties. I think with this latest bath-think, I have tackled the
problem of getting the computer to know you.
--
It's important to distinguish between daydreams that are realizable
and those that are fantasy.
...Design with "Cinema Paradiso" playing and in mind...
I am leaving the specifics of the GUI design to the spec document.
Let's get this proposal finished. I know why this product needs to be
made, and why it will be useful. It has passed the checking that a
normal product would pass. Actually as I'm the one making all the
decisions, the main purpose of a product Proposal is defunct.
But as the saying goes:
Plans are nothing. Planning is Everything.
Doing this piece of writing really brought up some of the issues that
I hadn't thought about yet. (I'm not posting it here 'cause it is
kinda, ahem, sensitive information) And needless to say more issues
will arise in the specs as well. They did in assignment 3 for
cse1402, all those areas in the menus, ideas where things could have
been done better. All that comes out in the careful planning and
writing of Proposals and Specs for an application larger than, say,
fridge master (see cse1301 final assignment).
---
Words Product Proposal v1.11 completed, but perhaps rather unpolished
and all together unprofessional. But who cares for now. It's late.
And I want to get onto the spec.