Skip to content

Instantly share code, notes, and snippets.

@clkao
Created June 30, 2013 15:47
Show Gist options
  • Save clkao/5895659 to your computer and use it in GitHub Desktop.
Save clkao/5895659 to your computer and use it in GitHub Desktop.
#edemocracy irc 2013-06-30 http://lqfb-test.g0v.tw/ep/p/lqfb
19:06 < DaPonte> hi folk
19:46 <@clkao> howdy!
19:46 <@DaPonte> hi folk
19:46 <@entropy_> hi
19:47 <@entropy_> afk
19:47 <@clkao> back in 10 ;)
19:59 <@entropy_> FYI the pirate feedback developer cmrcx is on holidays
20:00 <@clkao> ah ok ;)
20:00 <@entropy_> and I'm afraid I'll have to leave soon
20:01 <@clkao> *nod* we shall keep logs
20:01 <@clkao> so let's begin with entropy_'s info on latest german pirates tools
20:02 <@DaPonte> ok
20:02 <@clkao> iiuc, new tool 'gruppe' will handle online/offline voting? and qprobble is to be the disucssion/drafting platform?
20:02 <@entropy_> ok, I think there two main topics for this sessions: new democracy tools and improvements to LQFB/Pirate feedback
20:02 <@entropy_> I can only comment on the former
20:03 <@clkao> the qprobble notes are all in german, what's the status of the project? just designing?
20:04 <@entropy_> the concept Basisentscheid (=referendum) is a modern approach to direct democracy which includes edemocracy
20:04 <@entropy_> probable is a separate development. we're not sure whether we'll use or just implement another debate tool
20:05 <@entropy_> s/probable/qprobble/ damn autocorrect :)
20:05 <@ETBlue> hi :D
20:05 <@clkao> what are the requirements for your debate tool? if we can see the improrved prfb being modified to be useful, we can share some efforts
20:06 <@entropy_> we're mainly in design phase, but we also have some prototypes for testing
20:06 <@clkao> (i assume debate tool = drafting and dicussion)
20:06 <@entropy_> yes
20:06 <@clkao> bascailly what prfb is supposed to do, minus the voting
20:07 <@DaPonte> enthropy_: so you are working on the 'referendum' tool?
20:07 <@entropy_> the main components of the system are: user management (one verified account per member, data privacy etc), drafting+discussion, draft management + collection supporters, secure voting (online+offline), results
20:08 <@entropy_> and discussion of drafts which reached the quorum
20:08 <@entropy_> DaPonte: yes
20:08 <@DaPonte> all in the same tool or two separeted ones?
20:09 <@entropy_> the voting will probably a separate tool due to higher security requirements
20:09 <@DaPonte> i didnt get if it would be
20:09 <@DaPonte> ok, got it
20:10 <@DaPonte> and about the ppau's Polly? know anything?
20:10 <@entropy_> delegated voting is deliberately excluded for good reasons
20:10 <@entropy_> instead there will the reverse: voting recommendations
20:10 <@clkao> *nod* it's been noted in the pad
20:10 <@entropy_> polly sound interesting, they many similar ideas
20:11 <@entropy_> are you familiar with voting/answer recommendations?
20:12 <@clkao> not fully - i thought it's just showing opinions from people you trust/follow etc?
20:12 <@DaPonte> i tried delegation in lqfb and Q&A systems
20:12 <@DaPonte> but nothing else
20:13 <@entropy_> basically, instead of letting delegated vote for you, they recommend you what to vote (with justification) or forward what other experts recommend
20:13 <@DaPonte> to avoid delegation deviances i think, right?
20:13 <@clkao> entropy_: have you seen the lqfb/helois integration?
20:15 <@entropy_> you could implement it also with LQFB by having a test-poll before the real voting. the voters could see what their delegates have voted the test-poll and copy it, if they want
20:15 <@entropy_> clkao: not yet
20:15 <@clkao> but i think for your use case, it's forwarding the votable initiatives to an external system (from prfb or debate platform). the recommendation (like an improrved suggestion/pro-cons-argument views)
20:15 <@clkao> can stay in prfb or new debate platform
20:15 <@clkao> entropy_: http://openlife.cc/blogs/2013/february/reverse-engineering-helios-voting-server
20:16 <@entropy_> there is consensus in the pirate party that we don't want secure online ballots
20:16 <@clkao> entropy_: it does some complicated things to preserve the delegation system. so without delegation it should be relatively simple
20:17 <@entropy_> we'll have either pseudonymous online voting with cryptographically signed evidence of your vote, or secret offline ballots
20:18 <@entropy_> if more than 5% of the members think a particular voting should be secret, it would be performed offline
20:19 <@clkao> offline voting are processed manually i assume?
20:19 <@entropy_> one problem of delegated voting is that it conflicts with secret ballots, as the critical information - whom you trust and whom not - is not secret
20:19 <@entropy_> clkao: yes
20:19 <@clkao> *nod*
20:20 <@entropy_> and voting's are bundled every month, so that members can be better prepared
20:21 <@clkao> so, gruppe is just user and voting management?
20:21 <@clkao> and debate platform is still TBD?
20:22 <@entropy_> Gruppe is German for group, Projektgruppe means project group
20:22 <@entropy_> we're currently searching for a name for the software, but for the time being its BEO or Basisentscheid online
20:22 <@clkao> ok ;)
20:23 <@clkao> So BEO consists debate platform integration, which detail is still TBD?
20:23 <@entropy_> there are several existing tools which could be used, e.g https://github.com/lutoma/oavote by the junior Pirates in Germany
20:24 <@entropy_> clkao: correct
20:24 <@entropy_> the wikiarguments.net developers are also members of the group
20:25 <@clkao> wikiarguments looks interesting
20:25 <@entropy_> and I have lots of ideas for all the tools, but right now I'm focusing on the infrastructure
20:25 <@entropy_> and hope to release a first prototype soon
20:25 <@clkao> i assume it'll be open source? ;)
20:25 <@entropy_> yes
20:26 <@entropy_> and we'd be glad to cooperate with other groups world-wide :)
20:26 <@clkao> same here
20:26 <@entropy_> so what are your plans and where do you use LQFB/pirate feedback?
20:27 <@clkao> so here in g0v.tw we are only using it for generating consensus for this decetralized hacktivism group.
20:27 <@ETBlue> green party in .tw are interested in lqfg/prfb too
20:27 <@clkao> there are some politcal parties interested in using it
20:28 <@entropy_> there also several groups in Italy
20:29 <@entropy_> they only knew about LQFB, but not about pirate feedback till two weeks ago
20:29 <@DaPonte> yeah, i'm from italy. here we would appreciate a lot some improvements in lqfb
20:29 <@clkao> i assume our use cases are for small/medium organiztion reaching consensus for the moment, and for people to get used to drafting usable initiatives and solutions to be discussed on, rather than simply complaining ;)
20:29 <@DaPonte> for our auditing
20:30 <@clkao> so once it's being used for larger crowd and general policies, i assume we'll see the privacy issues as well.
20:30 <@DaPonte> i'm not complaining, we want to stay up-to-date ;-)
20:31 <@entropy_> for BEO we're trying to make it scalable for large scale organizations (Pirates have 33K members, ca. 5K active)
20:31 <@clkao> if we can make prfb to work with external voting systems per policy, will it be useful for BEO debate/drafting?
20:32 <@clkao> does the existing policy system require more change?
20:32 <@entropy_> we have strict privacy laws in Germany, especially for political organisations
20:33 <@entropy_> we have considered prfb as a quick hack for drafting/debate
20:34 <@entropy_> but rewriting it from scratch seems to be easier than integrating it
20:34 <@entropy_> once you remove the delegated voting, there's not so much left in LQFB
20:34 <@clkao> true.
20:35 <@entropy_> we're using range voting instead of Schulze-simple, so even that is useless
20:35 <@clkao> the transtive suggestion/argument counting can still be useful for recommendation system?
20:35 <@clkao> range voting = scoring options from 1 to 10?
20:36 <@entropy_> the transitive suggestion would be quite limited with delegated voting
20:36 <@entropy_> with answer recommendation you could follow several experts (similar to Twitter) and combine the recommendations
20:36 <@entropy_> with any function or enrich them with further arguments
20:37 <@entropy_> range voting: yes, depending on the number of alternatives 0-3 points or 0-9 points + abstention
20:37 <@clkao> btw, how many people are developing BEO?
20:38 <@entropy_> there are currently three main developers (cmrcx, foojo, and me), but I expect many more as soon as we have the full specs
20:39 <@entropy_> the online tools is only a component of the whole process
20:39 <@clkao> it'd be great if you can make the design doc in en ;)
20:39 <@clkao> *nod*
20:40 <@entropy_> yes, it's on the TODO lisst
20:40 <@entropy_> the tool itself is also written with internationalization in mind
20:41 <@entropy_> do you know about the australian polly project? is it still in development or stalled?
20:41 <@entropy_> I'm afraid I have to go afk now, but I might return in 30mins
20:41 <@clkao> not really. but iirc the last commit was quite a while ago
20:42 <@DaPonte> i think they are doing a lot of job about a statistical pattern to implement a sort of 'reputation' system
20:42 <@clkao> ok. is it ok to publish the log?
20:42 <@entropy_> sure
20:42 <@DaPonte> sure
20:43 <@clkao> cool. so ideally i'd like to see BEO having some api to enter initiatives. this can probably make lqfb/prfb orgs swtiching more easilywhen they wish to
20:43 <@clkao> DaPonte: let's talk about prfb improvements ;)
20:44 <@entropy_> I think it should be possible to migrate LQFB data to BEO with some script
20:44 <@DaPonte> i'm interested mainly in the redesign, out users have some dubts about delegation, but mainly find lqfb tough to use
20:44 <@entropy_> now afk.
20:44 <@clkao> DaPonte: have you seen ETBlue's latest mockup? I've implemented part of the original lfapi with more concised lfrest
20:45 <@ETBlue> hmmm. i think i have to redo the new ui soon
20:45 <@DaPonte> yeah, i read the repo. focusing on the js and dom
20:46 <@clkao> DaPonte: as you mentioned about timeline, what sort of timeline do you have in mind for actual use in our party?
20:46 <@clkao> s/our/your
20:46 <@DaPonte> i like the json structure of the elements
20:46 <@clkao> DaPonte: pgrest does most of the heavy lifting ;)
20:46 <@DaPonte> but take time to understand, probably a dom tree drawing would help
20:48 <@clkao> i'd like to come up with an incremental deployment plan
20:48 <@clkao> ie replacing some pages with the new design, and leaving less frequently page as they are for the time being during development
20:48 <@DaPonte> we have to gather more consensus about lqfb among our supporters
20:48 <@clkao> *frequently used
20:49 <@clkao> ok, so the actual adoption is still TBD
20:49 <@DaPonte> we are using the palin lqfb ver 2.2.2
20:49 <@DaPonte> *plain*
20:49 <@clkao> if you can help ETBlue wiring the templates with the api server, it can be a bit more convincing :)
20:51 <@ETBlue> i guess we need to convert current .erb templates into .jade first
20:52 * ETBlue still reading jade document
20:52 <@DaPonte> sure, but i need time to understand how you work, how your design goes through. we dont even know which tools will use in production. for example i just find out form the code we are using erb template, that I just know the existence of, so it takes a while without a clear pictures of the differetn tools involved
20:52 <@clkao> ETBlue: how many of the mockup are already turned into erb ? and how many mockups are still to be done? i noticed we don't have much input UI ? or adding initiatives etc
20:53 <@clkao> DaPonte: erb was used by Fire.app for drawing prototype. it should be converted to jade it can be used from both client/server side
20:53 <@clkao> but in general we should be use pure client + rest endpoint
20:54 <@DaPonte> i'm trying to work on main.js, but i have to figure out the design logic and what you want to do with the json structure in the file
20:54 <@ETBlue> clkao: mainly nav bar and issue page, without input ui
20:55 <@DaPonte> ok, if we go for jade, i have to get in touch with it. needs at least few days
20:55 <@clkao> DaPonte: basically ajax request from http://lqfb-test.g0v.tw/pf/pgrest/issue/1 + some jade templating => real template
20:55 <@ETBlue> the code in current main.js is all about ui, i guess you can just ignore them for now
20:55 <@DaPonte> they are all new tools for me
20:55 <@clkao> we can add behaviours with jquery or angularjs on top of the jade templates
20:56 <@clkao> edemocracy is also a new tool ;)
20:56 <@clkao> i guess there's a trend
20:57 <@clkao> ok i should get going soon
20:58 <@DaPonte> we made a research and a paper about edem, but it actually in italian https://docs.google.com/document/d/1YXeKcQ1YooH86j_B266_7xn90nJNNONGMp-rMwKZBGs/edit
20:58 <@clkao> DaPonte: the tuparliamanet has some step-by-step description about using lqfb
20:58 <@clkao> but sadly also in italian
20:58 <@DaPonte> we have a wiki aswell
20:58 <@clkao> DaPonte: are people actually using it?
20:59 <@ETBlue> clkao: so the first thing i need to do is to finish the input ui right?
20:59 <@clkao> ETBlue: sure ;) i suppose we can get cassi or others to help doing the jade conversion
20:59 <@DaPonte> we had a test version since march to may with 1500 users. now we are planning to switch to production
21:00 <@ETBlue> clkao: great :D
21:00 <@DaPonte> and the instance is still up
21:00 <@clkao> DaPonte: i mean www.tuparlamento.it
21:01 <@DaPonte> with the redesign we could reach for sure a 5000+ population in few weeks
21:01 <@DaPonte> clkao: didnt know about tuparlamento.it , we will take contact.
21:02 <@ETBlue> DaPonte: are you going to use the new ui for production?
21:03 <@clkao> DaPonte: if that's the plan we should talk about incremental updates - so new ui dev doesnt block bbthe whole process
21:04 <@clkao> bbl. will catch up here on the pad
21:04 <@DaPonte> when we will have something working, we will present it to the users. try to gather consensus
21:04 <@DaPonte> but the user-friendlyness for us is critical
21:04 <@DaPonte> especially for the 'i-pad people'
21:05 <@ETBlue> i see... i will firstly finish the input ui of issue page
21:06 <@ETBlue> so you can use that page to demo :D
21:06 <@DaPonte> if we can convince them, we will have the tool recognized for being useful, as it actually is for sure
21:08 <@DaPonte> you mean the json rest answer?
21:08 <@ETBlue> i don't know backend, i mean the html and css XD
21:09 <@ETBlue> as to data binding... i guess you need to figure it out with clkao
21:09 <@DaPonte> the important for me is that we tune on the same tools. your muckups are good, and the ui looks good
21:10 <@DaPonte> sure i can use the mockups for presenting a demo, but i need it to be a little more operative. some buttons working, some mouse actions, etc
21:11 <@ETBlue> we are going to use jade as template engine according to clkao. i've never used it before, so it takes me some time to understand it
21:12 <@ETBlue> i guess after the .erb templates are converted to .jade, you can do the data binding part
21:12 <@DaPonte> for me aswell, i have some experiences with jinja.
21:12 <@DaPonte> i'm trying to understand how you structured the json arrays
21:13 <@ETBlue> hmm. after clkao is back you can discuss about the template engine
21:13 <@ETBlue> you mean main.js ? they are just javascript hash lol
21:14 <@ETBlue> because i want to have all the ui interactions set up in one place, so...
21:14 <@DaPonte> i mean http://lqfb-test.g0v.tw/pf/pgrest/issue/1 and the js arrays aswell
21:16 <@ETBlue> okay, then while you are reading the json, i will stay on irc and keep finishing the rest of issue page :D
21:17 <@DaPonte> ok, but i need half an hour to have lunch
21:19 <@DaPonte> the js array should be represantation of the dom in your intention?
21:20 <@ETBlue> np, and i will go to sleep soon XD
21:20 <@ETBlue> yes
21:20 <@DaPonte> how you plan to use it?
21:20 <@ETBlue> they are only for show/hide elements
21:22 <@ETBlue> as to other ajax actions, e.g. submit new initiative, the js array is of no use
21:26 <@DaPonte> ok, interesting
22:19 <@DaPonte> i still dont get what will bring data to the template... what language will read the json and pass it to the dom?
22:20 <@DaPonte> i'm accustomed to python REST library passing to jinja. what's your way?
22:25 <@ETBlue> i have no idea... seems clkao plans to use javascript?
22:26 * ETBlue only knows html, css and a little javascript
22:27 <@DaPonte> i heard something about node.js , but to start coding I have to be pretty sure about that. For what I know dealing with big JSON arrays in plain javascript is not straightforward. ok, we will see
22:43 < entropy_> hi, where are you going to publish the log?
22:51 <@DaPonte> ETBlue: usually is easier to manipulate data with a wrapper, to make javascript object to pass them to the ui. Running too many 'for' cycles client-side is not efficent
22:52 <@DaPonte> entropy_: waiting to clkao to come back. there is a irc logs subdomain at g0v.tw , he will give the link
23:23 <@ETBlue> DaPonte: i see, is there a better way to have the show/hide function in main.js done? a lot of for loops there too... lol
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment