Jupiter algorithm
March 23, 2007
after days, weeks and months, i finally found the algorithm that will help solve the consistency problem for our application. the jupiter algorithm is an improvement of dOPT (Distributed Operational Transform) algorithm which is suitable for a client-server environment and requires synchronization with a central server to manage all the changes on a document and broadcast the results to other clients. it does not require any locking mechanism, so it supports synchronous collaboration.
i just found out that ACE and Gobby uses it. good thing i also found an API for it in the ACE website. anyway, more on this later, since i’m still reading some articles about it.
c/o ariel
http://www.seas.upenn.edu/~cse400/CSE401_2006/Saviano/architecture.html
http://stanley.cs.toronto.edu/reports/2004-winter/collabauth-ae.html
waah!
March 6, 2007
computers anakin and c3po have no network… reah and i miss our computers.
hayy…sad
eh? (for lack of a better title)
March 6, 2007
sorry for the uber-late update. anyway, on my part–tabs, enter key, delete and backspace now works. currently working on collaboration (how to maintain consistency across all users). i’ve also disabled history/offline messages in multi-user chat because it’s not really necessary… once a user joins the room, the admin sends all the updates to the new user…
hmm… what else? i’m also updating the GUI to add the icons and sounds included in the application.
c/o ariel
so far..
March 4, 2007
we finished integrating the added packet collector and chat manager to the already existing application features. we’ve been working on text highlighting and weren’t able to make it work with JTextArea so we decided to switch to JTextPane instead. we are currently working on the needed changes on the collaboration since the two components have somewhat different functions. we still have to work on efficient color assignment though, now that the app has a chat manager. for now, we are thinking of limiting the number of users in a session to a certain number for basic assignment. we are also done with the display of the typing status of the participants in the session.