Forum software, piazza / askbot

98 views
Skip to first unread message

Johannes Tynes

unread,
Mar 4, 2013, 4:52:00 AM3/4/13
to class2g...@googlegroups.com
Hi,

Has anyone given any thought to using forum solutions other than piazza?
Piazza certainly looks very well-developed and tailored to academic classes (and it has achieved impressive popularity on university campuses),
but some of the reasons to consider other forum solutions (that came to my mind) could be:
1 / ability to host forum on your own server
2 / use open source software
3 / protect student data in accordance with your own policies
4 / graphically integrate forums with the rest of the platform.

Due to the above, I'm going to have a stab at integrating askbot with class2go in a project I'm involved in, because it is python / django based, open source and has a relatively extensive deployment (indeed judging by the look of the student forums at udacity.com, I think they are using askbot for their MOOCs).

I will in any case report our progress and findings, but keen to hear what other people think about this.

Tony Hetrick

unread,
Mar 4, 2013, 6:33:01 AM3/4/13
to class2g...@googlegroups.com
Hi Johannes,

When we first evaluated C2G, it was determined that Piazza would not work for us.  The first (and of course ultimate strike) against Piazza was we needed something in Russian.  We integrated and then tried Google Groups, but it proved not to work well since the students had to create their own account and had to always login each time they opened C2G.  So, we installed Simple Machine Forum (SMF) on our local server.  We can do automatic account creation/login using the SMF 2.x API so the students are always logged in when they open the forum page (but it's not so secure...).  We created our own API which basically calls the SMF 2.x API.  Once we remove the client-side AJAX call for logging the students and handle it on the server side (we are having cookie issues), we'll be able to secure it.  You can look at what we are doing.

I would love to see your implementation of another forum product!
Tony

Johannes Tynes

unread,
Mar 4, 2013, 8:25:17 AM3/4/13
to class2g...@googlegroups.com
Thanks, Tony,
this is very interesting, thanks for your response. I know simple machines is robust and widely deployed (know it from the ever-popular bitcoin forum).
I will have a look at your implementation, and if we decide to go ahead with askbot (which is likely) will share findings and code here and on github respectively. JT

David Glance

unread,
Mar 4, 2013, 10:30:35 PM3/4/13
to class2g...@googlegroups.com
Hi - really interested in this but ideally there would be a set of requirements that the choice of software satisfies? We need to use the forums internally as well and so keeping the difference classes discrete is important - public vs private. Also, one of the class coordinators was complaining about not being able to set up different groups within the class. Whatever software is used, it would be great if the interface with it is abstracted to allow for different implementations.

Of all the forum software I have had a look at Askbot looks the nicest - it apparently supports Groups which would meet our requirement of keeping things separate but would like to know how this works and what controls you have on it - can you create these programmatically for example.

I expect we could always take Askbot and fork if necessary.

btw: Udacity's forum is similar to Askbot - but isn't. 

Johannes Tynes

unread,
Mar 5, 2013, 8:04:35 AM3/5/13
to class2g...@googlegroups.com
Yes the group feature does exist in askbot, I'll look further into that. Udacity is listed as a user of OSQA on wikipedia, and Askbot is a fork of OSQA hence my confusion (graphical elements are the same in many cases etc.)
There are a few differences such as askbot can be installed using pip.
Forking could always be an option if there are special class2go-specific group management requirements (I think both OSQA and askbot have primarily been designed with single userbases in mind, not subgroups and access limitation etc.)

David Glance

unread,
Mar 5, 2013, 8:15:52 AM3/5/13
to Johannes Tynes, class2g...@googlegroups.com
Sounds great - looking forward to seeing the results - Piazza was a good choice - but it will be good to see something more tightly integrated with c2g.

david

Assoc Prof David Glance
Director, UWA Centre for Software Practice
http://www.csp.uwa.edu.au
t: 0408 916 579
e: david....@csp.uwa.edu.au


--
You received this message because you are subscribed to a topic in the Google Groups "class2go users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/class2go-users/5-ixxaqhxjE/unsubscribe?hl=en.
To unsubscribe from this group and all its topics, send an email to class2go-user...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Jane Manning

unread,
Mar 5, 2013, 8:37:24 AM3/5/13
to David Glance, Johannes Tynes, class2g...@googlegroups.com
It'd be great to see someone get an askbot (or some other open source forum software) integration going.  As well as the reasons Johannes mentions, it'd mean the students would stop getting emails from an additional source, and  wouldn't have to sign up for an extra account.  From a platform perspective, it'd give us the flexibility to integrate pieces of the forum on different parts of the site if we wanted to, and once we've got profiles and reputations could integrate forum data into that (e.g. posting w/ a user profile info about how many posts they've made, how those posts have been up-voted, how they've voted on other users' posts, etc).

