Java Forum / First Aid / August 2007
Java App for an Online Experiment
Guillaume Cabanac - 23 Aug 2007 08:32 GMT Hi guys,
I am a PhD student in Computer Science, studying human perception of consensus in threaded discussions (like in Usenet and Web forums).
In order to experiment this with real people online (see below for more details), I have developed a Java/Swing application coupled with an Oracle relational database.
I am currently looking for people to take part. If you are interested, feel free to Java Web Start the experiment from http://www.irit.fr/~Guillaume.Cabanac/expe .
Do not hesitate to send me your feedback and comments :) Thank you in advance.
------------------------------------------------------------------------- Guillaume Cabanac http://www.irit.fr/~Guillaume.Cabanac PhD student in Computer Science IRIT - Computer Science Research Institute of Toulouse University, France Information Systems team
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*==
** What is The Task of a Participant in This Experiment? **
In the proposed experiment, a "participant" has to evaluate 13 argumentative discussion threads (a discussion thread is a tree whose nodes contain people's statements; they are chronologically organized as in Usenet or Web forums). You can see a screen capture of a discussion thread evaluation here: http://www.irit.fr/~Guillaume.Cabanac/expe/example.png.
Evaluating a discussion thread requires 2 steps:
1. The participant labels each node by identifying its *opinion*: does the node confirm (pro), refute (against) or is neutral regarding its direct parent? On the screen capture, the participant has labeled the nodes thanks to the "flag" buttons (nodes are then displayed in color). For example, Tom refutes Bob, which is refuting Alice.
2. For each replied node, the participant synthesizes the opinions of its replies. This *mental synthesis* value ranges from refutation to confirmation. On the example, the participant feels that Bob's statement is rather confirmed, and Alice's one is almost refuted.
** What is The Aim of This Experiment? **
The main aim of this experiment is to compare i) mental synthesis of opinions that are expressed within discussion threads with ii) the results of the 2 algorithms that we have developed.
These algorithms take as input an opinion-labeled discussion thread, they compute a value that corresponds to the synthesis of the opinions, ranging from "the root statement is refuted" to "the root statement is confirmed". The first algorithm computes a statistical score whereas the second one is based on a AI research framework (bipolar argumentation framework). If you are interested in these algorithms, I may send you a research paper (RIAO'2007) upon request by mail.
A minor aim is to check if people label the discussion thread in the same way (step 1).
** Possible Applications of This Research **
The main topic of my Computer Science thesis work is "digital annotation" on the Web where amounts of digital documents are freely accessible. With a classical Web browser, people are rather passive as they can only read documents. Indeed, one cannot indicate a mistake he has found, ask a question, link the document to another one or simply express his thought.
In order to enable people to interact with a digital document, "annotation systems" have been developed since the early 1990's, cf. (Wolfe, 2002, http://dx.doi.org/10.1016/S8755-4615(02)00144-5). Such software make it possible to annotate every digital document the same way as paper, for personal purposes, e.g. critical reading, proofreading, learning, etc.
Moreover, as modern computers are networked, digital annotation can be stored in a common database. This makes it possible to display a document along with its annotations that may come from numerous readers all over the world. Then readers can reply to annotations and also to replies, forming "discussion threads" that are displayed in the context of commented documents.
When documents are massively annotated (see a video demonstration (http://g.cabanac.free.fr/publications/2005-11-IWAC/demoAmaya.wmv) with the Amaya annotation system) and discussed (each annotation can spark off a discussion thread), it seems to me that the reader is overwhelmed. Reading an annotation, its replies that are hierarchically organized and synthesize their opinions is a difficult task.
In order to overcome this problem, annotation systems could compute the "social validation" of each annotation. This requires that annotators give an explicit opinion type to they annotations; NLP algorithms can also be applied, e.g. (Pang et al., 2002, http://portal.acm.org/citation.cfm?id=1118704&dl=GUIDE). Then, the reader can decide to focus on discussions that have reached consensus (totally refuted or confirmed). On the other hand, he may focus on ongoing discussions identified by a neutral social validation. Moreover, intra-discussion thread social validations may guide the reader that can identify "supporting" and "defeating" branches.
I hope that these explanations help to understand the aims of my experiment. Please, let me know what you think about this experiment.
Guillaume Cabanac.
Andrew Thompson - 23 Aug 2007 10:05 GMT ...
>I am a PhD student in Computer Science, studying human perception of >consensus in threaded discussions (like in Usenet and Web forums). ...
>I am currently looking for people to take part. If you are interested, feel >free to Java Web Start the experiment from >http://www.irit.fr/~Guillaume.Cabanac/expe . Normally I do not bother helping with survey's or research (at least, not for free). Your project interests me in that it is written in Swing and launched by JWS (two technologies in which I have an interest and experience).
So.. I surf on over to the linked page, get the link for the .JNLP and pull it up to look at it (which is something I would do for any 'unknown' webstart project before I even considering launching it.)
Then I see.. <all-permissions/>
..Uh-huh. Why does it need to all-permissions?
Note that most things such an interface might need to do, can either occur in a sandbox, or can use the JNLP API equivalent services (which again allows the app. to be sandboxed).
I think that you will have more success if the user does not have to make a decision about whether they trust this 'all-permissions' code.
The bottom line is that since I don't know you, or your level of either competence or trustworthyness, I am not prepared to let this code run on my system unless it is sandboxed.
 Signature Andrew Thompson http://www.athompson.info/andrew/
Guillaume Cabanac - 23 Aug 2007 10:51 GMT Hi Andrew,
> Then I see.. > <all-permissions/> > > .Uh-huh. Why does it need to all-permissions? Actually it only needs to establish a connection to the database server, via JDBC.
It seemed to me that it is possible to let the app in the sandbox while allowing it some privileges via policies, that the user has to accept. However http://lopica.sourceforge.net/faq.html#policy tells the contrary. Alas I had no time to search more info on that... Maybe you can give me a URL or explain me how to avoid this all-permissions issue.
Thanks.
Guillaume Cabanac
Andrew Thompson - 23 Aug 2007 13:43 GMT >> ...Why does it need to all-permissions? > >Actually it only needs to establish a connection to the database server, via >JDBC. If the DB is coming from the same domain as the app., it can do it in a sandbox.
>It seemed to me that it is possible to let the app in the sandbox while >allowing it some privileges via policies, .. Uggh.. 'policy files' FTR, that was never what I was referring to. It is *theoretically* possible to alter the ploticy files to allow ..anything, but it is not something I would expect the average end-user was capable of, nor that I would recommend they try.
No. I was referring to the JNLP API servise to do things like access the local file system, store preferencs, or access the printer.
None of this sounds relevant to your app., but if your interested, you can see some examples here.. <http://www.physci.org/jws/>
>...that the user has to accept. >However http://lopica.sourceforge.net/faq.html#policy tells the contrary. Yes. The lopica alternate JWS FAQ is a damn fine document, but in that section, it is not referring to the JNLP API that I was thinking of.
 Signature Andrew Thompson http://www.athompson.info/andrew/
Guillaume Cabanac - 23 Aug 2007 14:29 GMT >>> ...Why does it need to all-permissions? >> [quoted text clipped - 4 lines] > If the DB is coming from the same domain as the > app., it can do it in a sandbox. Unfortunately it is not the case: the HTTP and DB servers are from distinct domains.
>>It seemed to me that it is possible to let the app in the sandbox while >>allowing it some privileges via policies, .. [quoted text clipped - 13 lines] > if your interested, you can see some examples here.. > <http://www.physci.org/jws/> Ok. So, the only solution for running my app sandboxed seems to imply a unique domain.
Thanks for mentioning the JNLP API (although it doesn't help right now).
Guillaume
>>...that the user has to accept. >>However http://lopica.sourceforge.net/faq.html#policy tells the contrary. > > Yes. The lopica alternate JWS FAQ is a damn fine > document, but in that section, it is not referring to the > JNLP API that I was thinking of. Guillaume Cabanac - 28 Aug 2007 07:42 GMT > If the DB is coming from the same domain as the > app., it can do it in a sandbox. Hi,
Do the application and DB have to be from the same *domain* or *host* (as it is mentioned in the JWS FAQ http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/faq.html#113) ?
<quote> If an application is written to run in a restricted execution environment (sandbox), then access to disk is not permitted and the application may only connect to the host on which it resides. </quote>
Thanks.
Guillaume Cabanac
Andrew Thompson - 28 Aug 2007 09:07 GMT >> If the DB is coming from the same domain as the >> app., it can do it in a sandbox. ...
>Do the application and DB have to be from the same *domain* or *host* (as it >is mentioned in the JWS FAQ I was almost about to mention before, that I was not sure of the distinction between domain and host, and why not give it the acid test of putting up a second JNLP that tries a sandboxed launch?
Note their might also be a third possibility that when data is requested off a different domain/host, the Plug-In pops a message asking the user if that is OK.
I was surprised to see this 'allow on prompt' behaviour on a socket based example I worked on recently, and hazilly recall seeing it in a JEditorPane example that was browsing 'any old URL'.
 Signature Andrew Thompson http://www.athompson.info/andrew/
Guillaume Cabanac - 28 Aug 2007 11:21 GMT >>> If the DB is coming from the same domain as the >>> app., it can do it in a sandbox. [quoted text clipped - 5 lines] > I was almost about to mention before, that I was > not sure of the distinction between domain and In my view a domain (foo.com) gathers multiples hosts (a.foo.com, b.foo.com, etc.).
> host, and why not give it the acid test of putting > up a second JNLP that tries a sandboxed launch? Alas the DB server and HTTP server I use are from distinct domains, and currently I cannot change that. Therefore I cannot test this.
> Note their might also be a third possibility that when > data is requested off a different domain/host, the > Plug-In pops a message asking the user if that is > OK. I have tried to launch the JNLP after removing the "all-permissions". Alas I get this exception from the Oracle JDBC driver:
java.security.AccessControlException: access denied (java.util.PropertyPermission oracle.jdbc.FastConnectionFailover read)
> I was surprised to see this 'allow on prompt' behaviour > on a socket based example I worked on recently, and It is a nice feature. Do you know in which version of JWS this mechanism has been introduced?
> hazilly recall seeing it in a JEditorPane example that > was browsing 'any old URL'. Guillaume Cabanac
Andrew Thompson - 28 Aug 2007 15:41 GMT ...
>> I was surprised to see this 'allow on prompt' behaviour >> on a socket based example I worked on recently, and > >It is a nice feature. Do you know in which version of JWS this mechanism has >been introduced? AFAIU, it comes down to the parameters in the policy files distributed with the runtime. At least that is what I am guessing, have not had the time to look into it closely.
 Signature Andrew Thompson http://www.athompson.info/andrew/
Lew - 23 Aug 2007 13:40 GMT > ... >> I am a PhD student in Computer Science, studying human perception of [quoted text clipped - 31 lines] > of either competence or trustworthyness, I am not prepared > to let this code run on my system unless it is sandboxed. The OP will help the trust issue by not multiposting, also.
 Signature Lew
rhino - 23 Aug 2007 19:42 GMT > Hi guys, > > I am a PhD student in Computer Science, studying human perception of > consensus in threaded discussions (like in Usenet and Web forums). Just curious: is it typical for a PhD student at a French university to write his dissertation in English?
-- Rhino
Guillaume Cabanac - 24 Aug 2007 08:22 GMT Hi Rhino,
> Just curious: is it typical for a PhD student at a French university to > write his dissertation in English? To my knowledge, a PhD dissertation from a French university must be written in French. I really don't know if dispensations are granted. What is amazing is that PhD students must have papers in international conferences and journals (thus in english) in order to defend...
Another difference compared with abroad is that a French PhD student defend their theses in public : everybody can attend.
Guillaume.
Patricia Shanahan - 24 Aug 2007 17:02 GMT ...
> Another difference compared with abroad is that a French PhD student defend > their theses in public : everybody can attend. ...
I'm a student at UCSD. When I defend my, as yet unwritten, Ph.D. dissertation it will be, at least theoretically, in public.
Patricia
Free MagazinesGet these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...
|
|
|