Re: Volunteering

11 views
Skip to first unread message

Tom Lord

unread,
May 2, 2013, 8:00:15 AM5/2/13
to Chris Swannack, econsens...@googlegroups.com
Hi all, looping in the rest of the team here as they can check my
technical detail... Chris if you're not already a member of this
publicly archived discussion mailing list then joining it might be an
idea; this kind of Q/A might help future folks get involved with coding
on this project.

On 02/05/13 09:03, Chris Swannack wrote:

> With regards econsensus, I think i understand what happened having seen
> what Jo did:
>
> - I logged in as admin and produced an organisation. It did not appear
> (later I found a mangled organisation in the database)

Thanks Chris, this is a really useful point for us I think. You pointed
out when you were in that when someone sets up Econsensus themself,
they're actually setting up an instance that is designed to host
multiple organisations and users, not a single instance, and that isn't
clear.

Thinking about it, I think that implicitly we're not intending the admin
user to be used for anything other than accessing the admin interface.
The implied intention is that new users first sign themselves up, and
then start to create organisations. I don't think that's at all obvious
at the moment, and I think we could be providing that info to people
when we suggest that they start working with their own installation.

I think what happened to your installation was:

- At the moment, new organisations get their first member assigned by
the email address that you give when creating the organisation. The
admin user probably doesn't have an email address associated with it, or
at least has something like admin@localhost, so I'm thinking that you
probably didn't set the owner of the organisation you created to be the
admin user.

- This would mean that your admin user wouldn't see the organisation it
created, because they are (perversely!) not a member of it.

- As we mentioned, we hope to deploy a fix for this to make the creation
of new organisations easier and pitfall-free, in the next few days. This
will mean that whoever creates an organisation IS the owner of it.

> - I tried to sign up. I did not receive an email, so I couldn't log in.

I wonder if this is because the mail interface needs configuring on a
fresh install, and this is currently non-obvious. I thought we'd
documented that already, but maybe we haven't. Jo, do you remember what
happened when Adrian set up the staging server? Did we note anything
down anywhere?

If you didn't have your mail configured, then this might also mean that
whatever email address you set as the owner of the organisation you
created wouldn't have received any email. This probably made things
doubly confusing.

> - I added myself as a user in the back end
> - when I logged in as user or admin the extra buttons did not appear -
> not sure why a user would never need these buttons (I.e. why are they
> part of a privileges system)

We have a use-case for a user that can see all the decisions, but can't
touch anything. This is useful for e.g. a large organisation that has a
committee and membership structure, and doesn't quite trust all its
members to behave themselves online, but wants all its members to be
able to see its decisions. My housing coop where I live is a good
example of this! If we used Econsensus, and I hope we will soon, then we
want everyone in the coop to be able to read our decisions, but only
e.g. the committee or the secretarial group to be able to create and
edit them. This use case means that the org probably wouldn't use
Econsensus to discuss decisions online, just record the ones it had made.

So, the user you created probably did not have the ability to edit
things. I've just found the instructions for doing this:

Paul, our recent intern says: in the [Django] admin interface click the
organization you're interested in and then in the top right there should
be a button for object permissions. Click that and you'll see users
permissions for that organization.

- and I suppose it's worth noting that we don't use the Django admin
interface much and haven't put much effort into making it user-friendly
for this project. We want the front-end to be able to create users and
organisations cleanly and easily, and it should do that soon. Currently,
we only use the back-end for deleting things very occasionally, e.g.
auto-reply spam that ends up in the system, as deletion isn't handled by
the UI yet. That's not to say that there's no role for the Django admin
interface in the future, just to explain the current situation.


> Also a question about organisations:
>
> - Jim logs in, creates an organisation 'bobajob' because he has no
> organisation
> - Fred logs in and does the same
> - how does anyone join another organisation?

Good question :-) At some point I'd like to put together a quick
sticky-note tour of the system using a tool that Jo found that seems to
make this possible and quick. This whole process of signing up, and
creating and inviting people to an organisation is the first thing I
want to do.

Anyway - what happens is:

- you sign up
- you log in and create an organisation
- once you have created an organisation, you can select it and then add
other people to it in the organisation admin screen (UI admin, not
Django admin), by entering email addresses. If they aren't already a
user of Econsensus, they'll be invited to sign up before they become a
member of your org.

At the moment this process isn't as fluid as it could be, e.g. I think
we could be auto-logging-in to the newly created organisation - and it
does work.

> Perhaps organisations should be a bit more flexible somehow,

We have discussed the point that maybe in the future it would be nice to
be able to see and request to join organisations (that are up for being
publicly visible like that). In my mind, what we are doing by running
Econsensus, is a bit like what mailing list providers do. An example is
at https://lists.riseup.net/www/ , and on that site there is a directory
of public groups that Jo Public can request to join, and an interface
underneath that lets admins manage lists for multiple organisations.

> Anyway, thanks again

Thank you! Chris, if you have any more questions, or if anyone else has
any corrections or supplementary info, please shout.

