Meeting Notes for 11/05/2005 (Development Session)
- We have identified the major pieces of our software
- Editor (displays text, syntax highlighting)
- Transformer (controls text buffer, creates operations, transforms incoming operations, maintains state vector)
- Operation (contains: owner, state vector of owner, nature of operation)
- Chat engine (makes text chat work)
- After 20 minutes, we went and picked up Antonio's Pizza
- We decided State Vectors would simply be counts of operations by all connected users (separated per user)
- We talked about the lock system
- Automatic locks happen when you start typing or deleting on a line (that line is locked)
- Automatic unlock when you leave the line
- Simultaneous lock attempts are handled per the following rules
- The publisher always wins.
- If the publisher has no part, whoever first contacted the publisher gets the lock.
- If you lose the lock, your operations are rolled back.
- Inactivity for a short period of time causes an unlock
- Users will be able to long-term lock a larger section if they think it's appropriate
- Text Chat will be completely independent of the editing system; there is no good way to link them.
- We may consider a filter that identifies messages for different applications, outside of the transformer and the chat engine
- Incidentally, everyone present wants to make it stand-alone to start (Tack is happy)
NEXT STEPS: Present our determinations to the group on Tuesday, and start making these things happen in Java, one-by-one.
