demexp-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Demexp-dev] 0.5 step closer to OCaml Summer of Code


From: David MENTRE
Subject: Re: [Demexp-dev] 0.5 step closer to OCaml Summer of Code
Date: Tue, 06 Feb 2007 20:21:55 +0100
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.4 (gnu/linux)

Hello Ketty,

I agree with Félix comments: the web client is heartly desired and
should structure your proposal around it.

BTW, you should read the FAQ before writing your proposal: 
  http://osp2007.janestcapital.com/faqs

ketty <address@hidden> writes:

> Webclient
> • make layout separate from content. (css etc)

Obviously. Basic separation is needed. No need right now for
sophisticated theming technology.

> • compare implementations using different web technologies (ocsigen,
> plain ocamlnet, more?)

And Gerd's WDialog, even if I'm not fond of it. Ocsigen seems the most
interesting web framework on the paper.
See also :
  
http://demexp.org/en/doku.php?id=web_client_development_framework#comparison_of_ocaml_frameworks


Comparison should be quickly done and not be the main goal of the
project. 

> • implement delegation (this needs the server to implement it first
> ^^)

I'm taking care of the server side (well, one day ;-).

Having it on the client side would be great.

> • basic filtering (posibly with help of special server)

Ability to go to a given question, to have an URL specific to a question
or a vote on question (like demexp:// URLs for the hard client). Ability
to use the basic tag hierarchy. 

> • persistent user data

You mean, things like the saving of voted and seen questions? This is
needed. 

> • persistent meta data

?? I haven't understood.

> • improve usability

Yes. Should work *without* Javascript (even if Javascript can obviously
be used to *enhance* user interface).

> • various missing features (like no support for setting date limit
> when creating question)

Yes, ability of limit date could be useful. I don't thing this is a very
difficult point.

Other points:

 * Should work with Apache over SSL (a no brainer for all OCaml's web
   framework);

 * Preferably, no need for SQL database. We can extend the server to
   store information if needed. Maybe for some transient cross-page
   information, a small daemon would be needed (Gerd is using a Unix
   daemon with RPC for this);
 
 * Should be compilable into native code;

 * Code should be commented in a literate style. ;-)

> Server
> • support for multiple voting algorithms (i dont know how easy this
> would be for me, but it is very important for aktivdemokrati.se so if
> no one else is gonna look at it i will have to do it eventually...)

I don't think supporting several voting algorithms would be an
issue. The main issue is to define a clean network protocol and extend
the XML file format accordingly.


> Open questions
> • Modification of allready running questions? Wanted not wanted? I
> think i would be usefull as long as its easy to notify old voters.

I haven't understood: what do you want to modify exactly? If this is the
question title, this is currently impossible without modifying deeply
the code.

> • Deletion of questions (and tags..)?

Same as above, the questions and tags cannot be removed (questions can
only be hidden).

Tags can be renamed however.

> • Changing date limit of question? (it will be important for
> aktivdemokrati.se that this is possible in some form, it is related to
> the special voting algorithm thingy)

If this is important to you, I have no objection to it. We will
certainly need to define the security around that feature (who can
change the limit date?).

> That looks like a list random somewhat unrelated features to me... I
> would like my application to look coherent and not just like a list of
> random improve this and that items... (and then i could put everything
> i could not make look coherent in an appendix of miscellaneous things
> i expect to do on the way ^^)

:-)

As Félix said, the web client is very important to us, so I would
structure your proposal around it.

For example, you could propose something like "Writing of a web client
for demexp server suitable to the AktivDemokrati.se and Democratic
Experience needs".

I would then list:

 * The features imperatively needed (basically features currently
   available in the hard client);

 * Optional features (maybe put this part at the end of the document).

I would also add (in no particular order):

 * A very short introduction on the usefullness of such an interface as
   to help to develop a tool suitable for direct democracy in countries,
   firms, communities (if a success, it would extend the visibility of
   OCaml);

 * Overview of basic design, testing, ... (see FAQ). For the design, you
   could start from the complete set of tasks a user or admin would need
   (propose a question, tag it and make it public, browse over
   questions, vote on a given question). Then you could refine that
   description into a set of web pages and there underlying logic. You
   could then propose a set of modules (code architecture) that
   implement needed web pages and application logic;

 * The main goal is to have a usable interface with reasonnable
   speed. No fancy features. No bells and whistles. But a sound ground
   on which we could built for several years.


I'm going to take care of the server side when extensions/modifications
would be needed.

> What i feel most exited about is implementing the webclient again and
> again using different technologies. (yes i know, my sence of fun is a
> bit twisted :)
> But i dont know how productive such work would be considered...

Yes, maybe a fully usable web client would be useful. ;-) And once you
have a basic one, you'll can be assured that a lot a feature requests
and interesting development would flourish. :-)

Best wishes,
d.
-- 
GPG/PGP key: A3AD7A2A David MENTRE <address@hidden>
 5996 CC46 4612 9CA4 3562  D7AC 6C67 9E96 A3AD 7A2A





reply via email to

[Prev in Thread] Current Thread [Next in Thread]