Re: 0.5 step closer to OCaml Summer of Code
David MENTRE <dmentre <at> linux-france.org>
2007-02-06 19:21:55 GMT
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:
ketty <kattlachan <at> gmail.com> writes:
> • 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 :
Comparison should be quickly done and not be the main goal of the
> • 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
> • persistent meta data
?? I haven't understood.
> • improve usability
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
* Should work with Apache over SSL (a no brainer for all OCaml's web
* 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.
> • 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
> • 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
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
* 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.
GPG/PGP key: A3AD7A2A David MENTRE <dmentre <at> linux-france.org>
5996 CC46 4612 9CA4 3562 D7AC 6C67 9E96 A3AD 7A2A