Jane


--
You received this message because you are subscribed to the Google Groups "class2go users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to class2go-user...@googlegroups.com.

David Glance

unread,
Mar 14, 2013, 2:56:32 AM3/14/13
to class2g...@googlegroups.com
HI Johannes, 

How is this going? I was wondering if you needed any help with this?

david

Johannes Tynes

unread,
Mar 14, 2013, 9:21:20 AM3/14/13
to class2g...@googlegroups.com
Thanks, David

I was meaning to post the below update to the forum yesterday, but inadvertently replied to Jane only instead..

Since then I have temporarily solved the auth issue by having class2go do signons, the two apps share one database, and disabling openauth from askbot (because they use a bundled dependency which is a for of django-openauth).
The two apps share session cookies.

I'll have a website using this up in about a week's time. On the auth side I would ideally like to retain an openauth signup facility, like that found on askbot, and I see from github there have been some discusions about that in the past.


______
brief status update on this (until a working version is ready shortly), and also question about authorisation..

operational:

- have got c2g and askbot running from the same server and same domain (not subdomain)
- for the moment running each of them off a different MySQL database
- c2g and askbot each have their own virtualenv (because of clashing celery version requirements)
- the two 'apps' run on two different ports and nginx routes to each one of them based on regex applied to the URL request

functional:
- askbot has a ton of features
- I have not explored its ability to limit access to forums, because for our use case we want the forums to be publicly searchable (though I believe this is doable)
- I have the forum link under a course send you to the general askbot forum with a course-tag preset (this is what they now do at udacity, they have the forum on a subdomain - it is just one big forum, and then everything is driven by a tag system, I believe - see forums.udacity.com)

users / auth:
The only unresolved issue at this stage for me is how to handle the authorisation process properly. and to integrate the concepts of users. Askbot allows for sign-on using openid (http://askbot.org/en/account/signin/?next=/en/ ) which may be advantageous depending on the use case. However, whatever the exact auth system in place, it certainly needs to be single sign on, and there are various options for implementing this. The ideal user experience is having one identity, one sign-up process, one login / logout process.

If anyone has any views on how single-sign on is best implemented in the above scenario, that would be much appreciated. I thought about setting up a seperate, third, auth server which handles all things to do with user / profile /permissions, but that might be overkill..

David Glance

unread,
Mar 14, 2013, 9:53:20 AM3/14/13
to Johannes Tynes, class2g...@googlegroups.com
I thought it had a local option for sign-on which is basic django auth? Certainly that is what it looks like even though the file itself is called django_authopenid it seems to support a range of options? Once the extra fields are created on the user table in class2go it should be able to share the user information?

Anyway, there was some discussion about how to integrate it into another app here: http://askbot.org/en/question/2879/how-to-use-askbot-as-a-pluggable-django-app/

Would it not be easier making it a single app, resolving conflicting versions and using the same auth to create accounts for both systems? The main thing is to make it seamless in terms of account creation and integrated into the application - but will be good to see it working on a site to get an idea of what is possible.

david




Assoc Prof David Glance
Director, UWA Centre for Software Practice
http://www.csp.uwa.edu.au
t: 0408 916 579
e: david....@csp.uwa.edu.au


Johannes Tynes

unread,
Mar 14, 2013, 10:24:46 AM3/14/13
to class2g...@googlegroups.com
Quite possibly it has a simple local signon option, however experienced an issue whereby if you logged into askbot using any method the cookie would refer to the custom askbot bundled openauth and that would cause c2g to fail user lookup because it does not have that module.

I thought about integrating the two apps and started by running them off the same virutalenv, but there is a versioning conflict in celery, which I don't have too much experience with and I also thought there could be advantages to modularity, in that if each app runs separately, it would be easier to pull upgrades off github without having to resolve conflicts every time. The advantages to the single-app approach seemed to me to be limited to auth and user info.

If they are run as separate apps, then the idea would be to have one of them handle all the auth work and provide single sign on functionality for the other.

Ideally c2g would have an auth system similar to that of askbot, and then it could handle login / registration and act as an openID provider to askbot and any other apps there might be..

At least the early installation will demonstrate some of functional and design integration and then auth can be improved in parallel.



On Monday, March 4, 2013 6:52:00 AM UTC-3, Johannes Tynes wrote:

gere...@ideas-conceptos.com

unread,
Aug 30, 2014, 9:11:51 PM8/30/14
to class2g...@googlegroups.com
Hi

Do you know how or where can I find a manual for configuration class2go with piazza?

Thank you
Reply all
Reply to author
Forward
0 new messages