cheers,
Tom.
--
Tom Lord | (to...@aptivate.org)

Aptivate | http://www.aptivate.org | Phone: +44 1223 967838
Future Business, Cambridge City FC, Milton Road, Cambridge CB4 1UY

Aptivate is a not-for-profit company registered in England and Wales
with company number 04980791.

Jo Paulger

unread,
May 2, 2013, 9:29:02 AM5/2/13
to econsens...@googlegroups.com, Chris Swannack
Hi all, please see my responses in purple below. I've also made some changes to the README file (on master) to try and clarify a few things, including that econsensus covers one or more organizations, how a development instance deals with emails, and how to start adding users and organizations.

Jo


On 2 May 2013 13:00, Tom Lord <to...@aptivate.org> wrote:
Hi all, looping in the rest of the team here as they can check my technical detail... Chris if you're not already a member of this publicly archived discussion mailing list then joining it might be an idea; this kind of Q/A might help future folks get involved with coding on this project.

On 02/05/13 09:03, Chris Swannack wrote:

With regards econsensus, I think i understand what happened having seen
what Jo did:

- I logged in as admin and produced an organisation. It did not appear
(later I found a mangled organisation in the database)

Thanks Chris, this is a really useful point for us I think. You pointed out when you were in that when someone sets up Econsensus themself, they're actually setting up an instance that is designed to host multiple organisations and users, not a single instance, and that isn't clear.

Thinking about it, I think that implicitly we're not intending the admin user to be used for anything other than accessing the admin interface. The implied intention is that new users first sign themselves up, and then start to create organisations. I don't think that's at all obvious at the moment, and I think we could be providing that info to people when we suggest that they start working with their own installation.
 
Correct - README updated accordingly. 


I think what happened to your installation was:

- At the moment, new organisations get their first member assigned by the email address that you give when creating the organisation. The admin user probably doesn't have an email address associated with it, or at least has something like admin@localhost, so I'm thinking that you probably didn't set the owner of the organisation you created to be the admin user.

- This would mean that your admin user wouldn't see the organisation it created, because they are (perversely!) not a member of it.

- As we mentioned, we hope to deploy a fix for this to make the creation of new organisations easier and pitfall-free, in the next few days. This will mean that whoever creates an organisation IS the owner of it.

- I tried to sign up. I did not receive an email, so I couldn't log in.

I wonder if this is because the mail interface needs configuring on a fresh install, and this is currently non-obvious. I thought we'd documented that already, but maybe we haven't. Jo, do you remember what happened when Adrian set up the staging server? Did we note anything down anywhere?

If you didn't have your mail configured, then this might also mean that whatever email address you set as the owner of the organisation you created wouldn't have received any email. This probably made things doubly confusing.

Development installs (instructions in the README file) will not send out actual emails, but will instead write them out to disk - README now updated to convey this.
 

- I added myself as a user in the back end
- when I logged in as user or admin the extra buttons did not appear -
not sure why a user would never need these buttons (I.e. why are they
part of a privileges system)

We have a use-case for a user that can see all the decisions, but can't touch anything. This is useful for e.g. a large organisation that has a committee and membership structure, and doesn't quite trust all its members to behave themselves online, but wants all its members to be able to see its decisions. My housing coop where I live is a good example of this! If we used Econsensus, and I hope we will soon, then we want everyone in the coop to be able to read our decisions, but only e.g. the committee or the secretarial group to be able to create and edit them. This use case means that the org probably wouldn't use Econsensus to discuss decisions online, just record the ones it had made.

So, the user you created probably did not have the ability to edit things. I've just found the instructions for doing this:

Paul, our recent intern says: in the [Django] admin interface click the organization you're interested in and then in the top right there should be a button for object permissions. Click that and you'll see users permissions for that organization.

When you create users via the screens, there's a checkbox field entitled "Editor" that covers this.
 

 - and I suppose it's worth noting that we don't use the Django admin interface much and haven't put much effort into making it user-friendly for this project. We want the front-end to be able to create users and organisations cleanly and easily, and it should do that soon. Currently, we only use the back-end for deleting things very occasionally, e.g. auto-reply spam that ends up in the system, as deletion isn't handled by the UI yet. That's not to say that there's no role for the Django admin interface in the future, just to explain the current situation.


Also a question about organisations:

- Jim logs in, creates an organisation 'bobajob' because he has no
organisation
-  Fred logs in and does the same
- how does anyone join another organisation?

Good question :-) At some point I'd like to put together a quick sticky-note tour of the system using a tool that Jo found that seems to make this possible and quick. This whole process of signing up, and creating and inviting people to an organisation is the first thing I want to do.

Anyway - what happens is:

- you sign up
- you log in and create an organisation
- once you have created an organisation, you can select it and then add other people to it in the organisation admin screen (UI admin, not Django admin), by entering email addresses. If they aren't already a user of Econsensus, they'll be invited to sign up before they become a member of your org.

The invite will be an email.
Reply all
Reply to author
Forward
0 new messages